Zwei Tricks, um Besucher wirklich zu messen

Anfang der Woche ging es im Beitrag “Das Märchen von den Besucherzahlen fremder Webseiten” ja eher bedrückend zu: Alles Murks, fremde Seiten kann man eh nicht vernünftig messen und die Metriken die genutzt werden, sind im Grunde auch Quatsch.

Das stimmt im Kern nach wie vor, trotzdem will ich heute mal etwas positiver sein und zwei Wege vorstellen, wie man etwas bessere Daten erfassen kann. Das ist zwar immer noch nicht vollumfänglich, kann aber bessere Daten als manches hochgepriesene Werkzeug liefern.

Im folgenden gibt es also einen Weg um die eigenen Besucher solide zu zählen, aber auch einen Weg um fremde Shops und deren Bestellzahlen zu beobachten.

Eigene Besucher (relativ) genau zählen

Google Analytics aber auch andere Tools haben immer den Nachteil, das sie von Ad- oder Scriptblockern ausgefiltert und blockiert werden. Das verfälscht die erfassten Besucherzahlen.

Besonders stark tritt dieser Effekt auf, wenn Tracker von dritten Seiten integriert werden. Die Browser gehen dazu über, selbst in den Standardeinstellungen derlei Ressourcen von Dritten zu blockieren und setzen damit nicht einmal einen besonders technikaffinen Nutzer voraus, um die Statistiken zu verfälschen.

Wer genaue Seitenaufrufe und Besucherzahlen ermitteln möchte, sollte einen Blick auf die Logs seiner Webserver werfen. Diese protokollieren, aus technischen Gründen, jeden Aufruf einer Datei, sei es Seite, Bild, Video, mit und schreiben das in eine Log-Datei. Diese Dateien sind üblicherweise tages- oder halbtagesbasiert und werden in der Standardeinstellung der meisten Systeme bis zu 14 Tage vorgehalten.

Abhängig davon wie sich die Umgebung des Webservers darstellt, hat man vielleicht mit seinem FTP-Programm Zugriff auf diese Logs. Manchmal sind die aber auch nicht ohne Weiteres erreichbar, so dass man hier erst den Zugriff beim Hoster erfragen, bzw. sich die Dateien schicken lassen muss.

Ein Softwaretool wie GoAccess kann die Daten aus diesen Logs dann aufbereiten, filtern und grafisch darstellen. Genauer als mit den Log-Dateien geht es aus Sicht der Datenbasis nicht.

Allerdings, so ehrlich muss man sein, muss hier ggf. noch etwas manuelle Arbeit investiert werden. Angriffsversuche, Spammer aber auch Suchmaschinen sollte man aus den Ergebnissen filtern. Wer sich nur für Besucherzahlen interessiert, der könnte zum Beispiel auch nur solche Requests anzeigen lassen, auf die der Webserver mit Status 200 “OK” geantwortet hat.

Das zuvor bereits erwähnte GoAccess macht all das aber auch schon automatisch ganz gut und andere Tools vermutlich auch. Insofern hält sich der Aufwand unter Umständen auch in Grenzen. Einen Versuch ist es auf jeden Fall wert.

Beispiel eines Reports den GoAccess aus den Logfiles des Apache erzeugt hat Beispiel eines Reports den GoAccess aus den Logfiles des Apache einer Woche erzeugt hat

Besucherströme und -verhalten können damit natürlich nicht so schön dargestellt werden wie mit Analyse-Tools, die explizit darauf ausgerichtet sind. Wer aber wissen möchte, ob eine neue Landingpage gut ankommt, wie sich ein Blogbeitrag schlägt, oder was auch sonst immer in “einfachen” Zahlen gemessen werden kann, der ist mit einer einfachen Analyse der Access Logs auf einem guten Weg.

Ein technischer Hinweis noch: Ich hatte überlegt, ob Caching die Logfiles nachteilig beeinflussen könnte, habe dafür aber keine Anhaltspunkte finden können. Selbst wenn der Browser also Ressourcen (Bilder, Videos, Seiten) zwischenspeichert, scheint die grundsätzliche Anfrage im Log aufzuschlagen und damit zu den erfassten Besuchern gezählt.

Verkaufszahlen fremder Shops untersuchen

Das was jetzt folgt, ist nur sinnvoll mit einem gewissen Zeit- und Geldaufwand umsetzbar und funktioniert nicht für alle Shopsysteme. Für Magento oder Shopware in einer Standardkonfiguration funktioniert es gut, wie ich aus eigener Erfahrung berichten kann.

Die Vorgehensweise ist einfach: Man führt zu einem definierten Zeitpunkt, Montag um 9 Uhr beispielsweise, eine Bestellung durch. Inhalt, Warenkorbwert etc. sind dabei relativ egal, die interessante Größe ist die Bestellnummer die man erhält. Im Beispiel von Magento könnte das in der Standardeinstellung etwas wie “#100001234” sein.

Jetzt wartet man eine definierte Zeitspanne, vielleicht einen Tag, eine Woche, einen Monat, und führt zum exakt gleichen Zeitpunkt wieder eine Bestellung durch. Die Bestellnummer könnte dann etwas wie “#100002587” sein.

Am Beispiel von Magento können wir daraus eine Differenz von 1353 ableiten, d.h. diese Anzahl an Bestellungen ist zwischen den beiden Zeiträumen im Shop eingegangen. Für Shopware wäre das Vorgehen gleich, beide nutzen im Standard inkrementierende, also fortlaufend ansteigende, Bestellnummern.

Diese Größe als einzelne Stichprobe ist mit Vorsicht zu genießen! Sowohl abgebrochene oder auch Testbestellungen würden diesen Zähler ebenfalls um eins hochsetzen und damit das Ergebnis verfälschen.

Man sollte diese Zahlen deshalb mehrmals erfassen und immer wieder vergleichen. Im Idealfall über einen längeren Zeitraum. Was länger ist, hängt natürlich vom gewählten Intervall ab. Wer zwei Bestellungen an zwei Tagen nacheinander ausführt und damit meint, schon einen guten Überblick über die Anzahl an Bestellungen pro Tag zu erhalten… der hat wieder keine gute Datenbasis.

Ich schrieb, dass dies für Magento und Shopware in der Standardkonfiguration gut funktioniert und auch das muss ich jetzt leider einschränken.

Erstellt man Subshops oder Store Views, üblicherweise macht man das bei mehrsprachigen Seiten, dann werden dafür neue Nummernkreise erstellt. Im Falle von Magento ist im Shop mit der führenden “1” in der Bestellnummer also vielleicht gar nicht so viel los wie in dem Shop mit der “2”, den man aber nicht untersucht hat. Hier gilt es also, mit offenen Augen durch den Shop zu gehen und hinreichend zu untersuchen, ob es mehrere Nummernkreise gibt.

Darüber hinaus gibt es auch, für Magento weiß ich das sicher, Plugins um die Bestellnummern zu maskieren. Statt einer ordentlich fortlaufenden Nummer gibt es dann zufällig erstellte Bestellnummern oder das System wird auf datumsbasierte Nummern mit Suffix umgestellt oder ähnliches.

Datumsbasierte Bestellnummern könnte man theoretisch abfangen, indem man jeden Abend um 23:59 Uhr eine Bestellung platziert und schaut ob diese Bestellnummer neben dem Datum eine fortlaufende Nummer enthält und wie diese aussieht. Aber irgendwann macht man sich vielleicht auch mehr Arbeit als man an Information gewinnt. Das muss jeder für sich selbst entscheiden.

Andere Shopsysteme kommen von Haus aus mit Bestellnummern, die keine Rückschlüsse auf die Anzahl an getätigten Bestellungen zulassen. Auch hier kann man mit dieser Methode leider nichts erreichen.

Fazit

Es zeigt sich, dass es nicht einfach ist, fremde Shops (oder auch Webseiten) zu untersuchen. Wenn wir für die Erfassung der Besucherzahlen von eigenen Webseiten schon verhältnismäßig viel Aufwand betreiben und nach brauchbaren Daten suchen müssen, wie sollen wir (oder andere) das dann erst bei Seiten machen, bei denen wir überhaupt keinen Zugriff auf diese Art von Daten haben?

Und auch die Untersuchung von Shops gestaltet sich nicht einfacher. Hier gibt es zwar theoretisch eine verlässliche Kenngröße, die Bestellnummer, aber auch diese ist anfällig für Schwankungen, die unsere Messergebnisse verfälschen. Sofern wir sie überhaupt “entschlüsselt” bekommen und damit von außen ein nachverfolgbares Muster in diesen Zahlen erkennen können.

Insofern steht der Punkt, dass externe Tools nur sehr, sehr grobe Schätzwerte, basierend auf fragwürdigen Kennzahlen, liefern können und nicht mehr. Man muss sich hier am Ende also auch fragen, ob man diese Daten überhaupt betrachtet oder das sinnvollerweise sein lässt. Schließlich kann es sein, dass man Geschäftsentscheidungen auf Basis der erfassten Zahlen treffen will, und dann sollten diese Zahlen natürlich robust sein.

Es ist schwierig und ich glaub es bleibt nur zu sagen, dass man sich nicht auf solche Zahlen allein verlassen sollte. Und das man natürlich immer mal wieder links und rechts des Weges schauen sollte, wo und wie man gute Kennzahlen erfassen kann.

Coverbild: Agence Olloweb on Unsplash