hello@newnorth.nl+31 (0) 85 401 31 62
/Journal

Google Consent Mode v2: the four signals and what they cost you

ReferencePrivacy2024.04.15
Freek Kampen
Freek KampenCo-founder, New North Digital

How Consent Mode v2 steers your Google tags, why your cookie banner stays, and what basic and advanced each cost you in data.

What Consent Mode does

Consent Mode is how Google tags learn what your visitor chose. Your cookie banner sets a status, the Google tags read it and adjust what they do.

It sits between your consent management platform and your tags for Google Analytics, Google Ads and Floodlight. Version 2 became the practical requirement in March 2024 for advertisers who wanted to keep using personalisation and audience features in Google Ads for visitors in the European Economic Area.

The four signals

Consent Mode v2 uses four statuses, each either granted or denied:

  • ad_storage: may the tag use storage on the device for advertising purposes, such as ad cookies.
  • analytics_storage: may the tag use storage for analytics, such as the _ga cookie that holds your client id.
  • ad_user_data: may you send user data to Google for advertising purposes.
  • ad_personalization: may Google use that data for personalised advertising, remarketing included.

The first two are about storage on the device. The last two arrived with version 2 and cover what Google is allowed to do with the data. Someone can allow analytics and refuse personalisation, and those are two separate toggles in your banner.

The gtag API also carries statuses for functionality, on-site personalisation and security. Google tags ignore those, but you can use them to block your own tags in Tag Manager.

Basic versus advanced

Basic. Google tags only load after the visitor has given consent. If someone refuses, nothing loads and no request reaches Google at all. That visitor does not exist in your reports.

Advanced. The tags load straight away, but without consent they send a cookieless ping: no client id, no cookies, no advertising identifiers. What does go out is the fact that a pageview or conversion happened, plus the consent status itself.

Google uses those pings to model the behaviour and the conversions you are missing. Behavioural modelling in GA4 has thresholds for daily users and for how many days you have been sending data, so small properties get no modelling at all. Below that threshold, advanced mode mainly buys you conversion modelling in Google Ads.

Consent Mode does not replace your banner

Consent Mode decides nothing by itself. It listens to whatever your consent management platform hands it. You still need a CMP, with a valid banner, a refuse button as easy to reach as the accept button, and a way to change the choice later.

The default status has to be denied before the banner loads. Skip that and there is a window with no status at all, in which tags fire as if consent were given. In gtag you set it with a consent default call at the top, with wait_for_update so tags pause briefly for the banner's answer.

In Google Tag Manager your CMP tag belongs on the Consent Initialization, All Pages trigger, which runs before All Pages. Put the banner on an ordinary pageview trigger and the order inside the container decides who goes first, which is rarely your banner.

The trap we see most often is a tag hardcoded in the source, outside the container. It knows nothing about consent state and fires before the banner exists. Open the network tab and check whether anything leaves for Google before the first click on the banner.

What it costs you

Basic mode costs you visible traffic. Sessions, users and conversions drop by roughly the share of people who refuse, and you watch it happen in your reports. Honest, and awkward when you compare year on year.

Advanced mode hands you modelled numbers instead. They count in your GA4 reports and in Google Ads, but you cannot drill into them. The BigQuery export holds only the hits that actually arrived, so your export will not reconcile with the interface. Modelling is a different thing from sampling: sampling scales up a slice of data you did collect, modelling estimates behaviour you never collected.

Whichever you pick, write down the date you switched it on. Without it you will be explaining a kink in a chart to nobody's satisfaction six months later.

What to do with this

  • Default all four signals to denied, before any other tag runs.
  • Attach your CMP to the Consent Initialization, All Pages trigger in Google Tag Manager.
  • Use the network tab and Tag Assistant to confirm nothing leaves for Google before the banner choice.
  • Pick advanced if you lean on conversion modelling in Google Ads, and basic if you would rather count only what you measured.
  • Make sure your banner passes four choices that genuinely map onto the four signals, instead of one button that flips everything at once.
  • Record the date of the change and compare the week before with the week after, so you know the size of the gap.

Want to talk about this?

Let's talk data.

Tell us about your stack, your goals, the data you wish you had.

Takes 1 minute