# Google Consent Mode v2, explained

> What Consent Mode v2 is, the four consent signals, Basic vs Advanced mode, and how to verify your implementation. Sourced from Google's official Tag Platform and Ads documentation.

Author: OptinStack Team  
Published: 2026-06-27  
Page: https://optinstack.com/blog/google-consent-mode-v2-explained  
Markdown: https://optinstack.com/llms.md/blog/google-consent-mode-v2-explained

If you run Google Ads or Google Analytics 4 in the EU or UK, you have probably been told to implement Google Consent Mode v2\. The deadline pressure is real, and the documentation is scattered across Google's Tag Platform and Ads Help\. This post explains what Consent Mode v2 actually is, how the four consent signals work, and what changes between Basic and Advanced mode\. We cite the official sources throughout so you can verify every claim\.

## What Consent Mode v2 is

Consent Mode v2 is Google's framework for communicating a visitor's consent choices to Google tags\. Instead of a tag loading or not loading, the tag reads the consent state and adjusts its behavior: it may set cookies, send cookieless pings, or redact data entirely\. Google introduced it to keep measurement working in regions where consent is required before non\-essential trackers run\.The version 2 update in early 2024 added two new signals,ad\_user\_data and ad\_personalization, alongside the existing ad\_storage and analytics\_storage\. The mark below is a link to the official reference\.

## The four consent signals

Each signal controls a category of data storage or use\. Your consent banner sets them to granted or denied based on what the visitor chose\.

*The four Consent Mode v2 signals and what each controls*

| Signal | Controls | Denied behavior |
| --- | --- | --- |
| ad_storage | Storage related to advertising (cookies, mobile IDs) | No advertising cookies set; URLs redacted (url_passing off) |
| analytics_storage | Storage related to analytics (e.g. GA4) | No analytics cookies set; modeled data in Advanced mode |
| ad_user_data | Sending user data to Google for advertising | User data not sent to Google for ads |
| ad_personalization | Personalized advertising | Ads not personalized for that user |

> **Info:** The url_passing behavior is tied to ad_storage. When ad_storage is denied, query parameters like gclid are stripped from outbound requests to Google domains so a click ID does not leak before consent. See the Consent mode reference for the full list of affected parameters.

## Setting default consent before tags load

Consent Mode requires you to set a default state before any Google tags fire, then update it once the visitor interacts with your banner\. The default usually denies everything except what is strictly necessary\. Google documents this in the Tag Platform setup guide\.


_Set default consent to denied before tags load, per Google's setup guide_
```html
<script> window.dataLayer = window.dataLayer || []; function gtag() { dataLayer.push(arguments); } gtag('consent', 'default', { ad_storage: 'denied', ad_user_data: 'denied', ad_personalization: 'denied', analytics_storage: 'denied', wait_for_update: 500 });
</script>
```

After the visitor accepts, your banner calls the same gtag consent command again with the granted values\. The key rule is order: defaults must run before the Google tag so no cookies are set in the gap\.

## Basic vs Advanced mode

This is the decision that matters most\. In Basic mode, when consent is denied, Google tags do not load at all and no data is sent\. In Advanced mode, the tags load but send cookieless pings, which lets Google model the missing conversions\. Advanced mode recovers more measurement, and it is what Google now requires for EEA traffic in Google Ads\.

*Basic vs Advanced Consent Mode when a visitor denies consent*

|  | Basic mode | Advanced mode |
| --- | --- | --- |
| Google tags | Do not load | Load in restricted mode |
| Cookies | None set | None set |
| Data sent to Google | Nothing | Cookieless pings |
| Conversion modeling | Not available | Available |
| Best for | Strictest privacy posture | Recovering measurement under consent |

> **Tip:** Advanced mode modeling uses aggregated, non-identifying data to estimate conversions Google could not directly observe. Google's modeling documentation is explicit that the modeled data cannot identify an individual user.

## Why Google now requires it

From early 2024, Google began requiring Consent Mode v2 for audiences and conversions in Google Ads for traffic from the European Economic Area, the UK, and Switzerland, without it, new EEA users cannot be added to audiences and EEA conversions may not measure correctly\. The two new signals, ad\_user\_data and ad\_personalization, are the ones teams most often miss\.

## How to verify it is working

Open your site in a fresh incognito window and use the browser developer tools to check the consent state and outgoing requests\.

- In the Console, run gtag to confirm the defaults are set before tags load\.
- In the Network tab, filter for google\-analytics\.com or google\-analytics and look for cookieless pings in Advanced mode \(they carry no \_ga cookie\)\.
- Accept the banner and confirm the signals flip to granted and cookies appear\.
- Use Tag Assistant or the GA4 DebugView to trace the consent events end to end\.

> **Warning:** A common failure is loading Google Tag Manager before the consent defaults. If gtm.js fires first, the default state is effectively ignored. Place the default consent script above the GTM snippet, or use GTM's built-in consent initialization.

## Practical takeaways

- Set all four signals to denied by default before any Google tag loads\.
- Update the signals the moment a visitor accepts or rejects in your banner\.
- Use Advanced mode if you need modeled conversions in Google Ads for EEA traffic\.
- Verify in an incognito window with the Network tab open before you call it done\.

Consent Mode v2 is not going away\. Getting the defaults, the update, and the Basic\-versus\-Advanced choice right is what keeps your ads measurement accurate while staying on the right side of consent rules\.
