Logging von Google Analytics Requests via Google Chrome für sendBeacon/beforeUnload

Heute wirds mal etwas technischer. Über die Durchschnittliche Verweildauer in Google Analytics und anderen Webanalyse-Systemen habe ich schon viel geschrieben, sie stimmt in einer Standard-Installation nicht. In einem meiner Kurse sagte dann mal ein Teilnehmer, dass man doch einfach messen könne, wenn der Nutzer den Tab schließt, zum Beispiel mit onbeforeUnload. So ein Trigger ist schnell gebaut, hat aber auch Nachteile. Zunächst einmal ist das nicht zuverlässig, denn ein Benutzer kann auch einfach den Tab wechseln und nicht schließen, engagiert sich aber trotzdem nicht mit den Inhalten meiner Webseite, so dass die ermittelte Time on Site nicht richtig ist. Insbesondere auf mobilen Geräten sehe ich es eher selten, dass Nutzer ihre “Tabs” schließen. Aber darum geht es heute nicht, das ist mindestens einen weiteren Beitrag wert. In diesem Artikel geht es vor allem darum, wie wir überhaupt den Einsatz von onbeforeUnload messen debuggen können. “Logging von Google Analytics Requests via Google Chrome für sendBeacon/beforeUnload” weiterlesen

Mehr als nur Pageviews: Events

Pageviews oder Seitenaufrufe waren viele Jahre die Hauptwährung in der Webanalyse. Im Prinzip sind sie aber relativ sinnfrei, denn wir wissen ja nicht, ob ein Nutzer die Inhalte auf der Seite tatsächlich gelesen hat oder nicht. Auch wissen wir zum Beispiel bei der letzten Seite, die ein Nutzer besucht, nicht, wie lange er auf dieser Seite gewesen ist (siehe Details hier).

JavaScript ermöglicht das Auslösen von Events bzw. Ereignissen, zum Beispiel durch eine Nutzeraktion, aber auch automatisiert, nachdem eine Seite ausgeliefert wurde. Dadurch ist ein granulareres Messen der Interaktion von Nutzern mit einer Seite möglich.

Natürlich lädt dies auf den ersten Blick dazu ein, einfach einmal alles zu tracken; allerdings “schießt” jedes Event einen Hit an Google Analytics, von denen aber nur bis zu 10.000.000 pro Monat kostenlos sind. Außerdem werden nur 500 Events pro Session gezählt. Daher ist es umso wichtiger, dass man sich genau überlegt, welche Events wirklich wichtig sind zur Messung der Zielerreichung. Auch bedeutet das Sammeln von Daten nicht, dass diese auch sinnvoll ausgewertet werden können. Bei der Scroll-Tiefe zum Beispiel kann ein Wert von 75% für zwei Seiten unterschiedliche Bedeutungen haben, je nachdem wie unterschiedlich lang die beiden Seiten sind.

Der Ablauf

Ein Nutzer kommt auf eine Seite und löst zunächst einen Page View aus. Zwar können auch mit dem Pageview Events ausgelöst werden, die Nützlichkeit ist in diesem Fall aber fraglich. In unserem Beispiel werden Events durch Nutzerinteraktionen mit der Seite ausgelöst, zum Beispiel

  • wenn ein Nutzer herunter scrollt
  • wenn ein Element auf der Seite sichtbar ist
  • wenn ein Video auf der Seite gestartet, pausiert oder bis zum Schluß geschaut wird.

Tracking Plan

Events haben 4 Felder, Kategorie, Aktion, Label und Wert. Um Events sinnvoll auswerten zu können, ist eine einheitliche Benennung der einzelnen Felder notwendig. In einem Tracking Plan wird die Benennung festgelegt; zu diesem Zeitpunkt muss schon klar sein, warum und wie man das Auftreten von Events lösen will.

Event Tracking Plan
Event Tracking Plan

Implementierung von Events im Google Tag Manager

Erst dann werden die Tags erstellt. Für den Page YARPP Visible Event Tag sieht das zum Beispiel so aus:

Lediglich der Wert wird durch eine Variable gefüllt (erkennbar an den {{}} Klammern). Dieses Event wird ausgelöst, wenn auf dem Bildschirm des Nutzers der Bereich “Ähnliche Beiträge” oder “Mehr lesen” erscheint, der Inhalt vom Nutzer also anscheinend zuende gelesen wurde. Dieses Event ist wichtig, da das Ziel dieser Seite ist, dass die Inhalte auch gelesen werden (ansonsten lohnt es sich nicht, ein Skript zur Veranstaltung zur Verfügung zu stellen). Die Scroll-Tiefe ist in diesem Fall nicht unbedingt notwendig, aber wir nehmen sie trotzdem mit.

Eine häufige Stolperfalle ist Non-Interaction Hit. Diese ist in diesem Beispiel auf false gesetzt. Man könnte dies wie eine doppelte Verneinung verstehen: Keine-Interaktion: Falsch, also ist es eine Interaktion. Dahinter verbirgt sich ein entscheidender Faktor für die Berechnung der Bounce Rate: Stünde hier True, so würden Nutzer, die auf eine Seite gelangen und das Element Visibility Event auslösen, immer noch als Bounce gezählt werden, wenn sie keinen weiteren Pageview auslösen. In der oben beschriebenen Konfiguration aber sind sie keine Bouncer.

Was macht man nun damit?

Schaut man sich die Ergebnisse des Events an, so wird die oben beschriebene Einschränkung des KPIs Scroll-Tiefe deutlich:

In den ersten Zeilen der Daten sehen wir Hits für das Sichtbarkeits-Event, bei denen die Scrolltiefe bei 0% liegt. Wie kann es sein, dass ein Nutzer die “Ähnlichen Artikel” gesehen hat, wenn er noch nicht mal herunter gescrollt hat? Die Antwort ist ganz einfach: Unter dem Artikel befinden sich so viele Kommentare, dass der Nutzer nur so wenig herunter scrollen muss bis er das Element sieht, dass der Trigger für die 25% Scrolltiefe noch nicht ausgelöst ist! Gleichzeitig sieht man in den anderen Zeilen für eine Seite unterschiedliche Scrolltiefen, was daran liegt, dass diese auf unterschiedlichen Geräteklassen ausgeliefert wurden.

Nächster Abschnitt: Implementierung testen

Warum Neue und Wiederkehrende Besucher in Google Analytics manchmal mit Vorsicht zu genießen sind

Google Analytics kann mitunter fies sein, denn manche Dimensionen gepaart mit Segmenten verhalten sich nicht so, wie man das zunächst denken mag. Dank Michael Janssens und Maik Bruns‘ Kommentare auf meine Frage in der von Maik gegründeten Analyse-Gruppe kann ich heute beruhigt schlafen gehen und bin wieder ein bisschen schlauer geworden.

Die Frage kam heute im Analytics-Kurs auf: Wie kann es sein, dass ich mehr Neue Nutzer als Transaktionen habe, wenn ich in dem Segment “Hat einen Kauf getätigt” bin? Den Link zum Bericht gibt es hier, die Annahme, die ich hatte, war die: Wenn ich ein Segment von Nutzern habe, die einen Kauf getätigt haben, und dieses Segment im Bericht “Neue vs. wiederkehrende Nutzer” verwende, dann gehe ich davon aus, dass ich in dem Bereich Neue Besucher + Haben einen Kauf getätigt nur die Nutzer sehe, die in ihrem ersten Besuch etwas gekauft haben. Allerdings sehen wir hier in diesem Bericht 691 Nutzer, aber nur 376 Transaktionen. Wenn meine Erwartungshaltung stimmen würde, dann müsste die Zahl hier gleich sein. Ist sie aber nicht. “Warum Neue und Wiederkehrende Besucher in Google Analytics manchmal mit Vorsicht zu genießen sind” weiterlesen

Echtzeit

Das Echtzeit-Interface hat einen großen Mehrwert: Man kann in Echtzeit testen, was man gerade implementiert hat, und das ist gerade für komplexe Konfigurationen wirklich spannend.

Darüber hinaus finden es viele Websitebetreiber spannend zu sehen, was sich gerade auf ihrer Seite tut. Aber auch hier stellt sich die Frage: Was macht man mit dieser Information? Der Mehrwert ist hier gering, denn die Daten sind nicht mehr als eine Momentaufnahme. Die kann allerdings spannend sein, wenn gerade eine Kampagne gelauncht wird.

Nächster Abschnitt: Zielgruppe

Digital Analytics

Dies ist die Seite zum Kurs (Digital) Analytics an der HAW und der bmk. Die Data Science-Themen werden an der bmk nur teilweise behandelt. Die Lernfelder der bmk sind in grün ergänzt)

  1. Über diesen Kurs
  2. Einführung
    1. Eine kleine Daten-Geschichte
    2. Datenschutz
    3. Keine Angst vor Daten!
    4. Analyse, Analytics, Statistik, Data Science – Was denn jetzt?
  3. Das Business-Problem verstehen (Lernfeld 2)
    1. Von Zielen zu KPIs
    2. Von Daten zur Handlungsrelevanz
    3. Der Daten-Analyse-Prozess
  4. Die Datenakquise
    1. Generelle Methoden
      1. Umfragen
      2. Experimente
      3. Offene Datenquellen (z.B. Google Trends)
    2. Tracking (Lernfeld 6)
      1. Server Log Files
      2. Pixels/Tagging
      3. Cookies
      4. Tag Management
      5. Mehr als nur Pageviews: Events
      6. Implementierung testen
      7. Eine kleine Checkliste
      8. Erweiterte Tracking-Ansätze
  5. Die Analyse
    1. Grundlagen der Analyse in der GUI von Google Analytics (Lernfeld 5)
      1. Echtzeit
      2. Zielgruppe
      3. Akquisition
      4. Verhalten
      5. Conversions
      6. Attribution
    2. Statistik (Lernfeld 12d)
      1. Arithmetisches Mittel, Median und Modus
      2. Verteilungen
      3. Standardabweichung
      4. Stichprobenverteilung des Mittelwerts
      5. Standardfehler und Konfidenzintervall
      6. Wie groß muss ein Sample sein?
    3. Daten-Analyse mit R (Lernfeld 8)
      1. Erste Schritte mit R und RStudio
      2. Grundlegendes R-Wissen
      3. Das Tidyverse
      4. Abfrage der Google Analytics Reporting API
      5. Attribution mit R berechnen
      6. Regressionsanalyse
      7. Machine Learning: Persona-Erstellung mit Association Rules
  6. Das Modellieren und Testen (Lernfeld 12d)
      1. Erstellen einer Hypothese
      2. Umsetzung in Google Optimize
      3. Analyse der Test-Ergebnisse (Lernfeld 9)
      4. Personalisierung
  7. Das Kommunizieren von Ergebnissen (bisher in keinem Lernfeld vorhanden, aber sollte im Lehrplan ergänzt werden)
    1. Visualisierung von Daten
    2. Actionable Insights
  8. Literatur
  9. Glossar

Wird mein Content gelesen? Sichtbarkeit von Elementen messen!

Im September 2017 hatte ich noch darüber geschrieben, dass die Scrolltiefe ein besserer Indikator dafür wäre, ob ein Inhalt gelesen wurde als die reine Sitzungsdauer, die eh Quatsch ist. Einen Monat später veröffentlichte Google dann eine neue Funktion im Google Tag Manager, einen Trigger für die Sichtbarkeit von Elementen (in der deutschen Version der Release Notes fehlte der Hinweis). Damit lassen sich einige Nachteile des Scrolltiefen-Ansatzes kompensieren, vor allem die Einschränkung, dass nicht jede Seite gleich lang ist und “75% gelesen” nicht immer bedeuten muss, dass der Inhalt auch bis zum Ende gelesen wurde (75% wurde deswegen gewählt, weil viele Seiten einen immensen Footer haben und die Nutzer daher nicht zu 100% runterscrollen). Eine Seite bei mir hat so viele Kommentare, dass sie mehr als die Hälfte des Inhalts ausmachen. “Wird mein Content gelesen? Sichtbarkeit von Elementen messen!” weiterlesen

Warum die durchschnittliche Sitzungsdauer in Analytics kompletter Quatsch ist

Ich beschäftige mich seit über 20 Jahren mit Webanalyse, angefangen mit Serverlogfiles und heute mit zum Teil abgefahrenen Implementierungen von Tracking-Systemen. Die Möglichkeiten werden immer besser, aber nicht alles ist besser geworden. Denn ein Aberglaube ist einfach nicht totzukriegen, nämlich dass Time on Site oder die “durchschnittliche Sitzungsdauer” eine gute Metrik ist, beziehungsweise dass die angegebenen Werte überhaupt stimmen, Darum hier einmal schwarz auf weiß: In einer Standardimplementierung wird die Time on Site nicht richtig gemessen, egal ob in Adobe Analytics oder Google Analytics oder Piwik oder sonstwas.  “Warum die durchschnittliche Sitzungsdauer in Analytics kompletter Quatsch ist” weiterlesen

Wird mein Content gelesen? Scroll-Tiefe pro Artikel als Conversion

Nicht jeder Inhalt wird nur deswegen produziert, damit die Werbung drumherum angeklickt wird 🙂 Manchen Autor interessiert sogar, ob die Nutzer das produzierte Werk auch lesen. Eine geeignete Metrik oder sogar ein geeigneter KPI ist die Scroll-Tiefe, also wie weit ein Nutzer herunter gescrollt hat. Time on Site oder Time on Page sind keine gute Metrik, da oftmals nur eine Seite angeschaut wird und Google Analytics dann gar nicht messen kann, wie viel Zeit der Nutzer auf der Seite war. Auch die Bounce Rate ist aus dem gleichen Grund keine gute Metrik, und selbst die Adjusted Bounce Rate sagt ja nur, dass die Nutzer nicht gleich wieder verschwunden sind. Natürlich kann ein Nutzer auch ganz schnell runterscrollen um zu schauen, wie lang ein Inhalt ist, aber das klammern wir jetzt mal aus.  “Wird mein Content gelesen? Scroll-Tiefe pro Artikel als Conversion” weiterlesen

Woher kommen die SimilarWeb-Daten?

[Dies ist die Neuauflage eines älteren Artikels]

Wie bei Google Trends bin ich immer wieder überrascht, wie schnell Rückschlüsse aus Daten gezogen werden, ohne dass einmal überlegt wird, woher die Daten eigentlich kommen und wie plausibel sie sind. Vor allem bei Similar Web ist das erstaunlich, denn Google hat ja die Suchdaten und kann Trends daraus ablesen, aber woher kann eigentlich Similar Web Daten darüber haben, wie viele Besucher eine Webseite oder eine App hat? Wie zuverlässig sind diese Daten? Ist die Zuverlässigkeit ausreichend, um daraus wichtige Business-Entscheidungen zu treffen? “Woher kommen die SimilarWeb-Daten?” weiterlesen