Home / Free tools

Free tool

Consent Mode decoder

Paste a gcs or gcd value — or a whole GA4 or Google Ads request URL — and read the four Consent Mode v2 signals, how each one was set, and what looks wrong.

Examples:

Also free: GTM container viewer — any container’s tags, by ID.

How to read gcs

gcs is G1 followed by one character for ad_storage and one for analytics_storage: 1 granted, 0 denied. It says what the tag knew at the moment the request left.

gcsad_storageanalytics_storage
G100denieddenied
G110granteddenied
G101deniedgranted
G111grantedgranted

How to read gcd

gcd looks like 11r1r1r1r5: a two-digit start, then one letter each for ad_storage, analytics_storage, ad_user_data and ad_personalization, separated by digits, and a closing digit. The separators and the ends vary; the four letters are what carry the meaning, and each says both the state and how it was reached.

LetterStateHow it was set
lnot setNo Consent Mode signal for this type
pdeniedDenied by default, never updated
qdeniedDenied by default, denied again on update
mdeniedDenied on update, with no default before it
udeniedGranted by default, denied on update
tgrantedGranted by default, never updated
rgrantedDenied by default, granted on update
ngrantedGranted on update, with no default before it
vgrantedGranted by default and on update

Google does not formally document gcd. This reading is the one published by Simo Ahava and used since; the Tag Master extension reads it the same way on every hit it captures, and treats a letter it does not know as unknown rather than guessing.

What the decoder flags

To see which vendors kept sending after consent was denied — the part Consent Mode itself does not cover — read Debugging Consent Mode V2.

Questions

What is the gcs parameter?

gcs travels on Google requests and gives the state of ad_storage and analytics_storage at the moment of the hit: G1 followed by one digit for each, 1 for granted and 0 for denied. G100 is both denied, G111 both granted.

What is the gcd parameter?

gcd carries all four Consent Mode v2 signals — ad_storage, analytics_storage, ad_user_data and ad_personalization — as letters, and each letter also says how the state came about: from the default, from an update, or both.

Is gcd documented by Google?

Not formally. The reading used here is the one published by Simo Ahava and widely used since; the Tag Master extension reads it the same way and treats letters it does not recognise as unknown rather than guessing.

Where do I find gcs and gcd?

In the request itself: open DevTools, Network, filter on collect, and read the query string of a GA4 or Google Ads request. Or paste the whole request URL here — the decoder pulls both out.

Does this page send what I paste anywhere?

No. It is read in your browser. The page address keeps only the gcs and gcd values, so a shared link never carries the rest of a request URL.

Try it on your own site

Tag Master is free, needs no account, and collects no data.

Add to Chrome — Free