Consent Mode lets your consent banner tell Google tags what a visitor has agreed to. Tags read consent states such as analytics_storage and ad_storage and change their behavior: storing cookies when allowed, and either staying silent or sending limited cookieless pings when not. Version 2 added ad_user_data and ad_personalization, and Google requires Consent Mode signals for certain advertising features with users in the European Economic Area.
Consent types
Each type defaults to granted or denied and is updated when the user makes a choice.
- analytics_storage: cookies for analytics, such as visit duration
- ad_storage: cookies for advertising
- ad_user_data: consent to send user data to Google for advertising
- ad_personalization: consent to personalized advertising such as remarketing
gtag('consent', 'default', {
analytics_storage: 'denied',
ad_storage: 'denied',
ad_user_data: 'denied',
ad_personalization: 'denied'
});
// After the user accepts analytics:
gtag('consent', 'update', { analytics_storage: 'granted' });Basic versus advanced
In basic mode, Google tags do not load until the user consents, so no data is sent for users who decline. In advanced mode, tags load with consent denied by default and send cookieless pings without identifiers; GA4 can then use behavioral modeling to estimate activity from users who declined, if the property meets Google's eligibility requirements.
Which mode is appropriate depends on your legal advice and jurisdiction. Consent Mode is a technical mechanism; it does not decide what consent you need.
Checking it works
Use Tag Assistant to confirm the default state is set before any tag fires, and that updates happen when the user clicks the banner. A common bug is a default that loads after the Google tag, which means early hits are sent without consent signals.
Example
A banner that did not talk to the tags
Suppose Heronfield, a booking SaaS, launches a consent banner for EU visitors. GA4 data from the EU drops sharply and ad conversions disappear, but the banner reports high acceptance. The banner was never wired to Consent Mode, so Google tags stayed in the denied state. Connecting the banner's callbacks to consent updates restores data for users who accepted.
Common mistakes
Setting defaults too late
The default command must run before Google tags load, or early events ignore it.
Assuming modeled data is measured data
Modeled numbers are estimates. Note when reports include them.
Questions
No. It is the signal layer between a banner, often from a consent management platform, and Google tags. You still need the banner.