Auslösen eines dataLayer Events, wenn der Nutzer Cookies mit Cookiebot akzeptiert

Es ist undokumentiert, deshalb musste ich diesen Artikel schreiben. So löst man ein dataLayer Event aus, wenn der Nutzer Cookies mit Cookiebot akzeptiert.

Justus

Justus

owntag Gründer

veröffentlicht am 09. Februar 2023

Cookiebot ist einer der beliebtesten Cookie-Consent-Manager.
Er macht seinen Job im Allgemeinen gut, aber es fehlt ihm stark an Integration, wenn er zusammen mit dem Google Tag Manager verwendet wird, was ich angesichts der Tatsache, dass GTM bei weitem das beliebteste Tag-Management-System ist, für einen erheblichen Mangel halte.

Obwohl Cookiebot eine nette JavaScript API hat, bietet es kein eingebautes Ereignis, das wirklich nur dann ausgelöst wird, wenn der Nutzer aktiv auf die Schaltfläche “Alle Cookies erlauben” oder “Auswahl erlauben” geklickt hat.

Das von Cookiebot betriebene Cookie-Banner auf polaroid.com mit den Schaltflächen 'Auswahl erlauben' und 'Alle Cookies erlauben', die mit einem roten Rahmen hervorgehoben sind. Über dem Rahmen befindet sich roter Text: 'Wir möchten nur ein dataLayer Event, wenn diese tatsächlich geklickt werden'

Das CookiebotOnAccept-Ereignis und die CookiebotCallback_OnAccept-Callback-Funktion klingen zwar so, als würden sie das tun, aber sie werden auch ausgelöst, wenn ein bereits zugestimmter Nutzer die Seite lädt, was nicht meinem speziellen Anwendungsfall entspricht.

Hier ist also, wie man ein dataLayer Event auslöst, wenn der Nutzer Cookies mit Cookiebot akzeptiert:

<script>
;(function(){
    window.addEventListener("CookiebotOnAccept", function (e) {
        if (window.Cookiebot.changed) {
            window.dataLayer = window.dataLayer || [];
            window.dataLayer.push({
                event: "cookiebot_accept"
            });
        }
    });
})();
</script>

Dies wird ein cookiebot_accept-Event im dataLayer auslösen, wenn der Nutzer

  • neu allen Cookies zustimmt
  • neu der “aktuellen Auswahl” mit mindestens einem aktiven Zustimmungsniveau zustimmt

Es wird nicht ausgelöst, wenn der Nutzer

  • bereits einigen oder allen Cookies zugestimmt hat und einfach die Seite lädt
  • neu der “aktuellen Auswahl” mit allen inaktiven Zustimmungsniveaus zustimmt
  • alle Cookies ablehnt oder abgelehnt hat

Verwende dies auf eigenes Risiko, da die window.Cookiebot.changed-Eigenschaft undokumentiert ist und sich jederzeit ändern kann.

Werde zum Server Side Tagging Profi mit owntag

Übernimm die Kontrolle über deine digitale Datenerhebung mit Server Side Tagging und dem Server Side GTM – einfach gehostet mit owntag.

App screenshot