Consent Mode v2 in Practice: default, update, page_view and the Most Common GTM Mistakes
Correct Consent Mode is not just enabling consent in GTM. The key is timing: consent default must be set as early as possible, typically through Consent Initialization.
Short Answer
Correct Consent Mode is not just enabling consent in GTM. The key is timing: consent default must be set as early as possible, typically through Consent Initialization. Then consent update must arrive based on the user's interaction with the banner. And for page_view, you need to know whether you send it before interaction, after interaction or only after wait_for_update.
Good practice for typical websites is not to send the main page_view before the cookie banner returns consent update, if the interaction happens on the first page and the wait is short. If the user does not respond and moves on, page_view can be sent with denied according to the configured default. What matters is that no tag reads the consent state late or without a default.
Default Is Not the Same as Update
Consent default is the initial state. It tells tags what to assume until you know the user's decision. In an EU scenario, it is typically denied for advertising and analytics purposes. Consent update is the actual state after the user's decision: accept, reject or detailed choices.
The most common technical mistake is not only "page_view before default". That is obviously wrong. In practice, it is more common for page_view to be sent before update, even though the banner sends update a few hundred milliseconds later. The result: the first visit has a different consent state than you intended.
wait_for_update and Manual page_view
Google documentation allows wait_for_update so tags can briefly wait for consent update from an asynchronous banner. But it is not a substitute for good ordering. If you have a GA4 tag with automatic page_view, it can fire before you have control. In a technically clean setup, it often makes sense to disable automatic page_view and send it manually after the banner decision or after a defined wait expires.
A typical model: 1. Consent Initialization sets default denied. 2. The banner loads. 3. If the user clicks, it sends update. 4. Only then do you send page_view with the correct consent state. 5. If the user does not click and moves on, events are sent according to default denied.
The Four Consent Mode v2 Parameters
In Google Consent Mode v2, the main parameters to watch are analytics_storage, ad_storage, ad_user_data and ad_personalization. The first two address storing and reading analytics/advertising cookies. The second two are important for advertising purposes and for working with user data and personalization.
In GTM, check not only that the variables exist, but also when they change. Consent Overview by itself does not guarantee the correct order. Tag Assistant and the timeline in Preview mode are more important.
Test Scenarios
Test at least four scenarios: first visit + accept, first visit + reject, first visit without clicking the banner and then moving to another page, and returning user with stored consent. In each scenario, watch consent default, consent update, page_view, conversion tags and any remarketing tags in Tag Assistant.
When you see that page_view was sent before update, ask: is this intentional according to a basic/advanced consent strategy, or an ordering mistake? If you want the first page_view to reflect real consent, page_view must fire only after update or after a controlled wait.
What to Document
Document who sets default, who sends update, which tags have additional consent checks, which tags are blocked before consent and where automatic page_view is disabled. Without documentation, Consent Mode becomes a place where every vendor assumes something different.
After changing the CMP, GTM container or GA4 tag, repeat the full test. Consent is a time-sensitive implementation. One trigger change can alter the order of the entire data layer.
FAQ
Frequently Asked Questions
Next Article
server-side GTM
Server-side GTM: When It Makes Sense, What It Really Improves and What Not to Expect
Server-side GTM makes sense when you want more control over data, better data quality, fewer scripts in the browser and controlled event forwarding.
Looking for someone who can take this off your plate?
We will check the Consent Mode timeline in GTM, fix the default/update/page_view order and design test scenarios for the cookie banner.