Website-Icon kress.zone

Google Analytics – anonymizeIP() – IP-Adressen kürzen – richtiger Code


Loading...

Google hat für Google Analytics vor kurzem – auf Grund nicht anhaltender Datenschutz-Diskussionen – die Funktion anonymizeIP() eingeführt, damit wird das letzte Oktett jeder IP-Adresse „verworfen“; es werden also keine kompletten IP-Adressen von Website-Besuchern gespeichert.

Allerdings muss jeder Webmaster selbst diese Funktion in seinen Analytics-Code integrieren. In der Google Analytics-API ist die Verwendung der neuen Funktion jedoch sehr schlecht beschrieben, deshalb hier eine kleine Anleitung. Für den alten Analytics-Code (werden wohl die meisten verwenden), ist die Einbindung der neuen Funktion/Option relativ simpel.

Der alte Code sah bisher so aus:

<script type="text/javascript">
var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
</script>
<script type="text/javascript">
var pageTracker = _gat._getTracker("UA-XXXXXX-XX");
pageTracker._initData();
pageTracker._trackPageview();
</script>

Der neue Code mit der IP-Anonymisierung sieht wie folgt aus:

<script type="text/javascript">
var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
</script>
<script type="text/javascript">
var pageTracker = _gat._getTracker("UA-XXXXXX-XX");
_gat._anonymizeIp();
pageTracker._initData();
pageTracker._trackPageview();
</script>

Mittlerweile bietet Google für Analytics allerdings standardmäßig einen anderen Code an, der sich auch empfiehlt einzusetzen, da er asynchron geladen wird.
Der bisherige Code sieht so aus:

&lt;script type=&quot;text/javascript&quot;&gt;
  var _gaq = _gaq || [];
  _gaq.push(['_setAccount', 'UA-XXXXXX-XX']);
  _gaq.push(['_trackPageview']);

  (function() {
    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
  })();
&lt;/script&gt;

Laut Google Analytics API könnte man denken, der Code zur IP-Kürzung sieht so aus – dachte ich auch einige Zeit lang :-)
ACHTUNG FALSCH!!!!!!!!!:

<script type="text/javascript">
var _gaq = _gaq || [];
  _gaq.push(['_setAccount', 'UA-XXXXXX-XX']);
  _gaq.push(['_anonymizeIP']);
  _gaq.push(['_trackPageview']);

  (function() {
    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
  })();
</script>

Der RICHTIGE asynchrone Google Analytics-Code mit IP-Kürzung:

<script type="text/javascript">
  var _gaq = _gaq || [];
  _gaq.push(['_setAccount', 'UA-XXXXXX-XX']);
  _gaq.push(['_gat._anonymizeIp']);
  _gaq.push(['_trackPageview']);

  (function() {
    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
  })();
</script>

Ob der Code richtig eingebunden ist kann man recht einfach mit Firebug prüfen.
Einfach Firebug für die entsprechende Seite mit dem Netzwerk-Modul aktivieren und nach dem Tracking-Image von Google-Analytics (__utm.gif…) ausschau halten, ist dort der Parameter aip auf 1 gesetzt, ist die IP-Kürzung aktiviert und der Datenschutz (hoffentlich) gewährleistet.

Die mobile Version verlassen