Piwik Heartbeat-Timer (Besuchsdauer messen)

Piwik bietet eine Funktion, durch die eure Piwik-Installation alle x Sekunden von einem Besucher angepingt wird. So kann ermittelt werden, wie lange Besucher tatsächlich auf der Seite aktiv sind. Das wurde bereits vor ein paar Monaten mit Version 2.14 eingeführt und erfordert nur eine kleine Anpassung des Javascript Tracking-Codes.

Artikelvorschaubild: Piwik: Enable Heartbeat-Timer

Piwik: Enable-Heart-Beat-Timer

Die Funktion heißt „enableHeartBeatTimer“ und wird durch die Zeile _paq.push([‚enableHeartBeatTimer‘, 5]); aktiviert. Der zweite Parameter gibt an, alle wieviel Sekunden die Piwik-Installation angepingt werden soll. Die Entwickler-Dokumentation sagt dazu folgendes:

enableHeartBeatTimer( delayInSeconds ) – „Install a Heart beat timer that will regularly send requests to Piwik in order to better measure the time spent on the page. These requests will be sent only when the user is actively viewing the page (when the tab is active and in focus). These requests will not track additional actions or pageviews.“

Anfragen werden also nur gesendet, wenn der Nutzer die Seite auch im aktiven Tab und nicht etwa im Hintergrund oder einem anderen Tab geöffnet hat. Es muss nur der Javascript Tracking-Code aktualisiert werden, in der Administrationsoberfläche müssen keine Vorstellungen vorgenommen werden.

Der große Vorteil ist, dass die Besucher-Metriken für die Absprungzeit und die Aufenthaltsdauer damit bedeutend akkurater und aussagekräftiger werden. Bisher wurde die Aufenthaltsdauer aus der Summe der Zeitdifferenzen gemessen, die zwischen verschiedenen Seitenaufrufen vergeht. Doch bei einer einzelnen Seitenansicht ergibt sich daraus logischerweise keine tatsächliche Aufenthaltsdauer. Mit dem Heart-Beat-Timer ändert sich das zum Glück.

Zeile im vollständigen Tracking-Code

<script>
var piwikCustomVars = [];
_paq.push(['trackPageView']);
_paq.push(['enableLinkTracking', true]);
_paq.push(['enableHeartBeatTimer', 5]);
(function() {
...
})();
</script>

Achtung, Anfragen-Schwemme

Setzt das Zeitlimit nicht zu kurz, denn der Server wird kann so leicht mit Anfragen überschwemmt werden. Wenn Dutzende oder gar Hunderte Browser gleichzeitig Anfragen senden, dann macht sich das sicherlich früher oder später bemerkbar. Ich habe mich für 5 Sekunden entschieden und werde die Server-Log-Dateien einfach mal im Auge behalten. Notfalls muss ich die Zeitdauer erhöhen.

Quellen/Weiterlesen

Auszug aus Chrome Entwickler-Konsole

Chrome Developer Console / Netzwerk: Pings an Piwik

Chrome Developer Console / Netzwerk: Pings an Piwik

Philipp Schuster

Ich bin Philipp und studiere Informatik an der TU Dresden. Meine Interessen sind sehr breit gefächert und reichen von Web und Technik über Social Media und Programmierung bis hin zu Politik, Wirtschaft und Gesellschaft. Außerdem blogge ich hier bereits seit Anfang 2014 regelmäßig und es macht mir großen Spaß! Get To Know Me!

Das könnte auch interessant sein...

Datenschutzerklärung für die Kommentarfunktion.

Schreibe einen Kommentar

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

CAPTCHA lösen * Time limit is exhausted. Please reload CAPTCHA.