Google’s Consent Mode is a way to control how tags react to the user’s consent for different tracking purposes. It is specifically designed to work with Google’s tags, but especially through Google Tag Manager, you can use Consent Mode’s features and APIs to control other tags, too. Consent Mode comes in two “flavors”: Advanced Consent Mode is specifically designed for Google’s products. Tags for GA4, Ads, and Floodlight are sensitive to the user’s consent choices and change their behavior accordingly.

Continue reading

Google Tag Manager users received an email on March 11th, where Google announced a very cryptic update to Google Tag Manager: As is typical with Google’s email communications, the email raised more questions than it answered. Even though I tackled the email in a LinkedIn thread, there’s still a lot of misunderstanding (and misinformation) going about. In this short article, I’ll explain what Google is going to do on April 10th.

Continue reading

One of the most popular use cases for server-side Google Tag Manager, often shared on this blog, too, is to split an incoming stream into multiple different endpoints. Since the demise of customTask for Universal Analytics (Rest In Peace!), there hasn’t really been a solid, officially supported way of splitting a single GA4 stream into multiple endpoints. This is useful in case you want to create a “global rollup” property that combines data from multiple local sites, for example.

Continue reading

There are many reasons why you might want to duplicate your tags (or triggers, or variables, or templates) in Google Tag Manager. One prime example is server-side tagging, where it’s sensible to first build and validate your tracking setup before migrating fully to a server-side approach. Alternatively, you might want to collect analytics data to a second property, for example when you want to have a local and a global dataset for site visit data.

Continue reading

In this guide, I’ll show you how to add first-party cookie values client-side, which your server-side Google Tag Manager processes can then access. You might be wondering: “Why bother?”. After all, if server-side GTM is running same-site with the website sending the requests, why can’t it just read the cookies on its own, right? Well, true. But there are cases where the website and web server seem to be same-site but are in fact not.

Continue reading

There are two new custom templates available in server-side Google Tag Manager. These templates have been designed to facilitate Piwik PRO tracking in a server-side container. Piwik PRO Client -> This Client template interacts with the Piwik PRO JavaScript tracker and lets you route Piwik PRO tracking through a server-side GTM container. GitHub repo. Piwik PRO -> The tag template works in unison with the Piwik PRO Client, forwarding the hits to the Piwik PRO endpoint.

Continue reading

Piwik PRO has two new server-side Google Tag Manager templates, and this article explains what they are and how they work. The first template, Piwik PRO Client, is designed to work in unison with the Piwik PRO HTTP API. Most often these requests are generated by the Piwik PRO JavaScript tracker, but theoretically any HTTP source that uses the same schema can send requests for the Client to claim. Once the Client claims the request, it generates an event data object that can be consumed by tags in the server-side Google Tag Manager container.

Continue reading

Author's picture

Simo Ahava

Husband | Father | Analytics developer
simo (at) simoahava.com

Senior Data Advocate at Reaktor

Finland