Skip to content
Consent & GDPRFebruary 12, 20258 min read

GA4 Consent Mode v2: The Complete Setup Guide for 2025

Google made Consent Mode v2 mandatory for EU advertisers in March 2024. Here's what changed, what breaks without it, and exactly how to set it up in GTM.

What is Consent Mode v2 and why does it matter?

Google Consent Mode v2 is a framework that tells Google tags (GA4, Google Ads, Floodlight) how to behave when users haven't granted consent. Without it, Google cannot legally collect data from EU users under GDPR and ePrivacy regulations.

Since March 2024, Google has required Consent Mode v2 for all advertisers using audience-based features in the EU. This includes remarketing, similar audiences, and conversion modeling. If you rely on Google Ads and don't have Consent Mode v2 configured, your campaigns are already underperforming.

The v2 update added two new consent types: ad_user_data (consent for sending user data to Google) and ad_personalization (consent for personalised advertising). These are in addition to the existing analytics_storage and ad_storage signals.

What happens without Consent Mode v2?

Without Consent Mode v2, Google cannot use conversion modeling for users who decline cookies. Conversion modeling uses machine learning to estimate conversions from consented users that cannot be directly observed. Without it, you're blind to 30–70% of your actual conversions in the EU.

Smart Bidding strategies (Target CPA, Target ROAS, Maximize Conversions) rely on conversion data to optimize bids. When up to 50% of EU conversions go unreported, Smart Bidding makes suboptimal decisions that raise your cost per acquisition.

You also risk your Google Ads account being flagged for policy violations, which can lead to campaign suspension during review periods.

How to implement Consent Mode v2 in GTM

The fastest approach is to use a Google-certified CMP (Consent Management Platform) that has a native GTM integration. Cookiebot, OneTrust, Usercentrics, and Axeptio all provide GTM templates that automatically fire the correct consent signals.

If you're setting it up manually, you need to add a gtag('consent', 'default', ...) call before your GTM snippet fires. This sets the default state to denied for all consent types. Then configure your CMP to call gtag('consent', 'update', ...) when a user grants or denies consent.

Always test your implementation using the Google Tag Assistant. Look for the 'Consent' tab in the Tag Assistant report — it should show the default state and the update firing after user interaction. If you see GA4 hits firing before the consent update, your implementation is incorrect.

Common mistakes to avoid

The most common mistake is setting consent defaults after the GTM snippet, or inside the GTM container itself. The consent default must fire before any Google tags initialize — meaning it must be in your page's HTML, not in a GTM tag.

Another common issue is forgetting to include ad_user_data and ad_personalization in the default command. Many older guides only show analytics_storage and ad_storage. All four signals are required for full Consent Mode v2 compliance.

Finally, don't forget to test on slow networks. Consent banners that load slowly due to CMP script weight can cause GA4 and Google Ads tags to fire before the banner appears and before the user has made a choice.

Found this helpful?

Run a free audit of your GA4 property — 66+ checks in 3 minutes.

Run a free GA4 audit now →