Analytics tools that can collect server-side

Entry price is the lowest monthly price the vendor lists; “Free” means a free plan or free self-hosting. “At 100k” is the monthly price for 100,000 units, as the vendor bills them. Dates under statuses, prices and script sizes show when we checked them. See how we check every value.

What server-side collection actually means

In the ordinary setup a script in the visitor’s browser sends the measurement straight to the vendor. Server-side collection moves that hop: the event is sent from a machine you control — your backend, a tagging container, or a proxy on your own domain — and only then reaches the tool.

Three different things are sold under that name, and they solve different problems.

A proxy on your own domain. The page still runs a script, but the requests go to your hostname instead of the vendor’s. Nothing changes about what is measured; what changes is that the request is first-party, so blockers and browser rules treat it differently.

An events API from your backend. Your server sends what it knows — an order paid, a subscription started, a plan upgraded — with no browser involved at all. This is the only route that survives a visitor who blocks everything, and the only one that can report what happened after the page closed.

A tagging container between the site and the tools. A server of yours receives the browser’s events and forwards them onward, deciding what each destination receives. This is the world most “server-side tagging” writing is about, and it mostly exists to feed advertising platforms.

What it fixes, and what it does not

It fixes three things: requests are first-party, so ad blockers and browser rules stop deciding what you can count; the page carries less code, sometimes none; and events your backend knows about — refunds, cancellations, failed payments — reach the report at all.

It does not make you exempt from anything. The same personal data is involved, the same consent questions apply, and moving collection to your server does not turn an identifier into an anonymous one. It also costs something real: a host to run, a domain record, and a thing that breaks at three in the morning.

Two markets talk about this in one vocabulary, and it is worth knowing which one you are in. One is privacy and independence from blockers — first-party requests, less in the browser, data you hold. The other is the accuracy of advertising conversions, where the goal is to return numbers to Google Ads or Meta after browser restrictions cut them. The tools in the table belong to the first market; if your question is the second, you are looking for a tagging vendor, not a counter.

How the table reads

A tool is counted here when the vendor documents a route of its own: an events API, a server-side container, or a proxy setup it maintains. Six more read “Partly” — the route exists but is narrower than the marketing suggests: one endpoint without a library, a proxy that only works on one host, or a container someone else wrote.

The guide to server-side and client-side tracking explains what each method can and cannot see, and why two counters on one site will never agree.

How to choose

  1. Decide which of the three routes you need. A proxy is an afternoon; an events API is a piece of your backend to maintain.
  2. Check whether the server route is the same product or a separate purchase, and whether it has its own price.
  3. Ask what identifies a visitor when the browser is out of the loop. Server-side events often need you to supply the identity, which is exactly the part with legal weight.
  4. Look at where the receiving end is hosted — the EU-data list narrows that — because a proxy on your domain does not change where data lands.
  5. Keep the browser script until the server route is verified against it. Running both for a fortnight is how you find out what you were missing.

Questions and answers

No. Where consent is needed it is needed because of what you do with the data and what you store on the device, not because of which machine sends the request. What it does remove is one dependency on the browser: requests are yours, so they are not blocked in the same way.

Will my numbers go up if I move collection to the server?

Usually yes, and that is not the same as being correct. You will start counting visits an ad blocker used to remove, which is a real gain; you will also start counting bots that the vendor’s edge used to filter, unless the tool filters them for you. Check the bot filtering column before you celebrate the step in the chart.

Can I do this without a backend of my own?

Partly. A proxy can live on an edge worker at your hosting provider, which most static hosts now offer, and several vendors document exactly that. An events API cannot: if nothing of yours runs on a server, there is nothing to send events from.

Guides on this topic

Other collections