Visit time pusher für Bouncer gesucht!

Hallo,
ich habe sehr wahrscheinlich auf einer meiner websites Bouncer, die weniger als 5 Sekunden auf einer webpage bleiben. Erstens will ich herausfinden ob dem wirklich so ist und zweitens mir was dagegen einfallen lassen. Möglicherweise sind es diese typischen Hopser, oder wie Google Search sie nennt, die den Google Algo dazu veranlassen die website upzuranken, weil es keine Hopser mag. Hopser sind solche, die zu schnell wieder zurück zu den Sucherergebnissen klicken.

Also wie ist es möglich, dass das verlassen einer webpage getrackt wird? Mir fällt da zB mouseleave ein. Würde das funktionieren? Und was müsste solch eine function() in matomo pushen?

Mouseleave ist kein gutes Indiz für das Verlassen der Seite. Versuch es mal mit dem beforeunload-Event. Dies ist zwar in der Matomo Ping Logik schon integriert, hat aber noch ein paar andere Schwellwerte, die bei solch kurzen Besuchen wohl das Pingen verhindern. Versuch mal das hier:

window.addEventListener('beforeunload', function(e) {
 _paq.push(['alwaysUseSendBeacon']);
 _paq.push(['ping']);
});

Auf sendBeacon schalten wir vorher um, weil der Ping_Request wohl sonst beim Seitenwechsel abgebrochen würde.

1 Like

OK Peterbo, danke.
Was und wie sehe ich das in Matomo? Muss ich ein “Ereignis” mit reinpacken?
Dieses “alwaysUseSendBeacon” soll in 4 default werden, wie ich lese.

Das Verlassen der Seite wird ja schon durch den “Bounce” gemessen. Wenn extra noch ein Event gesendet wird, dann ist es kein Bounce mehr. Der Ping veranlasst nur, dass die Aufenthaltsdauer dieser Bouncer besser erfasst wird.

Es wird also anstatt wie bei HeartBeat nicht alle paar Sekunden eine Meldung gesendet, sondern nur beim Bouncen. richtig? Und dieser Ping ist wie ein HeartBeat ein visittime-Zeichen, was verwendet werden kann, ansonsten 0, keine Aussage. Da HeartBeat min-intervall 5 sec hat, müssten mit der beforeunload-methode auch Zeiten unter 5 sec bzw. zwischen 1 und 4 sec getrackt werden. richtig? Also ich müsste dann auch 1-4 Sekündler im Log sehen?

Sendet HeartBeat eigentlich auch nur einen Ping, oder was anderes?

Genau, damit sollte auch Besuchszeit unter 5 Sekunden getrackt werden. Der Heartbeat funktioniert ganz normal weiterhin. Der Befehl oben ist nur eine kleine “Krücke”, um auch die aufzuzeichnen, die vorher weg sind; Und sicherlich klappt das nicht in allen Fällen, aber ein Versuch ist es wert. Bitte Feedback geben, wie gut das funktioniert. :wink:

1 Like

OK. Also ob es funktioniert, weiß ich nicht, da ich den HeartBeat noch mit aktiv habe. Also mit HeartBeat waren visittimes unter 15 sec dabei, aber auch welche ohne Zeitangabe im Besucher-Log. Die ohne time sind ohne 0 sec. Evtl. funktioniert es bei denen nicht? Jetzt mit dem “beforeunload” ist es nicht anders. Es sind immer noch einige ohne Angabe von time vorhanden, aber auch welche unter 15 sec, zB einige mit 1 sec. Die Visiter haben Android, iOS, Safari, also gemischt, und alle mit “1 Aktionen”.´, also typischer Search Engine Hopser.

Da matomo 4 das (edit, falsch: “beforeunload”) “alwaysUseSendBeacon” wohl included hat und heute eine Update-Meldung (4.0.4) kam, werde ich wohl updaten und Heartbeat (edit, falsch: und “beforeunload”) wieder rausnehmen und dann mal sehen was getrackt wird.

Wie ist das eigentlich mit den Beacons und der DSGVO? Braucht es da was extra, oder reichen Tracking- und Cookie-Hinweise?

EDIT: wie ich sehe habe ich auch welche mit 2 Aktionen und ohne time, bzw. 0 sec.

Da habe ich etwas verwechselt. In Matomo 4 ist nicht “beforeunload” default, sondern “alwaysUseSendBeacon”.

Note: use of sendBeacon will be enabled by default starting in Matomo 4.

Also kann der code in Matomo 4 so aussehen:

window.addEventListener('beforeunload', function(e) {
 _paq.push(['ping']);
});

ich hatte das nach Update auf 4.0.x wieder rausgenommen, hatte aber weiterhin mein script mit mouseleave mit tracking event drin. Es sind wieder sehr viele 0 sec drin und keine unter 15 sec, außer die mit mouseleave. sendBeacon() ist default aktiviert.

The JavaScript tracker now uses sendBeacon by default if supported by the browser. You can disable this by calling the tracker method disableAlwaysUseSendBeacon .

https://developer.matomo.org/changelog

Kann man testen in der console mit navigator.sendBeacon(). Wenn die Meldung kommt, es fehlt ein Argument, dann ist es aktiv.

ich werde jetzt mal dies probieren:

window.addEventListener('beforeunload', function(e) {
 _paq.push(['ping']);
});

irgendwer scheint mich ärgern zu wollen, weil ich jetzt eine ganze Serie von one-page 0 sec visitors habe… neben einigen normalen visitor trackings, und ein zwei one-page unter 15 sec visitors. Das beforeunload funktioniert also scheinbar nur gelegentlich.

Statusmeldung: Es gibt weiterhin 1 Aktion 0 sec Visitors, aber auch welche mit X sec. Das kleinste was ich gefunden habe war 1 Aktion - 5 Sek.. Zudem habe ich weiterhin mein mouseleave Script mit Event/Ereignis drin, was eine Aktion ist. Also mouseleave Visitor sind mind. 2 Aktionen. Das heißt zudem, dass die 1 Aktion X sec wohl keine mouseleave sind, wobei das nur auf dem Desktop funktioniert. Also mouseleave sind Desktop Visitor.

Ich vermute, dass die jetzigen 1 Aktion - 0 Sek. entweder einen seltsamen Blocker haben, oder Mobile Device Visitor sind, bei denen weder mouseleave noch beforeunload funktioniert. Wie kann mal also diese noch time-mäßig erfassen? ohne heartbeat.