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.

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.

7 replies
  1. Avatar
    Jason says:

    Hallo,

    erstmal vielen Dank für das Tutorial.

    Ich versuche es gerade direkt uzusetzen, aber mir ist aufgefallen, dass ich keinen “borlabs Opt-In Trigger für GA” habe.

    Wie genau sieht der Ereignisname aus?

    Reply
  2. Avatar
    Holger says:

    Hi, super Anleitung. Borlabs beschreibt auf der von Euch genannten Seite wie man den Google Tag Manager als essenziellen Cookie einbindet (ihr macht das auch so habe ich gesehen) und erklärt gleichzeitig, dass dies bzgl. der DSGVO nicht empfehlenswert wäre. Wie seht ihr das? Wird das durch Eure Anleitung hier rechtsicher?

    Mir gefallen auch Eure Namenskonventionen gut. Könntest du dazu noch einige Beispiele nennen?

    Reply
    • Daniel Marx
      Daniel Marx says:

      Hallo Holger,

      wir nutzen den Tag Manager in der Weise, wie es auf Borlabs beschrieben wird. Durch diese Anleitung wird die Einbindung des GTM nicht mehr oder weniger rechtssicher, sondern sie erklärt, wie nicht nur der generelle PageView sondern eben auch Events basierend auf der Einwilligung der User übertragen werden.

      Der GTM übernimmt lediglich die Integration & Aktivierung von JavaScript-Code auf der Website, sammelt aber selbst aktiv keine Daten. Dennoch wird im Zuge des Ladens des (leeren) Containers natürlich zwangsläufig die IP-Adresse des Clients übertragen, die eben als personenbezogenes Datum gilt. Daher sollte man in der GTM Verwaltung in den Kontoeinstellung zumindest die Anonymisierung der Daten aktivieren.

      Dazu ob ein leerer GTM Container nun technisch notwendig ist, oder bereits als Tracking gilt, ist eine Frage zu deren Klärung es schlussendlich Gerichtsentscheidungen geben muss.

      Bei den Namekonvertions für Tags & Triggers im GTM versuchen wir so logisch und selbsterklärend zu machen wie möglich. Wichtig ist vor allem, dass sie im Konto durchgehend stringend gehalten werden.

      Reply
  3. Avatar
    Julia says:

    Hallo!

    Vielen herzlichen Dank für den Artikel – ich fand diesen sehr hilfreich. Bei vielen Events stelle ich es mir jedoch etwas mühsam vor, vorerst alle Trigger zu erstellen und aus diesen dann die Triggergruppen.

    Ist es irgendwie möglich, sobald das Datalayer event gesendet wurde eine Variable bspw. borlabsCookieOptInGoogleAnalytics=’true’ zu setzen sodass ich es nicht als Triggergruppe ABER als Bedingung im einzelnen Trigger setzen kann?

    Leider bin ich noch nicht draufgekommen wie,…

    Großen Dank schon einmal für die Hilfe!
    LG

    Reply
  4. Avatar
    Julia says:

    Hey,

    Ich habe nun ein bisschen rumgespielt und bin auf einen weiteren Lösungsweg gekommen:

    Anwendungsfall: hat man mehrere Statistik (Analytics, Hubspot) sowie Ad Systeme (Facebook, Google Ads, etc) im Einsatz müssten nach dem obigen Lösungsweg für diese Cookiegruppen immer zwei triggergruppen erstellt werden. Dh:
    1. Trigger: Custom Event Statistic mit bspw: “borlabsCookieOptInAnalytics”
    2. Trigger: Custom Event Marketing mit bspw: “”borlabsCookieOptInMarketing”
    3. Event: Form Submit
    4. Triggergruppe: 1&&3
    5. Triggergruppe: 2&&3

    Bei mehreren Events kann das ganz schön aufwendig sowie unübersichtlich innerhalb den Trigger werden.

    Meine Idee war folgende:
    – man erstellt für jede Cookiegruppe eine Variable (Custom Script) und ruft folgende Funktion mit den Rückgabewerten true/false auf:

    function(){
    return window.BorlabsCookie.checkCookieGroupConsent(‘cookieGroup’);
    }

    man müsste mit dieser nur noch mehr 2 Trigger zu Form Submit erstellen (1x Statistic, 1x Marketing) und beim Filter eben die jeweilige Variable mit dem Wert ‘true’ als Bedingung setzen.

    Macht das aus eurer Sicht sinn? Ich habe es auf jedenfall getestet und es funktioniert wunderbar.
    Anbei noch zu den Funktionen von borlab: https://de.borlabs.io/kb/javascript-api/#ch_4

    LG Julia

    Reply

Leave a Reply

Want to join the discussion?
Feel free to contribute!

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.