Chapter navigation
Google Additional Consent (addtl_consent)
consentRole & classification
Google Additional Consent's addtl_consent (AC) string travels in the TCData returned by __tcfapi and is not a Global Privacy Platform (GPP) section. It works only alongside Interactive Advertising Bureau (IAB) Europe's Transparency & Consent Framework (TCF) v2, may only be created by a registered Consent Management Platform (CMP), and conveys transparency/consent to vendors not on the Global Vendor List (GVL) but on Google's Ad Tech Provider (ATP) list; whether it sunsets must come from Google's own documentation — this site asserts nothing.
- Carriage
- addtl_consent · IABTCF_AddtlConsent
- GPP section
- AC string (TCF v2 supplement)
String & field layout
| Part | Content |
|---|---|
| 1 | a specification version number (e.g. 2) |
| 2 | the separator ~ |
| 3 | a dot-separated list of consented Google ATP IDs (e.g. 1.35.41.101) |
| 4 | the separator ~ |
| 5 | 'dv.' + a dot-separated list of disclosed ATP IDs (e.g. dv.9.21.81); vendors already in Part 3 are omitted to shorten the string |
2~1.35.41.101~dv.9.21.81the user consented to ATPs 1/35/41/101, ATPs 9/21/81 were disclosed to the user, and the string was created per the v2 spec format.
Carriage & access
| CMP API | TCData.addtlConsent / InAppTCData.addtlConsent (extension fields of the TCF v2.2 CMP JS API) |
| Storage (in-app) | NSUserDefaults(iOS) / SharedPreferences(Android), key IABTCF_AddtlConsent; web storage is the CMP's choice |
| Bid request | the OpenRTB extension ConsentedProvidersSettings.consented_providers (repeated int64) propagates non-GVL vendors downstream |
| URL macro | param addtl_consent, macro ${ADDTL_CONSENT} (for pixel img tags that cannot run JS) |
The AC string supplements, never replaces, the TC string: it works only alongside IAB Europe TCF v2 to convey transparency/consent to vendors not registered on the Global Vendor List (GVL) but listed on Google's Ad Tech Provider (ATP) list. If the same request has no TC string, Google does not process it and discards the AC string. An AC string may only be created by an IAB Europe TCF-registered CMP using its CMP ID; vendors or third parties must not create it themselves. On receiving a TC string Google checks the GVL version and removes duplicate AC entries for already-registered vendors.
Version deltas
v1 (1~) carries only the consented ATP list; v2 (2~, supported by Google since 2023-12) adds disclosed vendors (the dv. part) and updates the CMP API for TCF / Additional-Consent interoperability. v1 strings remain supported but cannot indicate whether transparency was established for an ATP; use cases not requiring consent should migrate to v2.
Invalid forms
- An AC string containing a GVL-registered vendor ID (Google ignores its TC controls and may remove such duplicate entries)
- Sending an AC string with no TC string (Google discards the AC string)
- An AC string created or modified by a non-registered CMP or a vendor itself (only Google may remove duplicate entries)