Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Consent Mode in essence is a mechanism that allows third party scripts to pass consent data to Google Tag Manager using the Global site tag (gtag) API.
This data can be used to conditionally load tags, or modify their behavior.

  • Consent Mode is not a Google service or product, it’s more like a consent API.

  • Consent Mode makes use of the dataLayer and only works with Google Tag Manager (or gtag).

  • Consent Mode is part of the larger Global site tag (gtag) API.

  • The Usercentrics CMP template tag registers default consent settings, so the consent mode script doesn’t need to be used. (No default consent on the page)

  • If you don’t implement Usercentrics CMP via the template tag in Google Tag Manager,  you’ll need to add a script to your page to enable it.

  • The Usercentrics script sends updated consent data when these are determined.

Let’s have a look at it

Code Block
<script type="text/javascript">
// create dataLayer
    window.dataLayer = window.dataLayer || [];
    
//Create the gtag API, so you don’t have to write dataLayer.push() and can use gtag() instead.   
    function gtag() {
        dataLayer.push(arguments); 
    }

//Use the gtag method to pass default consent settings to Google Tag Manager.
    gtag("consent", "default", {
        ad_user_data: "denied",
        ad_personalization: "denied",
        ad_storage: "denied",
        analytics_storage: "denied",
        wait_for_update: 2000 // milliseconds to wait for update
    });

// This allows the data that normally would be stored in a cookie to be appended to the URL instead.
    gtag("set", "ads_data_redaction", true);
</script>

//The last part is the Google Tag Manager script. If you want to use Consent Mode as alternative to prior blocking the type of the script tag is "text/javascript".
<script type="text/javascript">
(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
})(window, document, 'script', 'dataLayer', 'GTM-XXXXX'); //replace GTM-XXXXXX with Google Tag Manager ID
</script>

How Usercentrics Google Consent Mode - consent types works..