Skip to content

Google Consent Mode v2 – Complete Guide

Step-by-step guide to implementing Google Consent Mode v2. From basic setup to advanced configuration with GTM and CMP.

consent modeGoogle Tag ManagerGTMimplementationCMP

Google Consent Mode v2 – Complete Implementation Guide

Google Consent Mode is an API that lets you adapt how Google's tags behave based on the user's consent status. Since March 2024, Google requires all advertisers targeting users in the EEA, United Kingdom and Switzerland to implement Consent Mode v2. Without it, you risk losing access to remarketing, conversion measurement and personalized ads. This guide takes you through the entire implementation step by step.

What is new in Consent Mode v2?

Version 2 introduces two new consent parameters in addition to the originals:

ParameterDescriptionVersion
ad_storageConsent to store advertising cookiesv1 + v2
analytics_storageConsent to store analytics cookiesv1 + v2
ad_user_dataConsent to send user data to Google for advertising purposesNew in v2
ad_personalizationConsent to personalized ads (remarketing)New in v2

All four parameters must be included in your implementation. If ad_user_data or ad_personalization are missing, your implementation does not count as v2-compliant.

Basic vs. Advanced mode

Consent Mode can be implemented in two modes:

Basic mode

Google's tags do not load at all until consent is given. No data is sent to Google before the user clicks "Accept". This mode provides full GDPR compliance but means you lose all data from users who do not give consent.

Advanced mode

Google's tags load and send cookieless pings to Google even without consent. No cookies are set, no personally identifiable data is collected, but Google receives anonymized signals used for conversion modeling. When consent is given, full data collection is activated. This mode is recommended by Google as it provides better data and better modeled conversions.

Implementation via Google Tag Manager

Step 1: Enable Consent Mode in the GTM container

In GTM, go to Admin β†’ Container Settings and enable "Enable consent overview". This gives you an overview of which tags require consent and which do not.

Step 2: Configure your CMP tag

Most CMPs (Cookiebot, OneTrust, Usercentrics, CookieYes) offer a GTM template in the Community Template Gallery. Install your CMP's template and configure it to:

  • Trigger on "Consent Initialization – All Pages" (this trigger runs before all other tags)
  • Enable Consent Mode v2 support in the CMP template settings
  • Map your consent categories correctly to Google's parameters

Step 3: Configure consent settings on your tags

Go to each Google tag in GTM (GA4, Google Ads Conversion, Google Ads Remarketing etc.) and open "Consent Settings". Configure:

  • Google Ads tags: Require ad_storage, ad_user_data, ad_personalization
  • GA4 tags: Require analytics_storage
  • Conversion tags: Require ad_storage, ad_user_data, analytics_storage

With "Additional Consent Checks" enabled, tags will automatically adjust their behavior based on consent status.

Step 4: Test the implementation

Before publishing, test thoroughly:

  1. Open GTM Preview Mode.
  2. Verify that "Consent" appears in the timeline and that all default values are 'denied'.
  3. Accept cookies and verify that "Consent Update" triggers with correct 'granted' values.
  4. Check in Tag Assistant that all four parameters (ad_storage, analytics_storage, ad_user_data, ad_personalization) are present.
  5. Also test the scenario where the user denies cookies – no cookies should be set.

Implementation without GTM (gtag.js)

If you do not use GTM, you can implement Consent Mode directly in code:

<script>
// Run BEFORE the gtag.js/analytics 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>

Then update consent when the user makes their choice:

// Run when the user accepts cookies
gtag('consent', 'update', {
  'ad_storage': 'granted',
  'ad_user_data': 'granted',
  'ad_personalization': 'granted',
  'analytics_storage': 'granted'
});

Region settings

You can set different default values depending on the user's region. This means users outside the EU/EEA can get full data collection immediately, while EU users start with 'denied':

gtag('consent', 'default', {
  'ad_storage': 'denied',
  'ad_user_data': 'denied',
  'ad_personalization': 'denied',
  'analytics_storage': 'denied',
  'region': ['AT','BE','BG','HR','CY','CZ','DK','EE','FI','FR',
             'DE','GR','HU','IE','IT','LV','LT','LU','MT','NL',
             'PL','PT','RO','SK','SI','ES','SE','IS','LI','NO',
             'GB','CH']
});
gtag('consent', 'default', {
  'ad_storage': 'granted',
  'ad_user_data': 'granted',
  'ad_personalization': 'granted',
  'analytics_storage': 'granted'
});

Verification in Google Ads

After implementation, you can verify that Google is receiving your consent signals:

  1. Log in to Google Ads.
  2. Go to Tools β†’ Measurement β†’ Consent settings.
  3. Check that your domains show consent signals are being received correctly.

It can take up to 48 hours after implementation before Google starts showing data in the consent settings.

Need help?

Google Consent Mode v2 is technically not difficult to implement, but misconfigurations can lead to lost data or false compliance. At Growth Hackers, we have implemented Consent Mode v2 on hundreds of websites and can help you with a fast, correct implementation.

Contact us for implementation or consulting, or read more about our measurement and analytics services.

Frequently Asked Questions

Does Consent Mode affect my data volume in GA4?

Yes, you will see less data from users who do not give consent. But with advanced mode enabled, Google uses conversion modeling to estimate the conversions you miss. In GA4, this is shown as "modeled conversions". In practice, advanced mode typically provides 70-80 percent of the data you would otherwise have had.

What happens to existing data if I implement Consent Mode now?

Consent Mode only affects new data going forward. Your existing historical data in GA4 and Google Ads is not affected. However, you may see a change in data patterns after implementation, especially if a large proportion of your users are in the EU.

Can I implement Consent Mode gradually?

Yes, you can start with basic mode and then upgrade to advanced mode. The important thing is that you have a working Consent Mode v2 implementation with all four parameters before Google's deadline.

Related articles