Startseite » Blog » Digital Analytics

07.11.2016

Wer Google Analytics auf seiner Website einsetzt, hat für einen datenschutzkonformen Einsatz einige Hürden zu nehmen: Ein Vertrag muss geschlossen, der Trackingcode zur Anonymisierung der IP-Adressen angepasst und die Datenschutzbestimmungen ergänzt werden. Beim letzten Punkt geht es nicht nur um die Information der Besucher über den Einsatz, sondern auch um die Anforderung, allen Besuchern eine Möglichkeit zum Ausstieg aus dem Tracking zu bieten. Dabei wird i. d. R. auf entsprechende Browser-Plugins hingewiesen, die von Google bereitgestellt werden und die bei Installation das Tracking auf allen in diesem Browser besuchten Websites unterbinden.

Da diese Methode aber darauf angewiesen ist, dass ein Browser eingesetzt wird, für den eine passende Erweiterung verfügbar ist, deckt das leider nicht alle Besucher ab. Exotische Browser sind dabei weniger ein Problem als vielmehr der mobile Traffic, denn in typischen mobilen Browsern kann ein solches Plugin nicht genutzt werden. Besucher mit Smartphones und Tablets können sich daher nicht ohne größeren Aufwand dem Tracking via Google Analytics entziehen.

Opt Out per Cookie

Als Lösung kann man per Cookie jedem Besucher für die eigene Domain eine individuelle Ausstiegsmöglichkeit bieten. Dabei wird bei Klick auf einen Link ein Cookie erzeugt, welches den Wunsch auch für künftige Seitenaufrufe speichert. Diese Lösung erfordert neben dem Erzeugen des Cookies auch, dass vor dem eigentlichen Analytics-Trackingcode der Wert dieses Cookies ausgelesen wird, um im Bedarfsfall für eine Blockierung der Analytics-Trackingaufrufe zu sorgen.

Die Methode basiert auf einer für genau diesen Zweck im Analytics-Trackingscript vorgesehenen "Opt-Out-Hintertür", welche auch schon im alten ga.js-Code zu finden war. Um sie zu nutzen, wird mittels JavaScript eine Eigenschaft des window-Objekts auf "true" gesetzt, welche die jeweilige Property-ID enthält. Für eine Analytics-Property mit der IdUA-12345-67 müsste dazu z. B. window['ga-disable-UA-12345-67'] = true; gesetzt werden.

Update 2019: Als Ergänzung zum Speichern in einem Cookie macht es die Intelligent Tracking Prevention von Safari erforderlich, dass alternative Speichermethoden genutzt werden, wenn die Lösung nicht nach einer Woche seine Funktion verlieren soll! Bitte beachten Sie daher die Hinweise im Updateartikel zum Opt Out per Cookie.

Um diese Methode zu nutzen, muss - idealerweise in den Datenschutzhinweisen unter dem Abschnitt zu Google Analytics, der mit dem Hinweis auf die Plugins endet - auf der Website ein Link angebracht werden, der bei Klick einen Cookie setzt und auch gleich zur Blockierung aller weiterer Hits wie z. B. Events beim Scrollen auf der Seite o. Ä. die o. a. Eigenschaft des window-Objekts setzt. Das kann z. B. so aussehen (UA-12345-67 gegen die eigene Property-Id an beiden Stellen austauschen):

<a href="#" onclick="document.cookie='ga-disable-UA-12345-67=true;expires=Thu, 31 Dec 2099 23:59:59 UTC;path=/';window['ga-disable-UA-12345-67']=true;return false">Opt-Out Cookie für diesen Browser und diese Website setzen</a>

Trackingcode anpassen

Wird beim Aufruf einer Seite ein solches Cookie gefunden, muss die window-Eigenschaft gesetzt werden, um alle folgenden Trackinghits zu "entwerten".

Dazu wird der normale Trackingcode um zwei Zeilen direkt am Anfang erweitert. Hier als Beispiel der Trackingcode für Universal Analytics inkl. der erforderlichen Anonymisierung - auch hier ist die Id UA-12345-67 gegen die eigene Id auszutauschen:

<script>
var gaOptOut='ga-disable-UA-12345-67';
if (document.cookie.indexOf(gaOptOut+'=true')>-1) window[gaOptOut]=true;

(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-12345-67', 'auto');
ga('set', 'anonymizeIp', true);
ga('send', 'pageview');
</script>

Auf diese Weise wird der Analytics-Trackingcode zwar "ausgespielt", es werden aber keine Hits mehr an den Analytics-Server übertragen. Als Vorlage zur Anpassung eigener Seiten finden Sie hier eine einfache Beispielseite mit Analytics Opt-Out nach genau diesem Muster.

Was tun bei Einsatz des Google Tag Managers?

Ist der Tag Manager statt eines direkt in die Seite implementierten Analytics-Trackingcodes im Einsatz, muss natürlich auch dort der Wunsch des Websitebesuchers berücksichtigt werden.

Blockierenden Trigger anlegen

Dazu kann ein blockierender Trigger eingesetzt werden, der als Bedingung den Wert "true" aus dem o. a. Cookie ausliest. Um auf den Wert zugreifen zu können, wird er (als "First Party Cookie") aus dem Cookie ausgelesen und als Variable im GTM bereitgestellt.

Out-Out-Cookie im GTM auslesen

Dieses Beispiel geht davon aus, dass im GTM eine Variable vom Typ "Konstante" (nicht lachen bitte) existiert, in der die Id der Analytics-Property enthalten ist und die via {{gaPropertyId}} im Tag eingelesen werden kann. Theoretisch ist es natürlich auch möglich hier direkt die Id einzutragen.

Abhängig vom Wert, der nun in dieser neuen Variable (im abgebildeten Beispiel gsOptOutCookie) ausgelesen werden kann, wird nun ein Trigger definiert, der als "Benutzerdefiniertes Ereignis" angelegt wird und dann "feuert", wenn der Wert "true" im Cookie gefunden wurde.

Trigger zum Blockieren des Trackings im GTM

Option 1: Analytics-Tags anpassen

Die übliche Methode erfordert nun allerdings, dass alle vorhandenen - und auch alle künftig hinzugefügten - Analytics-Tags mit diesem blockierenden Trigger versehen werden müssen.

Trigger zum Blockieren des Trackings im GTM bei allen Analytics Tag nutzen

Das bedeutet nicht nur viel Arbeit bei einer tiefen Implementierung mit vielen Tags, sondern auch Disziplin bei Pflege und Erweiterung des GTM-Containers. Wo mehrere Benutzer für das Tag Management verantwortlich sind, können so schnell Lücken entstehen, die dann doch wieder zum Tracking trotz gesetztem Cookie führen können.

Option 2: "One Tag To Rule Them All"

Daher empfiehlt sich überall, wo mehr als ein Analytics-Tag im Einsatz ist und / oder mehrere Personen im Spiel sind, auf eine andere Lösung zurückzugreifen. Hierbei wird nur ein weiteres Tag genutzt, welches nach dem gleichen Verfahren wie die Anpassung des Trackingcodes vorgeht und die window-Eigenschaft nutzt, um das Tracking zu verhindern.

Als Auslöser für das neue Tag muss (genau wie im o. a. Fall des blockierenden Triggers) der Cookie-Wert aus einer Variable eingelesen und ein Trigger erzeugt werden, der diesmal aber nicht zum Blockieren aller Analytics - Tags genutzt, sondern als Auslöser für das neue Tag zum Setzen der window-Eigenschaft eingesetzt wird.

Zum Einsatz kommt ein Benutzerdefiniertes HTML-Tag mit einem sehr überschaubaren Inhalt - auch hier wird wie oben davon ausgegangen, dass die Property-Id als Variable eingelesen werden kann:

window['ga-disable-'+{{gaPropertyId}}] = true;

Damit die Auslösung vor den Analytics-Tags erfolgt und deren Aufrufe bei entsprechendem Cookie blockieren kann, wird die Priorität auf einen hohen Wert gesetzt.

Tag zum Blockieren des Trackings im GTM

Ausgelöst wird dieses Tag nur dann, wenn der Cookie-Wert stimmt - also wird der o. a. Trigger hier eingesetzt.

Block-Trigger als Auslöser des Block-Tags nutzen

Funktionstest

Es ist sinnvoll, bei allen beschriebenen Methoden zu testen, ob die Lösung wie erwartet funktioniert. Dazu kann z. B. der Google Analytics Debugger in Chrome eingesetzt werden. Auch andere Plugins wie der Tag Assistant zeigen zwar, dass der Tracker bei korrektem Einbau keine Antwort erhält und offenbar "falsch implementiert" sei, solange das Cookie vorhanden ist, aber der Debugger erlaubt einen detaillierteren Blick. Ist nach Klick auf den in den Datenschutzhinweisen eingebauten Link ein Opt-Out-Cookie zu finden, sollte man im Debugger beim Versuch des Cookie-Speicherns und dem ersten abgesetzten Hit einen Hinweis wie diesen hier statt der Meldung Sent beacon sehen:

Funktionstest mit dem Analytics Debugger

Damit ist sichergestellt, dass die Blockierung der Aufrufe funktioniert. Ist das nicht der Fall, hilft die Console dabei Fehler zu identifizieren und zu beheben. Oder natürlich eine Mail an uns 😉



Warum mit uns?

Langjährige Erfahrung
im Onlinemarketing:
Suchmaschinen-Marketing
erfolgreich seit 1996

Angebot anfordern

Stolzer Partner ohne Logo
Warum? | Google Partner Profil

Alle Kontenmanager unserer Google AdWords Agentur sind qualifizierte und durch Google zertifizierte AdWords Experten.

Faire Festpreise
jederzeit kündbar
seriöse Optimierung.