If you've logged into Google Ads and found a Google Ads consent mode warning about "EU user consent policy" sitting on your account, the message itself is short on specifics — it tells you something's wrong with your consent signals, not which of several possible things it actually is. The good news: there's a small, known set of causes, and checking them in order gets you to the actual gap faster than guessing.
First, take the warning literally: it's about signals, not intentions
Google's automated compliance check isn't evaluating whether you have a cookie banner or whether you believe you're compliant — it's checking whether specific consent signals are actually present in the requests your site sends to Google. A banner that looks correct to a human visitor can still fail this check if the signals underneath it are incomplete or missing. That's the gap worth finding.
1. Check whether Consent Mode is present at all
How to check: open your site in a fresh incognito window, open DevTools console, and
run dataLayer before interacting with anything. Look for an entry with "consent" and
"default". If there's nothing at all — no consent-related entry in dataLayer — Consent
Mode isn't implemented on the page Google is evaluating, full stop.
The fix: this is the most basic gap and the easiest to fix — implement gtag('consent', 'default', {...}) before any other tag fires, either directly or through your CMP's native
Consent Mode integration (Cookiebot, OneTrust, Termly, and most others ship one). See why
Google Consent Mode v2 isn't working for the
full breakdown of the four most common ways this goes wrong even when it looks implemented.
2. Check whether all four consent types are present, not just two
How to check: in that same dataLayer entry, look specifically for all four keys:
ad_storage, analytics_storage, ad_user_data, ad_personalization. A setup migrated
from Consent Mode v1 often has only the first two — the newer two either missing entirely
or never mapped in the CMP's category settings.
The fix: this exact failure mode — Consent Mode technically present but missing
ad_user_data/ad_personalization — is common enough to warrant its own full breakdown:
see Consent Mode v2 missing ad_user_data for
every place this specifically goes wrong and how to fix each one.
3. Check whether your traffic actually includes EEA, UK, or Swiss visitors
How to check: in Google Ads, check your campaign geo-targeting and Analytics audience reports for EEA/UK/Switzerland traffic volume. This warning is specifically about that traffic — Google's EEA consent requirement has applied since March 2024, and Switzerland was added from July 31, 2024.
Why this matters: if you're seeing this warning but have negligible EEA/UK/Swiss traffic, double-check your geo-targeting settings and analytics filters — it's worth confirming the warning is actually about meaningful traffic before spending time on a fix, though the underlying signal gap is still worth closing either way since it costs nothing to have correct once implemented.
4. Check whether the gap is in the default, the update, or both
How to check: run the dataLayer check twice — once before touching the banner
(checking the "default" entry), and once after clicking Accept (checking for a second
entry with "update"). A warning can be caused by either half being wrong: a default
that's missing the newer consent types, or an update call that never sends them even
though the default technically lists them.
The fix: whichever half is incomplete, the same principle applies — both the default and update commands need to declare and correctly set all four consent types, not just the original two. A default that's correct but an update that isn't (or vice versa) still trips the same warning, because Google's check looks at the actual signals your site sends across a real visit, not just one snapshot.
What happens after you fix it
Fixing the underlying gap doesn't clear the warning instantly — Google re-evaluates
accounts on its own schedule, not on-demand. In the meantime, you can verify the fix is
actually correct yourself: reload in a clean incognito session, run the dataLayer checks
above, and confirm all four consent types are present and correctly set on both the
default and the update. If your remarketing audience has also been shrinking, that's
frequently the same root cause showing up in a different report — see is consent gating
shrinking your remarketing audience
for that angle specifically.
If you'd rather not do this by hand
This is exactly what a pre-consent scan checks automatically: whether a complete Consent Mode default and update are present, whether all four consent types are declared, and whether the two halves actually match. Worth running once you've made a fix, to confirm it actually took before waiting on Google's own re-evaluation.
Petrus here, ConsentCheck's founder. This warning email is one of the more common reasons someone finds this site in the first place — it's almost always one of the four checks above.