Overview
Google Consent Mode v2 sends your visitors’ consent choices to Google’s servers in the background, regardless of whether or not your banner appears on screen. Because of that, you can’t confirm it’s working just by looking at the banner. Use one of the verification methods below.
Before you start, it helps to know which mode you’re running:
- Basic mode blocks Google’s tags until a visitor accepts. Nothing is sent to Google before consent. This is the typical setup for GDPR/EU opt-in.
- Advanced mode loads Google’s tag on page open and sends an anonymous, cookieless “ping” before the visitor responds, so Google can model conversions for visitors who decline.
This matters for testing: in basic mode, seeing no data before consent is the correct result, not a failure.
Method 1: Google Tag Assistant (Recommended)
Tag Assistant is a free Google tool that lets you watch consent signals change in real time. It’s the easiest way to confirm your setup is wired up correctly.
- Open a new Incognito window, so past tracking data doesn’t skew your results. For details, see Open an incognito window.
- Go to tagassistant.google.com, enter your site’s URL to start a debugging session.
- When your site opens, open the Consent tab in the Tag Assistant panel.
- Check the default state: Before touching the banner in the incognito window, go to the Tag Assistant and find the Summary list on the left, this displays the events that fired when the page loaded. Click the earliest consent event. In the details on the right, open the Consent tab and read the On-page Default column. Confirm that the flags, (analytics_storage, ad_storage, for example) match your compliance rules. For instance, it should be Denied for GDPR/EU traffic.
- Update and check the results: Return to the incognito window and click Accept on your banner.
- Return to Tag Assistant, and confirm the flags move from Denied to Granted (shown as the On-page Default>On-page Update change).
Tag Assistant’s Consent tab looks the same in basic and advanced mode. It confirms consent mode is wired up, but it can’t tell the two modes apart. To distinguish between basic and advanced mode, see How to specifically confirm Advanced Consent Mode below.
Method 2: Browser Developer Tools
If you’re comfortable with browser inspection tools, you can confirm the raw signals two ways.
Open your site in an Incognito window, then right-click → Inspect.
Network tab (most reliable)
Filter for collect and reload the page. What you should see before clicking anything depends on your mode:
- Advanced mode: a request to Google fires immediately, carrying gcs=G100 (all denied), and no _ga / _gid cookies are set.
- Basic mode: nothing is sent until you click Accept. That silence is the correct behavior, not a failure.
After you click Accept, a new collect request fires with gcs=G111 (all granted — i.e. Accept All), and _ga cookies appear.
Reading the gcs value: the format is G1xy, where x = ad storage and y = analytics storage (1 = granted, 0 = denied). So G100 = all denied, G111 = all granted, G101 = analytics only, G110 = ads only. If a visitor customizes their choice instead of accepting everything, expect a mixed value like G101.
Console tab (alternative)
Type console.table(window.dataLayer) and press Enter to inspect the data layer. You should see:
- A [‘consent’, ‘default’, …] entry near the top of the queue, firing before any third-party scripts. If it’s not near the top, your banner is loading too late.
- After you click Accept, a [‘consent’, ‘update’, …] entry confirming the visitor’s choice was sent.
Consent commands live inside the dataLayer object — they do not print as ordinary Console log messages, so inspect dataLayer directly rather than watching the log.
How to specifically confirm Advanced Consent Mode
Advanced mode means the Google tag is not blocked — it loads on page open and sends a cookieless ping before the visitor responds to the banner.
The way to tell advanced from basic is the Network tab:
- Advanced mode: a collect ping with gcs=G100 fires before any banner click.
- Basic mode: nothing is sent until consent is given.
(Tag Assistant’s Consent tab can’t distinguish the two — both modes look identical there. Use the Network tab.)
If you also use Google Site Kit
Cookie Consent works alongside Google Site Kit automatically. When Site Kit and the WP Consent API plugin are both installed and active, Cookie Consent reports your visitors’ consent choices through the WP Consent API — the WordPress standard that lets consent plugins communicate with each other. Site Kit listens for those signals and applies them to Google’s tag, so consent flows end to end with no extra configuration.
Note: The WP Consent API plugin must be installed and active for this hand-off to happen.
In this setup, Site Kit owns the Google tag, so the signal reaches Google through Site Kit rather than directly from Cookie Consent. The Method 2 Network-tab check still works — just confirm the flow end to end:
- Before consent: gcs reflects the default settings. For example, gcs=G100, means all denied, which is expected for GDPR/EU traffic).
- After you return to the site and click Accept, gcs flips to granted, in this case gcs=G111, on the next collect request. This confirms the consent signal traveled from Cookie Consent, through the WP Consent API, to Site Kit’s tag.