Preparing tool...
Preparing tool...
If you implemented Consent Mode v2 but forgot to enable Advanced Consent Mode or misconfigured your default initialization states, GA4 will completely block data collection until the user clicks accept.
Since March 2024, Google mandated Consent Mode v2 for anyone targeting users in the EEA. Shortly after, many businesses saw their measured traffic plummet by 30% to 50% overnight.
Consent Mode is designed to respect user privacy, but a tiny misconfiguration in your implementation can cause it to "fail closed", meaning it permanently blocks GA4 tags from firing even if a user subsequently opts-in, or completely neuters your ability to do behavioral modeling.
1. Firing the Default State Too Late
The Consent Mode 'default' command (e.g., ad_storage: 'denied') MUST fire before your GTM container loads or any GA4 tags initialize. If your Cookie Banner script loads asynchronously from a third party and pushes the default state a few milliseconds late, GA4 assumes you broke compliance and blocks data.
2. Missing the 'Update' Command
When a user clicks "Accept All" on your cookie banner, your platform must push a consent 'update' command to the dataLayer. If your banner simply drops a cookie but doesn't explicitly send the Google-formatted update ping, GA4 stays in 'denied' mode forever during that session.
3. Basic vs. Advanced Consent Mode If you configured "Basic" Consent Mode, tags are physically hard-blocked from firing until consent is granted. This causes a massive data loss. "Advanced" Consent Mode allows tags to fire immediately, but strips them of identifying cookies (sending anonymized pings) allowing Google to model your missing traffic.
Verify Initialization Timing: Open the GTM Preview mode timeline. Look at the very first event, 'Consent Initialization'. Click it and view the 'Consent' tab. It should show 'On-page Default' values as 'Denied'. If it is blank, your banner is loading too late.
Test the Accept Button: In the GTM debugger, click your cookie banner's Accept button. A new 'Consent' event should appear in the timeline. Check the Consent tab again—it should now clearly show 'On-page Update' as 'Granted'.
Use the Cookiebot/OneTrust Templates: Avoid custom HTML for consent. Use the official GTM templates provided by your Consent Management Platform (CMP) to ensure the API handles the update logic correctly.
Audit your Implementation: Run your domain through our GA4 Auditor. We specifically scan for the dataLayer.push({consent: 'default'}) timing relative to the gtag initialization.
Instead of clicking through settings yourself, the audit checks this exact issue (and 30 others) on your GTM container — then keeps watching every night.
Run the GTM audit