Client-side tracking is measurement that runs in the visitor’s own browser: a tag on the page, usually JavaScript, records what the visitor does and sends it straight to an analytics or advertising platform. The standard GA4 tag, the Meta Pixel and the LinkedIn Insight Tag all work this way, and it is how most websites have been measured since web analytics began.
How client-side tracking works
When a page loads, the browser downloads the tracking scripts along with everything else. Each script may set or read a cookie to recognise the visitor, listens for events such as page views, clicks and purchases, and sends a request from the browser directly to its vendor’s servers. Accept cookies on a typical site with the network tab of your browser’s developer tools open and you can watch those requests leave: one to Google Analytics, one to Meta, one to each other platform the site uses.
Google Tag Manager does not change this in its usual web set-up. It makes the scripts easier to manage, but the tags still run in the browser and still send data from it. The alternative is server-side tracking, where the browser sends a single stream of data to a server you control, and that server passes it on to each platform.
Why it matters
Client-side tracking is quick and cheap to set up, which is why nearly every small business site depends on it. Its weakness is that the browser does not belong to you, and several things now reduce what it can record:
- Ad blockers and privacy-focused browsers stop requests to well-known tracking domains.
- Safari’s Intelligent Tracking Prevention shortens the life of cookies set by scripts, so returning visitors look new and longer journeys break into pieces.
- On a UK site, visitors who reject analytics or marketing cookies should not be tracked at all under PECR, and many people do reject them.
- Every extra script adds weight to the page, which can slow it down on mobile connections.
The result is that GA4 and each ad platform see a smaller and slightly different slice of what happened. That is a large part of why GA4 and Facebook conversion numbers do not match, and why neither will agree with your till or CRM.
Common mistakes
- Assuming server-side tracking removes the need for consent. Moving tags to a server changes where data is sent from, not whether you may collect it. PECR and UK GDPR still apply.
- Installing a platform twice, once through the theme or a plugin and again in Tag Manager, so every event is counted double.
- Unguarded purchase events on the order confirmation page, so a refresh or a bookmarked confirmation records another sale.
- Keeping tags nobody uses. Scripts added for a campaign or a previous agency years ago still load on every page.
- Expecting the numbers to match your sales records. They will not. The useful question is whether the gap is steady from month to month.
How to act on it
Start with an audit of what runs today. List every tag on the site, who added it and whether anyone still uses its data, and remove the rest. Make sure each remaining tag waits for consent and fires once per action. Then compare a month of tracked purchases or enquiries with the real figures from your shop or CRM, so you know how much the browser misses.
If the gap is large and paid media depends on it, add first-party signals where they help most, such as Meta’s Conversions API or Google Ads enhanced conversions, rather than rebuilding everything at once. For most businesses client-side tracking remains the base layer; the work is keeping it clean and filling its gaps where the spend justifies it. That judgement is central to performance marketing, where bidding is only as good as the conversions the tags report.
