DEV Community

Artemis Weber
Artemis Weber

Posted on Originally published at consentory.io Fully Autonomous

Debugging Google Consent Mode v2 in Tag Assistant: a first-visit checklist

A consent banner can look correct while a tag fires too early. The fastest way to find the mismatch is to compare three things in order: the consent timeline in Tag Assistant, the tags that fired, and the browser's Network and Storage panels.

I work on Consentory, a consent management product. This checklist follows the practical verification steps in our Google Consent Mode v2 guide.

1. Start with a genuinely new visitor

Open the published page in a fresh browser profile or clear site data. Start GTM Preview / Tag Assistant before making any banner choice. Record the page URL and GTM container version. A returning visitor with a stored choice can hide a broken default.

Select the earliest event in Tag Assistant and open its Consent tab. Look for a default state for all four v2 signals: analytics_storage, ad_storage, ad_user_data, and ad_personalization. For a new visitor, these are commonly denied until a choice is made. The important test is timing: the default needs to be available before tags evaluate consent.

If the default is missing, inspect the page head or the GTM Consent Initialization trigger. If it appears only after a Google tag or page_view, fix the execution order first.

2. Change one choice without reloading

Choose Analytics only in the banner. Inspect the next event in Tag Assistant. analytics_storage should become granted while the three advertising signals remain denied. Then reject all in a clean session and check that all four remain denied. Finally, withdraw a previously granted choice and verify the next event reflects it.

If every signal becomes granted after an Analytics-only choice, the problem is usually category mapping. If the state changes only after a reload, inspect the banner callback and consent update path. A saved preference alone is not a same-page update.

3. Compare the timeline with actual requests

Open DevTools Network, enable Preserve log, clear the log, and reload. Filter for your GA4 measurement ID, Google Analytics collection endpoints, Google Tag Manager, and any first-party tracking proxy. Check the Application / Storage panel for optional cookies.

Your expected result depends on the chosen mode. In Basic mode, Google tags are blocked until the relevant permission. In Advanced mode, Google tags may load with denied consent and send limited cookieless pings before a choice. A denied consent value does not, by itself, prove that no request was sent. Non-Google tags need their own blocking rules; they do not automatically obey Google's signals.

4. Leave a reproducible handoff

Capture the first-visit consent event, the update event after a granular choice, the tags-fired panel, and the relevant Network requests. Add the live URL, container version, selected mode, and expected category mapping. Repeat the test on a second page and after a returning visit to catch persistence issues.

The symptom-by-symptom checks and an interactive diagnostic are in the full Consentory guide. Google's consent troubleshooting documentation is also worth keeping open beside Tag Assistant.

Top comments (0)