How to Check Google Consent Mode v2 Is Working
How do you check Google Consent Mode v2 is working?
To check Google Consent Mode v2, open Google’s Tag Assistant in a fresh session and read its Consent tab: ad_storage, analytics_storage, ad_user_data and ad_personalization should start as denied where you ask for consent, then turn granted when you accept the banner. Then check Google’s requests carry the matching gcs value, and the conversion action’s Diagnostics tab in Google Ads.
Google’s consent mode overview (last updated 30 July 2026, checked 25 September 2026) describes the four consent types:
| Consent type | What it controls |
|---|---|
ad_storage |
Storage, such as cookies, for advertising |
analytics_storage |
Storage, such as cookies, for analytics, for example visit duration |
ad_user_data |
Sending user data to Google for online advertising |
ad_personalization |
Personalised advertising |
Consent Mode doesn’t collect consent. Your banner does, then tells Google’s tags with a default command on page load and an update when the visitor chooses. You’re checking that handover.
What should a working set-up look like?
It depends on the mode. In basic mode, Google’s tags send nothing until the visitor accepts. In advanced mode, they load straight away and send cookieless requests carrying the denied state until the visitor accepts (consent mode overview; cookie names from Google’s cookie list).
| Moment | Tag Assistant’s Consent tab | Basic consent mode | Advanced consent mode |
|---|---|---|---|
| Page loads, no choice yet | On-page Default shows all four denied, where you ask for consent | No Google requests, not even the consent state | Requests carry the denied state; no Google cookies such as _ga or _gcl_au |
| Visitor accepts | On-page Update shows them granted | Google’s tags load, send requests and set cookies | Requests carry the granted state; Google’s cookies appear |
| Visitor declines | On-page Update shows them denied, or no update and the default stands | Still nothing sent | Cookieless requests continue with the denied state |
How do you check it in Tag Assistant?
Tag Assistant is the only tool here that shows Consent Mode’s default and update commands themselves. Follow Google’s steps in Troubleshoot consent mode with Tag Assistant.
- Clear the site’s cookies: in DevTools, open Application → Storage → Cookies, select the site and click Clear all (cookies reference). If the banner doesn’t come back, use a Chrome profile that has never visited the site.
- Go to Tag Assistant and click Add domain (Tag Assistant help).
- Enter the page’s address and click Connect. Your site opens in a new window or tab; Could not connect may mean your Google tag waits for consent.
- On the site, open the cookie banner and accept everything. Tag Assistant should now connect.
- In Tag Assistant’s Summary, select the earliest Consent event.
- In the Output of your tag section, open the Consent tab and read the On-page Default column. Where you ask for consent, all four types should be denied.
- Select the most recent Consent event and read the On-page Update column. All four should be granted.
- Start a fresh session and repeat with a decline. The update should leave all four denied.
An empty Consent tab means consent mode isn’t implemented on that page, Google says. The Tags tab shows which tags fired or were blocked by consent.
Order matters. Google says to set the default “before any tags or other code uses or updates consent”, ahead of any config or event command. A default set late, or asynchronously, can miss the tags that ran first, and Tag Assistant reports an error.
Three optional settings in Google’s set-up guide change what you see:
| Setting | What it does | What it changes in your check |
|---|---|---|
wait_for_update |
Holds tags for set milliseconds so the banner can update | Too short, and the first requests carry the default |
region |
Sets defaults per region, by ISO 3166-2 code | Repeat the steps with a simulated location in Chrome, as Google suggests |
url_passthrough |
Passes ad-click, client and session IDs in addresses while cookies are denied | Links may gain parameters such as _gl or gclid |
How do you check it in Google Ads?
In Google Ads, check Consent Mode in the conversion action’s Diagnostics tab, which shows whether Google Ads sees Consent Mode and whether modelling runs (Verify consent mode implementation).
- In Google Ads, click the Goals icon.
- Click the Conversions drop-down in the section menu.
- Click Summary.
- In the conversion actions table, click a website conversion action.
- Click the Diagnostics tab.
You should see Consent mode is implemented, or Consent mode is implemented and modeling is active once modelling runs. The status can take 48 hours to appear, and up to 2 weeks in some cases. Modelling needs 700 ad clicks over 7 days for a domain and country grouping.
Google’s Tag Diagnostics can also raise consent notices. Two point to a set-up fault: Some pages missing consent for EEA users and Consent mode installation out of order.
Note: GA4’s DebugView won’t confirm a declined session: Google says events don’t appear there when consent mode is in place and the visitor hasn’t consented to analytics cookies (DebugView).
How do you check the requests themselves?
Open Chrome’s Network panel and read the gcs and gcd parameters on Google’s requests. Google documents what they carry, not their exact format, so use them to spot changes and Tag Assistant to read the four types.
- Open DevTools, choose Network and tick Preserve log (Network reference).
- Clear the site’s cookies and reload.
- Type
gcsin the Filter box. GA4’s requests go to an address ending in/g/collect. - Click a request and open Payload.
gcsandgcdare under Query String Parameters. - Accept the banner and compare the new requests.
gcsshould now read granted.
Google’s overview says gcs carries ad_storage and analytics_storage, while gcd, sent even without consent mode, encodes the choice in more detail. gcs is widely read as G1 plus a digit for each of those two (1 granted, 0 denied): G100 both denied, G111 both granted. Google doesn’t publish that layout. On 25 September 2026, GA4 requests we checked on two public sites, before any banner click, carried gcs=G100 and 12-character gcd values such as 13p3p3p2p5l1; Google publishes no key to those letters. If gcs never appears, check Tag Assistant’s Consent tab. If Google’s requests are missing even after you accept, tell whether an ad blocker or CSP is blocking a tag.
Which tags run before a visitor chooses?
Check before you touch the banner. Consent Mode changes how Google’s tags behave; it doesn’t hold back Meta’s, TikTok’s or other vendors’ tags, so your banner, your tag manager or your platform has to.
- Start as a new visitor, as in the Tag Assistant steps.
- In Network, with Preserve log on, reload and leave the banner unanswered.
- Look for requests to ad and analytics vendors. Google’s cookieless requests are expected in advanced mode.
- Open Application → Storage → Cookies and note which cookies exist.
- Accept the banner and compare. Whatever appeared in steps 3 and 4 didn’t wait for the visitor.
Raise what you find with your banner provider or developer. In Tag Manager, a tag without built-in consent checks can wait through Advanced → Consent Settings, Google says. To read each vendor’s requests, check whether a pixel is working. Whether a tag may run before consent where you sell is a legal question, not a tooling one.
How do you check it on Shopify?
Check Shopify’s customer privacy settings, then compare what Shopify records with what Google’s requests carry. Shopify says those settings must be configured correctly for consent to reach Google; a third-party banner must be integrated with them, and a custom pixel needs a code snippet added by hand (customer privacy settings).
To see what Shopify records, use its Customer Privacy API in the storefront’s console:
- Open the store as a new visitor, from a region where you ask for consent, and leave the banner alone.
- Run
window.Shopify.customerPrivacy.currentVisitorConsent(). Each purpose should be an empty string, meaning undecided. - Accept the banner and run it again. The purposes you accepted should read
yes. - Run
window.Shopify.customerPrivacy.analyticsProcessingAllowed(). It should now returntrue; before consent, where consent is required, it returnsfalse.marketingAllowed()does the same for marketing. - Compare with
gcson Google’s next request, as in the Network steps.
window.Shopify.customerPrivacy.currentVisitorConsent()
// e.g. { marketing: "yes", analytics: "no", preferences: "yes", sale_of_data: "" }
The …Allowed() methods also weigh where the visitor is and how the store is set up, which currentVisitorConsent() leaves out. If window.Shopify.customerPrivacy is undefined, the API hasn’t loaded; Shopify documents window.Shopify.loadFeatures for that.
If Shopify and Google disagree, or Shopify shows yes before anyone clicked, the handover is broken. In a Shopify developer-forum thread (September 2025 to January 2026), an agency reported the Google & YouTube app’s pixel setting Google’s default to granted on stores set to require consent. On one store it stopped by itself; on the other, Shopify staff traced it in January 2026 to the store’s banner recording consent on page load, which the pixel passed on. Both times the fault showed in the console and in Google’s requests, not on the settings page. A Shopify Community thread on setting it up, started in December 2023, had 3,423 views on 25 September 2026.
Shopify’s Pixel Helper shows the other side: a pixel held for consent reads Pixel is awaiting consent. More in why a pixel waits for consent.
How do you see consent signals from several platforms at once?
If you run only Google’s tags, Tag Assistant and Google Ads are enough. To compare the consent flags on Google’s, Meta’s, Microsoft’s and TikTok’s requests, an extension helps.
All Pixel Helper, which we build, is a free Chrome extension with a Consent tab that decodes gcs from Google’s requests and shows the raw gcd, shows the Limited Data Use flag on Meta’s requests and the consent flags on Microsoft UET and TikTok requests, and names the consent platform it finds on the page with the banner state that platform reports. It reads the requests this tab sends, not the gtag('consent', …) commands, so a default set before Google’s first request doesn’t show, and it misses Google requests sent to a first-party or server-side tagging domain. It doesn’t read ad_user_data and ad_personalization from the 12-character gcd strings Google sends today, so check those two in Tag Assistant. Its region label follows your time zone, or a location your consent platform reports, not your visitors’. In its own words, it is “For technical diagnostics and QA verification only.” The extension itself sends nothing anywhere, but it adds an empty dataLayer to pages that have none.
Why do conversions drop after you switch it on?
Because visitors who decline stop being measured the usual way. Basic mode sends Google nothing for them; advanced mode sends cookieless pings, and Google Ads models conversions only past its click threshold. Shopify notes that a banner reduces recorded sessions and the metrics built on them, such as conversion rates.
A drop right after launch is expected, not a fault. Check it comes from regions where you ask for consent, comparing whole weeks. On Shopify, declined consent is also why platforms report fewer purchases than orders: are shoppers declining tracking? covers Meta, and what makes GA4 miss purchases covers GA4. A decline is a gap to accept, not one to work around.
Frequently asked questions
What’s the difference between basic and advanced consent mode?
What Google’s tags send before the visitor agrees. Basic mode sends nothing, “not even the default consent status”. Advanced mode sends the consent state and cookieless pings that can include a timestamp, the user agent, the referrer, whether the address carried ad-click information and a random number per page load. Google says advanced mode gets an advertiser-specific conversion model instead of a general one (consent mode overview).
Does Consent Mode affect Meta or TikTok pixels?
No. It adjusts Google’s tags only. Other vendors’ tags need your banner, tag manager or platform to hold them back.
Do I need Consent Mode v2 outside Europe?
Where you must ask for consent is a question for legal advice. Shopify says event data from customers in places such as the EEA “won’t be used for personalized advertising unless Google Consent Mode v2 is activated”, and valid consent obtained (Shopify). Google recommends scoping defaults, with region, to where you show a banner.