EU user consent policy

Tag an ad request for EEA users under the age of consent (TFUA)

You can mark your ad requests to receive treatment for users in the European Economic Area (EEA) under the age of consent. This feature is designed to help facilitate compliance with the General Data Protection Regulation (GDPR). Note that you may have other legal obligations under GDPR. Please review the European Union’s guidance and consult with your own legal counsel. Please remember that Google's tools are designed to facilitate compliance and do not relieve any particular publisher of its obligations under the law. Learn more about how the GDPR affects publishers

When using this feature, a TFUA (Tag For Users under the Age of Consent in Europe) parameter will be included in the ad request. This parameter disables personalized advertising, including remarketing, for that specific ad request. It also disables requests to third-party ad vendors, such as ad measurement pixels and third-party ad servers. The parameter does not affect your use of Google key-values. Consequently, you must ensure that your use of key-values is compliant with GDPR. 

Including the TFUA parameter in an ad request takes precedence over any applicable site-level settings.

If you're using Google's advertising services and would like to request child-directed treatment per COPPA at the site, subdomain, or app level, rather than per ad request, see Tag a site or app for child-directed treatment. Learn more about TFCD and COPPA

JavaScript tags

If your page uses the asynchronous ad code (adsbygoogle.js) to request ads from AdSense (AFC), request ads suited for users under the age of consent per GDPR by including the parameter data-tag-for-under-age-of-consent="1" in every tag.  For example:

<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js">
</script>
<ins class="adsbygoogle"
    style="display:inline-block;width:728px;height:90px"
    data-ad-client="ca-pub-0123456789abcdef"
    data-ad-slot="0123456789"
    data-tag-for-under-age-of-consent="1"></ins>
<script>
(adsbygoogle = window.adsbygoogle || []).push({});
</script>

If you use the older synchronous ad tag (show_ads.js), then set the variable google_tag_for_under_age_of_consent=1 in every ad tag.  For example:

<script>
google_ad_client = "ca-pub-0123456789abcdef";
google_ad_slot = "0123456789";
google_ad_width = 125;
google_ad_height = 125;
google_tag_for_under_age_of_consent = 1;
</script>
<script src="https://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>

<amp-ad> tags

<amp-ad type="adsense"> support marking requests for under-the-age-of-consent treatment via the amp-consent component. That component allows the publisher to specify checkConsentHref, an endpoint that is queried before requests are sent from any component on the page that specifies the attribute data-block-on-consent. Read more about amp-consent and the format of ConsentHref responses

If the publisher’s ConsentHref endpoint returns the keys "tfua" or "tfcd", subsequent AdSense requests will be marked for under-the-age-of-consent or child-directed treatment, respectively. For example, consider an AMP page with a consent component and an ad:

<amp-consent layout="nodisplay" id="consent-element">
<script type="application/json">
{
  "consents": {
    "my-consent": {
      "checkConsentHref": "https://publisher.com/api/check-consent",
      "promptUI": "consent-ui"
    }
  }
}
</script>
</amp-consent>
  
<amp-ad data-block-on-consent
    width=320 height=50
    type="adsense"
    data-slot="/4119129/mobile_ad_banner" 
    json='{"targeting":{"sport":["rugby","cricket"]},
      "categoryExclusions":["health"]}'>
</amp-ad>

The following response from the publisher’s ConsentHref (https://publisher.com/api/check-consent) would enable under-the-age-of-consent-treatment for the AdSense ad request:

{
  "promptIfUnknown": false,
  "sharedData": {
    "adsense-tfua": 1,
    "adsense-tfcd": 0
  }
}

TFUA and TFCD can also be set statically on <amp-ad> tags using the targeting JSON object as follows, for example:

<amp-ad data-block-on-consent
    width=320 height=50
    type="adsense"
    data-slot="/4119129/mobile_ad_banner"
    json='{"targeting":{"sport":["rugby","cricket"]},
      "categoryExclusions":["health"],
      "tagForChildDirectedTreatment":1,
      "tagForUnderAgeTreatment":1}'>
</amp-ad>

Finally, to help you fully comply with the GDPR requirements, note that data-block-on-consent can also be set for other AMP components that make requests to third parties, such as amp-analytics and amp-pixel.

Was this article helpful?
How can we improve it?