Borlabs Cookie: Google Tag Manager Events richtig tracken

16. 12. 2019
|
Analytics
|

Um Google Analytics datenschutzkonform auf der eigenen Website zu nutzen, ist nach aktuellem Stand wohl eine Einwilligung des Nutzers (Opt-In) erforderlich. Erst wenn dieser sein Opt-In gegeben hat, dürfen Daten gesendet und Cookies gesetzt werden. Ein gängiges Plug-In, um das auf WordPress basierten Websites umzusetzen ist das „Borlabs Cookie“ Plugin.*

 

Eine Möglichkeit, um Google Analytics auf der eigenen Seite einzubinden, ist der Google Tag Manager. Besonders wer mehr tracken will als den reinen Seitenaufruf, wird früher oder später auf diese Lösung stoßen, weil sich auch kompliziertere Tracking Setups deutlich einfach umsetzen lassen.

Das Google Analytics Setup via Tag Manager wird auch vom Borlabs Cookie Plugin unterstützt. In der offiziellen Borlabs Dokumentation gibt es dazu eine Anleitung, wie man das Borlabs Cookie Plugin für den Google Tag Manager aufsetzt.

Im Grunde wird dabei der „leere“ Google Tag Manager immer geladen. Die Einbindung über Borlabs als essentiell bzw. technisch notwendiges Cookie sorgt dann dafür, dass er auch in den Datenschutzeinstellungen unter dieser Cookie Gruppe auftaucht.

Um über den Tag Manager Google Analytics zu laden, wird dann einfach eine benutzerdefinierte Variable in den Data Layer gepusht, die schließlich im Google Tag Manager anstatt dem herkömmlichen Page View als Trigger genutzt wird, um den Seitenaufruf an Google Analytics zu schicken.

Events auch nur nach Opt-In senden

Wer aber eben nicht nur den Seitenaufruf trackt, sondern über den Tag Manager etwa auch Events, wie Klicks auf Telefonnummern und Email-Adressen, abgeschickte Kontaktformulare oder Newsletteranmeldungen schickt, wird schnell merken, dass dieses Basic Setup für eine DSGVO datenschutzkonformes Tracking nicht ausreicht.

Denn wer lediglich der Borlabs Doku folgt, aber Events weiterhin „ganz normal“ triggert, wird sehen, dass diese auch in Analytics auftauchen, wenn der User das Tracking abgelehnt hat.

Normaler Event Trigger

Denn auch bevor man Events per Tag an Google Analytics schickt muss eben abgefragt werden, ob ins Tracking eingewilligt wurde. Zum Glück ist diese Information ja schon im Data Layer hinterlegt. Daher muss in den Borlabs Settings gar nichts geändert werden. Alle nötigen Änderungen kann man im Tag Manager durchführen.

 

Trigger-Gruppen nutzen

Am einfachsten funktioniert das, indem man die „normalen“ Trigger ganz einfach mit dem Benutzerdefinierten Ereignis Trigger, das wir für den normalen Page View nutzen, in eine Trigger-Gruppe packt.

Dazu einfach im Tag Manager im Reiter „Trigger“ einen neuen Trigger erstellen und als Trigger Typ ganz unten unter “Sonstiges“ die „Trigger-Gruppe“ auswählen.

Dann kombiniert man einfach immer das Benutzerdefinierte Ereignis, das zuvor für den Page View erstellt wurde mit dem jeweiligen Event Trigger:

Trigger Group: Borlabs Custom Event Trigger + „normaler“ Trigger

Anschließend wird dem jeweiligen Event Tag statt dem einzelnen Trigger die Trigger-Gruppe zugewiesen. Natürlich für jedes Tag, das Daten an Google Analytics überträgt:

Bevor Tags an Google Analytics geschickt werden, wird geprüft, ob der User eingewilligt hat.

Durch dieses Setup wird das Tag nur abgefeuert, wenn SOWOHL die Einwilligung des Users – hinterlegt durch das Datenschicht Event – vorliegt, ALS AUCH der „normale“ Trigger greift.

Update: checkCookieConsent statt Trigger Groups

Das Nutzen von Trigger Groups bringt aber einige Probleme mit sich. Das Hauptproblem: Eine Trigger Group kann nur 1x pro Seitenaufruf gefeuert werden. Für mache Event-Typen ist das unproblematisch, für andere funktioniert die Lösung aber schlichtweg nicht. Etwa ein Scroll-Depth-Trigger, der ja mehrfach pro Seite feuern muss.

Die elegantere Lösung ist daher statt einer Trigger Group, eine zusätzliche Bedingung für den konkreten Trigger zu nutzen.

Statt die „generelle“ Einwilligung im DataLayer abzufragen, nutzen wir dazu die Borlabs JavaScript API, um zu prüfen, ob der Besucher für das übergebene Cookie seine Einwilligung erteilt hat.


function(){
return window.BorlabsCookie.checkCookieConsent('google-analytics');
}

Als erstes erstellen wir eine neue Custom JavaScript Variable. In dieser packen wir ein kleines Snippet, um die Einwilligung für Google Analytics abzufragen.

JavaScript Variable nutzt checkCookieConsent um Einwilligung abzufragen

Genau diese Variable nutzen wir nun im Trigger als Bedingung, die erfüllt sein muss, damit der Trigger feuert. Per Borlabs JavaScript API können wir dabei die Einwilligung sowohl für einzelne Cookies via checkCookieConsent abfragen, als auch für ganze Cookie Gruppen via checkCookieGroupConsent.

Der Trigger für Klicks auf Email Links löst nur dann aus, wenn auch unsere Variable „true“ ist.

Disclaimer: Achtung! Für detaillierte und rechtsichere Informationen zum Thema DSGVO, ePrivacy oder zu allgemeinen datenschutzrechtlichen Fragen sollten Sie einen fachkundigen Rechtsanwalt für Datenschutz aufsuchen. Wir übernehmen keinerlei Haftung für eventuell resultierende Schäden aus der Nutzung bzw. Nichtnutzung der Informationen dieses Blogs. Die mit * gekennzeichneten Links sind Affiliate Links.