The proper answer:
Let’s use Google Analytics 4 as an example, but the same principle applies to Meta Pixel, Google Ads, and other platforms.
Normally, when someone visits your site, this data needs to be sent to GA4.
This is why you install GA4 script on your site (either directly or via GTM).
The data then gets sent to Google’s servers. So something like region1.google-analytics.com…
(You can actually see this in your browser’s console network tab)
This is called client-side tracking because it’s happening in your browser.
The same data is also sent to Meta, Google Ads, TikTok, etc. in separate requests (if this has been setup).
Now, because this data is accessible to browsers, it’s also targeted by:
- ad blockers and
- browser privacy settings.
From a privacy perspective, this is great.
But from a data perspective, it means we are not seeing the whole picture.
Server-side tracking flips this around.
When someone visits your website, instead of sending the data directly to Google, the browser sends it to a server you own, for example, sgtm.yourdomain.com.
You can create this server using Google Cloud & server-side Google Tag Manager (sGTM). And then sGTM forwards this data to Google, Meta, Tiktok, etc.
sGTM doesn’t store any data. It’s just a tool that allows you to forward data from one place to another and set rules for when to do so. When using sGTM, you still need client-side GTM.
FYI, I’ve kept this explanation very simple and in the context of Google Tag Manager. A REAL server-side tracking is not always detectable by browsers. And it can be done purely on the backend for page views.
The benefits of server-side
- More accurate data
Since ad blockers and other browser settings don’t block data sent to your own servers, they don’t interfere with your tracking. And you will have more data in GA4 and for your pixels.
- Better control
This one is important! You decide what data to send and to which platforms.
For example, you could hash emails that you send to Meta, but keep them naked when sending to CMS like HubSpot.
In a client-side setup, you have no idea what the Meta script scrapes from your website.
- Faster site performance
Since you are sending all data first to your server, you need to run fewer scripts in the browser, and this means quicker page loads.
Additionally, you can send one request to sGTM, which is then sent to all third parties.
In a client-side setup, each third-party script is a separate script, and the same data is sent to each third-party script separately.
The downsides of server-side
- Setup is more complex
You (or your developer) need to host a “server container” for example, with Google Cloud and run server-side GTM there.
Or you could use services like Stape (not affiliated), who do most of the work for you.
- Costs extra
You pay for the server hosting. The cost can range from €20 to over € 2000, depending on what you track and the amount of traffic on your site.
- Not a tool to avoid privacy rules
IMPORTANT. Even if you use server-side tracking, you must still comply with GDPR or other relevant privacy laws. If you are storing PII data, you must disclose it and display a cookie banner, regardless of whether you are using server-side tracking or not.
So, should you use it?
If you’re running ads or rely heavily on conversion tracking, then YES, it’s worth the investment. You’ll get more data, better data, and fewer lost conversions. This should improve your marketing campaigns and potentially reduce CAC.
But if you’re a smaller website or not very technical, you can wait until you can hire someone to manage all of this, or use Stape to do it.