Google Tag Manager: Consent Mode Debugging

Das Debuggen des Consent-Modus im Google Tag Manager ist manchmal eine kleine Herausforderung. In diesem Artikel zeige ich dir, wie du auch ohne ConsoleLog Debugging an die Informationen kommst.

Hey, bist du auch vom Consent Mode im Google Tag Manager fasziniert? Diese Funktion ist super praktisch, um Datenschutzrichtlinien einzuhalten und umzusetzen, ohne viele Trigger-Gruppen erstellen zu müssen.

Ein Problem habe ich allerdings schon öfter gehabt: Was mache ich, wenn ein Tag nicht funktioniert/feuert? In der Vorschau des Google Tag Managers ist es manchmal schwierig herauszufinden, woran es gelegen hat, vor allem wenn alle Bedingungen eines Triggers erfüllt waren.

Meine Lösung? Ein kleines JavaScript, das ich als benutzerdefinierte JavaScript-Variable im Tag Manager abgelegt habe. Dieser Code liest bei jedem Update den aktuellen Status aller Consents aus und zeigt sie übersichtlich in alphabetischer Reihenfolge im Klartext an.

So legst du die Variable zum Debuggen des Consent Modes im Tag Manager an:

  1. Neue benutzerdefinierte JavaScript-Variable im Tag Manager anlegen: Klicke im Google Tag Manager im linken Menü auf „Variablen“. Wähle als Variablentyp „Benutzerdefiniertes JavaScript“.

  2. Benennung der Variable: Der Google Tag Manager sortiert standardmäßig die Variablen in der Vorschau. Um deine Debug-Variable immer an erster Stelle zu sehen, stelle einen „.“ vor den Variablennamen, z.B. „.GTM Consent Status“.

  3. Der Code zum Debuggen des Consent Modes: Den Code für die Variable findest du hier.

function() {
  // Initialize a string to hold the current consent status
  var currentConsent = "\n"; 

  // Access the 'dataLayer' object of the current window, if it exists
  var dl = window.dataLayer; 

  if(dl){ // Check if the dataLayer exists
    // Iterate backward through the dataLayer array
    for (var i = dl.length - 1; i >= 0; i--) { 
      // Check if the current element is a 'consent' object
      if (dl[i]["0"] === "consent") { 
        // Store the consent object for further processing
        consentObject = dl[i]; 

        // Get and sort the keys of the consent details
        var sortedKeys = Object.keys(consentObject["2"]).sort(); 
        for (var j = 0; j < sortedKeys.length; j++) { // Iterate over the sorted keys
          var key = sortedKeys[j]; // Current key in the consent object

          // Append the key and its value to the currentConsent string
          currentConsent += key + ": " + consentObject["2"][key] + "\n"; 
        }
        // Return the compiled string of consent information
        return currentConsent; 
      }
    }
  }
  // Return null if no consent information is found in the dataLayer
  return null; 
}
Erstellen der benutzerdefinierten Variable im Google Tag Manager zur Auswertung des Consent-Modus.
Erstellung der benutzerdefinierten Variablen im Google Tag Manager zur Auswertung des Consent-Modus. Der Code ist mein minified Code (siehe Beschreibung anbei).

Alternativ kannst du auch die Minified-Version verwenden. Diese findest du in meinem GitHub-Repository.

Verwendung der Variable zum Debuggen des Google Tag Manager Consent Modes:

Um den Status der Variablen auszulesen, starte einfach den Google Tag Manager in der Vorschau auf der jeweiligen Seite. Sobald sich die Vorschau erfolgreich mit der Seite verbunden hat, klicke auf ein Event auf der linken Seite. Danach kannst du unter „Variablen“ in der obersten Zeile den aktuellen Consent Mode des Tag Manager Containers auslesen bzw. debuggen.

Debug Google Tag Manager Consent Mode.
Mit einer benutzerdefinierten JavaScript-Variable im Google Tag Manager kann der aktuelle Consent Mode visualisiert werden. Das Skript dazu findet sich hier im Beitrag.

Update zum debuggen des Consent Modes:

Mittlerweile kann der Consent Mode direkt im Tag Manager ausgelesen werden. Hierfür gehst du nicht in den Tab „Variablen“, sondern in den Tab „Consent“.

Google Tag Manager Consent Mode.
Im Tab "Consent" wird der aktuelle Consent-Modus des Google Tag Managers angezeigt.

Weitere Informationen findest du auch hierzu in der offiziellen Dokumentation von Google.

Quellenverzeichnis

Wir verwenden nur Cookies, die für den Betrieb unserer Website erforderlich sind. Yeahy!