0-Sekunden-Besuchsdauer-Problem bei Piwik beheben

Piwik ist ein umfangreiches Tool für Webmaster mit dem man, wie in Google Analytics, die beliebtesten Seiten, die Besucheranzahl und noch viel mehr ermitteln kann.

Auch mein Blog verwendet dieses Analyse-Tool. Aber nicht um dich auszuspähen, sondern um fest zu stellen, welche meiner Artikel am häufigsten aufgerufen werden und wie viele Besucher sich hier her „verirrt“ haben ;).

Jeder, der Piwik verwendet, kennt das 0-Sekunden-Besuchszeit-Phänomen. Meistens gelangen die Besucher über eine Suchmaschine direkt auf einen bestimmten Artikel.
In vielen Fällen wird die Webseite oder der Blog nach der ersten Seite wieder verlassen, ohne auf einen weiteren Link zu klicken.
Da unser Analyse-Tool beim Verlassen keine Rückmeldung bekommt, nimmt es als Zeit des Besuchs 0 Sekunden an.

Somit müsste man vom „schlimmsten“ ausgehen und annehmen, dass der Besucher sofort wieder auf den Zurückbutton geklickt und den Content nicht weiter gelesen hatte.
So etwas ist für den Webmaster oder Blogger nicht besonders erfreulich.

Es gibt zwar Workarounds mit so genannten Heartbeats, d. h. der Browsers des Besuchers löst in bestimmten Intervallen ein TrackingEvent aus. Dieses Verfahren hat aber einen großen Nachteil: In der Auswertung taucht die ein und die selbe Seite mehrmals auf, was zu Verwirrung führen kann.
Außerdem ist diese Methode nicht besonders genau.

Die bessere Möglichkeit um auch das Verlassen der Seite mitzubekommen ist das Trackingevent auszulösen, wenn die Seite auch wirklich verlassen wird.

Dafür müssen wir zu dem Piwik-JavaScript-Code auf unserer Homepage einen weiteren Teil hinzufügen:

...
<!-- End Piwik Code -->

<script type="text/javascript">
   window.onbeforeunload = trackUnloadPage;
   function trackUnloadPage()
   {
      _paq.push(['trackPageView','Verlassen']);
   }
</script>

Leider unterstützen manche Browser dieses Event nicht. Aber in den meisten Fällen erscheint in Piwik nun ein weiterer Aufruf mit dem Text „Verlassen“ und man bekommt so einen Eindruck, wie interessant die einzelnen Seiten oder Artikel für den Leser sind.

Alternativ kann auch das „onunload“-Event verwendet werden, welches eigentlich in allen Browsern implementiert sein sollte:

...
<!-- End Piwik Code -->

<script type="text/javascript">
   window.onunload = trackUnloadPage;
   function trackUnloadPage()
   {
      _paq.push(['trackPageView','Verlassen']);
   }
</script>

7 Kommentare zu “0-Sekunden-Besuchsdauer-Problem bei Piwik beheben

  1. Hallo Sebastian,

    Die 0 Sekunden problematik hab ich auch mit Matomo.
    Hab das Script hinzugefügt und warte mal ab was passiert.
    Vielen Dank schon vorab.

    Gruß Lars

  2. Hallo Sebastian,

    Dein Beitrag ist ja schon ein wenig in die Jahre gekommen, aber ich habe Deinen Tipp eben erst einmal ausprobiert. Funktionieren tuts, allerdings wird der virtuelle Seitenaufruf bei jedem Seitenwechsel ausgelöst, also auch beim Surfen auf der Seite. Mein Besucherlog sieht dann so aus, dass nach jedem Seitenaufruf die Seite Verlassen kommt. Kann man das auch so einstellen, dass nur nach Schließen des Tabs diese Funktion ausgeführt wird?
    Besten Dank!
    Gerd

    1. Hallo Gerd,

      ja ist schon eine Weile her.

      Ich habe eine Möglichkeit gefunden, wie du die Events einschränken kannst. Ist allerdings etwas Programmierung erforderlich. Du musst den Javascript-Teil des Trackings erweitern: Klick

  3. Hallo Sebastian,

    ich habe den zweiten Code eingebindet – es funktioniert super. Danke dafür! Es gibt wenige Besucher bzw. Browser, den das nicht implementieren kann.
    Hast du eine Code parat, der beide (Seite schließen, Zurückbutton geklickt) berücksichtigt?
    Das wäre echt super!

    Viele Grüße
    Georg

    1. Hallo Georg,

      gerne. Freut mich das ich helfen konnte.
      Wie ich schon im Text geschrieben habe, unterstützen manche Browser dieses Event nicht. Daher habe ich leider im Moment keine Lösung für dieses Problem.
      Bei dem Zurück-Button kommt es darauf an, ob der Browser dieses Event dann nochmal auslöst.

      Grüße
      Sebastian

    1. Danke für dein Kommentar!
      Das ist so an sich kein Bug, sondern ist auf die Technik zurückzuführen, wie das Tracking realisiert ist. Deswegen findest du dazu auch keine Dokumentation.
      In der neuen 2.0 Version habe ich weiterhin das selbe Problem beobachtet.

Schreibe einen Kommentar

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