Understand Google consent mode for GA4 and Google Ads

Discover why you should use Google Consent Mode, how it works and how to implement it. Level up your consent mode solution with Google Analytics.
PUBLISHED ON
UPDATED ON

What is Google consent Mode

If you’re reading that article, you probably know that 1/ asking for your users’ consent is now required in many places (Europe and Canada, for instance) 2/ that Google Analytics is impacted by this new reality and 3/ that Google has developed what we call “Google consent mode” to address this situation.

The consent mode is a solution developed by Google which works with Consent Management Platforms (CMP) in order to adapt your tracking based on the permissions granted by each user when visiting your platform. It uses different signals to dynamically adjust how your Google tracking solutions such as Google tags work. If no cookie consent is given, in some cases, this solution can allow Google Analytics 4 (GA4) and/or Google Ads to use behavioral or conversion modeling to help compensate for data loss.

Why do you need to implement it

The consent mode is very important for multiple reasons:

Control when your Google Tags are triggered and what they track

We’re focusing on Google products here as we’re talking about the Google consent mode, but most of what we mention applies to any tracking solutions.

So, the main reason why you want to implement this solution is because you don’t want to send data to your different solutions when a user doesn’t grant you the right to do so. This is key in order to comply with laws such as GDPR which require an explicit consent from your users.

But also, as we’ll see later, the consent mode allows you to control what type of data is sent and what permissions you have from each user, which allows a more granular control over the information you’re sending and what you can use.

In March 2024, Google requires it in some cases

At the beginning of 2024, Google announced that using the Consent Mode is going to be required starting in March 2024 for the European Economic Area (EEA) if you use the data you receive for advertising personalization and remarketing purposes - basically if you use your data (from GA4 and/or directly Google Ads) for Google Ads.

How does it work

There are two possible implementations.

Basic Consent mode

The first one, called “Basic implementation” is quite simple. It consists of blocking your tracking solutions from sending data until consent is granted. By the way, yes, this is necessary to, by default, block your tags from firing.

This mode is capable of providing conversion modeling in GA4 and Google Ads for the impacted traffic solely based on your historical data - as no data is sent.

Advanced Consent mode

The “Advanced implementation”, on the other hand, requires you to trigger your tags before your cookie banner is shown and relies on state updates to dynamically inform your tracking solutions if a consent is given. If no consent is granted, pings are sent to feed Google Ads and Analytics AI.

This mode can allow you to benefit from behavioral modeling in GA4.

More about data modeling

Keep in mind that data (conversion and behavioral) modeling is not for everyone: for example, it requires you to have quite a lot of traffic (at least 1,000 daily users sending events with analytics_storage='granted' for at least 7 of the previous 28 days, for instance - source) for the behavioral modeling to work.

The prerequisites need to be maintained in order for the estimated data to remain available.

When GA4 provides “synthetic data”, this data shows in your reports. It might take up to 28 days before it starts showing once you have a complete and working setup.

Which mode is better?

That’s up for debate, but, even though the “Advanced implementation” is supposed to be compliant with the different current legislations, it’s certain that it can be more tricky to implement and lead to more errors (which could lead to data leaks).

If you want to be safe, go for the basic implementation, especially if you don’t need or can’t have behavioral data modeling.

What’s new with Google Consent Mode V2

At the end of 2023, Google announced the Consent Mode V2, which is an evolution of the consent mode they developed. Besides the technical update, Google announced (as mentioned before) that, starting in March 2024, “advertisers must adhere to the EU consent policy to use ad personalization.” (source) Ie, you need to use this updated version if you use your data for ad personalization purposes and that you target a European audience.

For your EEA traffic, you should pass two new parameters (for the Advanced Consent mode): ad_user_data (does the user accept to send data for advertising purposes) and ad_personalization (does the user accept to share data in order to personalize her/his advertising experience). This adds more granularity to the consent tracking.

Keep in mind that you only need to change your setup if you use personalized advertising such as remarketing and target EEA traffic (for now at least). If you are impacted, you need to make sure your CMP sends the two needed parameters mentioned above.

How to implement it

Alright, so now that we understand what consent mode is, what it is for and how it works, the latest question is: how do we implement it?

Of course, it depends on what implementation you want to use. However you always have two choices: using the gtag.js library (ie, only adding code to your pages) or using Google Tag Manager with some JavaScript in your pages code.

The most straightforward solution is definitely using Google Tag Manager with a Consent Management Platform which supports it (Google provides a list of supported CMPs here). You’ll be able to set up triggers and/or use the state updates to adjust how your tracking solutions work with your CMP.

Depending on your Consent Management Platform or your custom cookie banner, you need to work on the information that it gives you and define how your tags are triggered or how the consent state parameters are used based on that.

‍

go to the top arrow