Event-Tracking mit Google Analytics

Zugriffe gezielter messen und auswerten – Event-Tracking mit Google Analytics

Häufig wird das kostenlose Analyse-Tool Google Analytics für Auswertungszwecke verwendet, um Zugriffe auf der eigenen Website zu messen. So weiß man, wie viele Besucher eine Webseite hat, woher sie kommen und mit welchen Geräten sie die Seiten anschauen. Bereits mit den Grundeinstellungen gewinnt man eine ganze Menge Informationen, um Optimierungen durchzuführen. Wobei selbst dieses Potenzial oftmals nicht ausgeschöpft wird.

Ich möchte an dieser Stelle nicht auf die bereits gesammelten Daten eingehen. Stattdessen zeige ich dir, wie du mittels Event-Tracking über Google Analytics einige Daten gezielter messen und auswerten kannst.

Grundlegendes zum Google-Analytics-Code

Wenn du deine Zugriffe über Google Analytics protokollierst, hast du den erforderlichen Quelltext in deine Webseite integriert. Dieser sieht in etwa wie folgt aus:

<script>
(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-123456789-1', 'auto');
ga('set', 'anonymizeIp', true);
ga('send', 'pageview');
</script>

Der erste Teil dient dazu, das externe Javascript, welches sich unter www.google-analytics.com/analytics.js befindet, bei jedem Seitenaufruf zu laden.
Die Funktion ga(), die im Beispiel oben dreimal aufgerufen wird, erwartet entsprechende Parameter. Als erstes werden sämtliche Aktionen an ein bestimmtes Protokoll gebunden oder, vereinfacht gesagt, der entsprechenden Website zugeordnet (hier UA-123456789-1).

ga('create', 'UA-123456789-1', 'auto');

Die Zeile

ga('set', 'anonymizeIp', true);

sorgt dafür, dass die IPs deiner Webseitenbesucher entsprechend den EU-Datenschutz-Richtlinien gekürzt werden. Ist diese Zeile bei dir nicht integriert, solltest du dies auf jeden Fall nachholen.

Die dritte Zeile

ga('send', 'pageview');

erfasst jeden Seitenaufruf bei Google Analytics. Bereits mit üblichen Mitteln, die über die existierenden Webtechnologien zur Verfügung stehen, können mit einem Zugriff vielerlei Daten erfasst und ausgewertet werden. Mit dem enormen Datenbestand, auf den Google zurückgreifen kann, können somit noch eine ganze Menge mehr Ergebnisse zurückgegeben werden.

Damit ich gezielt eine Webseite optimieren kann, gebe ich mich allerdings nicht allein mit diesen Daten zufrieden. Biete ich Dateien zum Herunterladen an, will ich auch wissen, wie viele dies tatsächlich auch getan haben. Habe ich Links zu anderen Webseiten integriert, wie viele Nutzer interessieren sich dafür und haben auch geklickt?

Die nachfolgenden zwei Beispiele zeigen dir, wie du an diese Daten herankommst, also Klicks auf bestimmte Links mittels Ereignis- bzw. Event-Tracking protokollierst.

Ereignisse innerhalb deiner Webseite auslösen

Ereignisse werden, wie der Google-Analytics-Code selbst, mittels Javascript ausgelöst. Neben Seitenaufrufen, die, wie oben erwähnt, mittels ga('send','pageview'); protokolliert werden, gibt es unter anderem auch für Ereignisse/Events einen ähnlich aussehenden Befehl. Der grundlegende Funktionsaufruf mit den erforderlichen Parametern sieht wie folgt aus:

ga('send', 'event', 'Meine Ereigniskategorie', 'Meine Ereignisaktion');

1. Event-Tracking für Klicks auf bestimmten Links (z. B. Downloads)

Bietest du eine Datei zum Herunterladen an, willst du sicherlich wissen, wie viele deiner Leser diese tatsächlich auch herunterladen. Der direkte Weg ist die Erweiterung deines Download-Links über das onClick-Attribut. Angenommen, du bietest ein PDF-Dokument zum Download an, sieht der HTML-Quelltext dazu beispielsweise wie folgt aus:

<a href="http://www.MEINE-DOMAIN.de/mein-dokument-1.pdf" target="_blank">Download</a>

Um nun die Klicks auf diesen Link über die Ereignisse in Analytics zu erfassen, musst du folgendes ergänzen:

onClick="ga('send', 'event', 'Download', 'Mein PDF-Dokument 1');"

Der Quelltext deines Links sollte dann so aussehen:

<a href="http://www.MEINE-DOMAIN.de/mein-dokument.pdf" target="_blank" onClick="ga('send', 'event', 'Download', 'Mein PDF-Dokument 1');">Download</a>

„Download“ = Ereigniskategorie
„Mein PDF-Dokument 1“ = Ereignisaktion

Wird nun auf den Link geklickt, findest du dieses Ereignis (mit etwas Verzögerung) in den Berichten deines Analytics-Kontos wieder. Über die linke Navigation „Verhalten“ – „Ereignisse“ – „Wichtigste Ereignisse“ siehst du nun die Ereigniskategorie „Download“.

Event-Tracking: Wichtige Ereignisse-Ereigniskategorien

Klickst du nun auf diese Ereigniskategorie in der Tabelle, werden dir alle Ereignisaktionen dieser Kategorie angezeigt. Damit du auch weißt, auf welcher Seite sich der geklickte Link befindet, über die eine Datei heruntergeladen wurde, wählst du noch bei „Sekundäre Dimension“ (links oberhalb der Tabelle) über „Verhalten“ die Messgröße „Seite“.

Event-Tracking: Ereignisaktion Download mit sekundärer Dimension

Bei sämtlichen Ereignissen dieser Art verwende ich als Ereignisaktion gerne den direkten Pfad zum jeweiligen Dokument. Für dieses Beispiel hier würde mein Link so aussehen:

<a href="http://www.MEINE-DOMAIN.de/mein-dokument.pdf" target="_blank" onClick="ga('send', 'event', 'Download', this.href);">Download</a>

this.href wird dann immer automatisch mit dem Ziel des Links (href) ersetzt.

2. Event-Tracking für Klicks auf ausgehende Links

Willst du wissen, wie viele Nutzer über externe Links auf deiner Website zu anderen Seiten gelangen, wird es ziemlich mühselig, jeden einzelnen Link zu bearbeiten. Hierfür bietet sich eine Javascript-Funktion an, die nach dem Laden den entsprechenden Quelltext bei allen externen Links auf deiner Webseite automatisch erweitert. Hierzu benötigst du Zugriff auf den Quellcode deiner Webseite. Bei einem WordPress-System wäre dies beispielsweise die header.php in deinem Theme-Ordner.
Unterhalb des HTML-Tags <body> fügst du folgendes Script hinzu:

<script>
trackOutgoingLinks = function(event){
var el = event.srcElement || event.target;
while(el && (typeof el.tagName == 'undefined' || el.tagName.toLowerCase() != 'a' || !el.href)){
el = el.parentNode;
}

if(el && el.href){
var link = el.href;
if(link.indexOf(location.host) == -1 && !link.match(/^javascript\:/i)){
var hitBack = function(link, target){
target ? window.open(link, target) : window.location.href = link;
};
var target = (el.target && !el.target.match(/^_(self|parent|top)$/i)) ? el.target : false;
ga(
"send", "event", "Ausgehender Link", link,
document.location.pathname + document.location.search,
{"hitCallback": hitBack(link, target)}
);

event.preventDefault ? event.preventDefault() : event.returnValue = !1;
}
}
}
var w = window;
w.addEventListener ? w.addEventListener("load",function(){document.body.addEventListener("click", trackOutgoingLinks,!1)},!1)
: w.attachEvent && w.attachEvent("onload",function(){document.body.attachEvent("onclick", trackOutgoingLinks)});
</script>

In Google Analytics wird nun, wie bereits in 1. beschrieben, über die Navigation „Verhalten“ – „Ereignisse“ – „Wichtigste Ereignisse“ auch die Ereigniskategorie „Ausgehender Link“ aufgeführt. Vorausgesetzt natürlich, es gibt bereits Klicks auf externe Links innerhalb deiner Website. Ein Klick darauf führt dich zu den Ereignisaktionen. Hier sind dann die entsprechenden Ziel-URLs aufgeführt. Die Wahl der sekundären Dimension „Seite“ ist auch hier sinnvoll.

Damit ich mich nicht jedes Mal zu bestimmten Ereigniskategorien durchhangeln und meine gewünschte Darstellungen vornehmen muss, habe ich mir für die wichtigsten Ereignisse Verknüpfungen mit entsprechenden Namen angelegt (siehe Leiste oberhalb des Diagramms „Verknüpfung“). Diese findet man dann in der linken Navigation wieder. Verknüpfungen einer aktuellen Ansicht funktionieren übrigens an sämtlichen Stellen.

Event-Tracking: Ereignisaktion URL mit sekundärer Dimension

Was du beim Einsatz von Ereignis-Tracking wissen solltest

Standardmäßig zeigt dir die Messgröße „Absprungrate“ in Google Analytics den prozentualen Anteil, wie viele Nutzer während eines Besuchs lediglich eine Seite aufgerufen haben. Beim Auslösen eines Events werden nach dem Seitenaufruf zusätzliche Daten an Google Analytics gesendet. So wird gemeldet „Nutzer noch auf der Seite online“. Heißt: Es gibt bei dieser Sitzung keinen Absprung. Wundere dich also nicht, wenn du ab sofort eine geringere Absprungrate verzeichnest.

Und bevor du auf die Idee kommst, zahlreiche Ereignisse auszulösen, weil du an verschiedenen Stellen in Fachartikeln gelesen hast, dass eine niedrige Absprungrate ein gutes Signal für besseres Ranking in der Google-Suchmaschine ist: Denk gar nicht erst daran! Denn die Absprungrate, die du über Analytics angezeigt bekommst, hat damit nichts zu tun.

Fazit

Ich hoffe, ich konnte dir einen kleinen Einblick in das Event-Tracking mit Google Analytics geben und dass du mit den Beispielen hier bereits etwas anfangen kannst. Ich weiß, dass dieses Thema für technisch eher unversierte Nutzer nicht gerade leicht verdaulich ist. Scheu dich also nicht davor, dich an mich zu wenden, wenn das eine oder andere noch etwas unklar ist!

Zugriffe gezielter messen und auswerten – Event-Tracking mit Google Analytics Rating: 4.64/5 14 Votes
Steve Naumann

Steve Naumann

Als begeisterter IT-Anhänger entwickelt Steve Naumann seit 1999 u. a. Webanwendungen auf Basis von PHP und Datenbanksystemen wie MySQL. Er betreibt mehrere eigene Webprojekte und unterstützt Kunden bei der Durchführung von strategischen Online-Marketing-Maßnahmen. Der gebürtige Sachse ist Mitinitiator und Herausgeber von Zielbar.

13 Reaktionen zu “Zugriffe gezielter messen und auswerten – Event-Tracking mit Google Analytics”

  1. Tommaso

    Danke für die wertvollen Tipps. MfG Tommaso

    Antworten
  2. Wozu Event Tracking? - WebSENNsation

    […] Leicht verständlicher Beitrag zur technischen Umsetzung des Event Trackings […]

  3. Mathias

    Hallo Steve,

    Event-Tracking mit Google Analytics ist wirklich eine tolle Sache.
    Ich finde den Einsatz besonders auf „One Page Template“ sinnvoll. weil man dadurch das Besucherverhalten besser messen kann.

    Viele Grüße,
    Mathias

    Antworten
  4. lilu24

    Ich muss aber noch ein Zielvorhaben anlegen in den Einstellungen oder geht das auch so?

    Antworten
    1. Steve Naumann
      Steve Naumann

      Wenn du einen Klick auf einen externen Link oder ein Download als Ziel messen willst, kannst du zu diesen Ereignissen auch Zielvorhaben einrichten. Diese werden dann zusätzlich als Conversion aufgeführt. Ein Muss für die Events ist es aber nicht.

      Antworten
      1. lilu24

        Ok ansonsten sehe ich diese nur bei den Ereignissen in Analytics?

        Antworten
        1. Steve Naumann
          Steve Naumann

          Genauso ist es. ;-)

          Antworten
  5. Robert Klimossek

    Hallo Steve

    toller Artikel, welcher leicht erahnen lässt, wie mächtig so ein Programm sein kann beim richtigen Einsatz.

    Zum Datenschutz sollte der Hinweis ergänzt werden, dass die Möglichkeit eines Widerspruchs gegen die Erfassung von Nutzerdaten eingebaut werden sollte.
    Hierzu stellt Google Analytics einen Opt-Out Code zur Verfügung, welcher ebenfalls im Quellcode eingebunden werden soll.

    Beispiel Opt-Out Code

    var gaProperty = ‚UA-XXXXXXX-X‘;
    var disableStr = ‚ga-disable-‚ + gaProperty;
    if (document.cookie.indexOf(disableStr + ‚=true‘) > -1) {
    window[disableStr] = true;
    }
    function gaOptout() {
    document.cookie = disableStr + ‚=true; expires=Thu, 31 Dec 2099 23:59:59 UTC; path=/‘;
    window[disableStr] = true;
    }

    Hier gibt es mehr Informationen unter Punkt 3. Widerspruchsrecht
    https://www.datenschutzbeauftragter-info.de/fachbeitraege/google-analytics-datenschutzkonform-einsetzen/

    Gruß

    Robert

    Antworten
    1. Steve Naumann
      Steve Naumann

      Danke für die Ergänzung, Robert.
      Wichtig in diesem Zusammenhang ist auch der Link, damit die Funktion gaOptout() auch aufgerufen werden kann (siehe rot marktierte Zeilen in Punkt 4. Angepasste Datenschutzerklärung der verlinkten Seite).
      Rechtlich gesehen ist das aus meiner Sicht allerdings keine wirklich saubere Lösung. Es werden ja trotzdem Daten an Google Analytics gesendet. Oder übersehe ich da etwas?

      Antworten
      1. Robert Klimossek

        Hallo Steve

        Stimmt. Das mit dem Link habe ich noch vergessen hinzuschreiben.

        Aus unserer Sicht ist diese Lösung auch nicht sauber. Schließlich muss der User auf die Seite (Daten werden erfasst) und kann diese dann im Anschluss deaktivieren. Aber es ist vorerst eine Lösung, welche genutzt werden sollte.

        Antworten
        1. Steve Naumann
          Steve Naumann

          Wenn ich mir den Quellcode anschaue, wird ja durch den Aufruf lediglich ein Cookie gesetzt, durch das bei zukünftigen Zugriffen lediglich ein Parameter an das externe Skript von Google Analytics gesendet wird. Daten gehen dabei ja trotzdem raus. Man wäre damit bestenfalls rechtlich auf der sicheren Seite – zumindest solange, bis unsere Gesetzgeber ihren Horizont erweitern. ;-)

          Einen besseren Ansatz finde ich hier, das Cookie nicht auf Javascript-Ebene abzufragen, sondern direkt per PHP auf dem Server. Der Analytics-Quellcode würde dann gar nicht erst an den Browser des Nutzers ausgeliefert.

          Antworten
          1. Robert Klimossek

            wir verstehen uns :)

  6. Tim Ehling

    Hallo Steve,

    schöner Artikel, vor allem der zweite Teil mit der Automatisierung. Hervoragend, habe ich auf der Seite von meinem Tool direkt mal erwähnt und eingebaut.

    Antworten

Schreib einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *

x

Keine neuen Artikel mehr verpassen.

Kein Spam. Keine Weitergabe.