PrestaSignal
← All posts
Fundamentals · June 16, 2026

Server-side vs client-side tracking, explained for store owners

No jargon, no diagrams you need a degree to read. Just what these two approaches actually mean for your PrestaShop store and which one to use.

7 min read

If you have shopped for analytics or marketing tools lately, you have probably been told you need “server-side tracking.” It is pitched as a fix for everything, usually without anyone explaining what it is or how it differs from what you already have.

This guide does that in plain terms. By the end you will understand both approaches, where each one shines and fails, and the specific setup that gets you the best of both without the downsides. No jargon you have not met before, and no assumption that you manage tags for a living.

Client-side tracking, in one paragraph

Client-side tracking is the original way analytics works. You put a small piece of JavaScript on your site, and when a shopper does something — views a product, adds to cart, buys — that code runs in their browser and sends the event to Google, Meta, or wherever. The browser does the work and the reporting.

It is easy to set up: paste a snippet, and events start flowing. And because it lives in the browser, it sees everything the browser sees — clicks, scroll depth, which page came before which, how long someone lingered. That richness is its genuine strength, and it is why client-side tracking will never fully go away.

The trouble is that the browser is also the least controllable environment on the internet. You do not own it, the shopper does, and so does every extension and privacy setting they have installed. That is the seed of every problem we are about to discuss.

Server-side tracking, in one paragraph

Server-side tracking moves the reporting off the browser and onto a server you control. Instead of the shopper's browser telling Google about a purchase, your store's backend — or a dedicated container like sGTM — sends the event directly, server to server.

Because the event no longer depends on the browser finishing its job, it survives ad-blockers, privacy settings, closed tabs, and flaky mobile connections. It also keeps your tags and access tokens off the public web page, where anyone can otherwise inspect them. That reliability and control is its strength.

Think of it this way: the browser is the shopfront, full of life and detail but exposed to the weather; the server is the back office, calmer and locked, where you can be sure the books are kept accurately. You want both, used for what each does best.

The honest pros and cons

Client-side is rich but leaky. It captures detailed behaviour, but a meaningful share of events never arrive — blocked by ad-blockers, shortened by Apple's ITP, or lost when a page closes early. A 30-50% loss on the events that matter, like purchase, is common. It also exposes your tags and tokens to the browser.

Server-side is reliable but, on its own, blind to pure browser behaviour. It does not see the scrolling and clicking that client-side captures so well, and it takes more infrastructure to run — a container, a domain, some configuration. It is also harder to set up incorrectly without noticing.

Neither approach is complete by itself. That is the key insight most vendors skip when they tell you to simply “switch” to server-side.

If you remember one thing from this article, make it that sentence. Anyone selling you an either-or decision is selling you half a solution, and the missing half is usually the one that costs you money quietly over time.

Why hybrid plus deduplication wins

The right answer for almost every store is to run both. Use client-side for behavioural richness and server-side as the reliable backstop that guarantees the events that matter — especially purchase — actually arrive.

The catch is double counting: if both channels report the same sale, your numbers inflate, which is arguably worse than under-reporting because it hides in plain sight. Deduplication solves it. Both events carry the same event_id, and the platform (GA4 or Meta) collapses them into one, keeping whichever has the better data.

The outcome is coverage and richness without inflation: you see behaviour from the browser and you never lose a conversion. It sounds like having your cake and eating it, but it is simply using each method for the job it is good at and letting deduplication referee the overlap.

Our server-side vs client-side page goes deeper, and the glossary defines every term used here.

A note on privacy and control

Hybrid tracking is not only more accurate, it is easier to run responsibly. Because PII passes through a server you control, personal data such as email and phone can be normalised and SHA-256 hashed before it ever reaches Google or Meta — the platforms receive an irreversible fingerprint, not a readable address.

Keeping tokens and tagging logic server-side also reduces your exposure: there is less for a malicious script or a curious competitor to read off your page, and you decide exactly which fields leave your store and which do not. For many merchants, that combination of accuracy and control is the real reason to make the move.

What PrestaShop owners should do

You do not need to become a tag-management expert. You need a setup that fires accurate client-side events, sends matching server-side events through a container you control, and deduplicates them on a shared event_id — with PII hashed before it leaves your server.

That is exactly what PrestaSignal installs as a PrestaShop module wired to a self-hosted sGTM container. It keeps your existing GA4 and Meta accounts, fills the gaps client-side tags leave behind, and handles the deduplication and hashing for you.

See how it works for the PrestaShop specifics, or look at the module to understand what gets installed. If you would rather we just look at your store, book a teardown.

Good to know

Quick questions

Is server-side tracking better than client-side?+

It is more reliable for the events that matter, but it sees less browser behaviour. The best setup uses both together rather than picking one.

Will server-side tracking slow down my store?+

No. The heavy lifting happens on a server you control, not in the shopper's browser, so it can actually reduce browser load compared with stacking many client-side tags.

What is deduplication and why does it matter?+

It stops one sale from being counted twice when both client-side and server-side report it. Both events share an event_id, and the platform merges them into one.

Do I need technical skills to run hybrid tracking?+

Not with the right module. PrestaSignal handles the wiring, hashing, and deduplication so you keep your existing GA4 and Meta accounts without writing code.

Does server-side tracking help with privacy compliance?+

It gives you more control: PII can be hashed before it leaves your server and you choose exactly which fields are sent, which is harder to guarantee with browser-only tags.

Find out what your tracking is missing — for free.

We'll audit your store's tracking and show you the gap. No pitch unless you ask.

Part of the PrestaChamps family →