Aus aktuellem Anlass ist das Thema des heutigen Artikels Referrer-Spam, und wie man Google Analytics so konfiguriert, dass diese unerwünschten Aufrufe gefiltert werden. Da unsere Webseite seit einigen Wochen von Referrer-Spam überflutet wird, musste schnellstmöglich eine Lösung gefunden werden. Nach einer ausgiebigen Recherche haben wir das Problem mit zwei kleinen Änderungen an Google Analytics gelöst.
Referer Spam ist eine besondere Art von Suchmaschinen-Spam und basiert darauf, dass die Log-Dateien von gewissen Webseiten für Suchmaschinen-Crawler zugänglich sind. Ein Bot ruft nun hunderttausende oder gar Millionen von Webseiten auf. Als Absender für den Aufruf gib er die (Täter-) Webseite an. Diese Webseite bekommt nun einen Link von allen aufgerufenen Webseiten, welche ihre Log-Dateien nicht geschützt haben. Denn wenn der Bot eine Webseite aufruft, wird dies in einer Log-Datei gespeichert, und wenn der Absender dieses Aufrufs eine Webseite ist, steht diese dann ebenfalls in der Log-Datei. So entsteht ein Link auf einigen Webseiten. Des Weiteren gibt es verschiedenste Web-Crawler, welche Webseiten sehr oft besuchen und damit die Statistiken verfälschen.
Durch die massenhaften Aufrufe einer Webseite werden alle wichtigen Statistiken, wie zum Beispiel die Conversion Rate, die Bounce Rate etc. stark verfälscht und dadurch nutzlos. Besonders bei kleineren Webseiten ist das Problem schwerwiegend, da diese weniger Traffic als grössere haben und somit die Verfälschung prozentual höher ist. Auf dem Bild links erkennt man dies gut. Eine extrem hohe Absprungrate, zusammen mit einer kurzen durchschnittlichen Sitzungsdauer sind die Folge von Referrer-Spam. Zusätzlich ruft der Bot jeweils nur die Startseite einer Webseite auf, darum ist Seiten/Sitzung sehr tief.
Diese unerwünschten Spam-Versuche müssen gefiltert werden. Mit zwei kleinen Anpassungen an Google Analytics lassen sich diese zukünftig und auch rückwirkend aus den Statistiken entfernen. Wir brauchen ein neues Segment, um die Statistik rückwirkend zu bereinigen, sowie einen Filter, um damit zukünfige Spam-Versuche direkt zu filtern.
Um einen rückwirkenden Filter einzurichten, muss man die Verwaltung der Webseite in Google Analytics aufrufen. Dazu loggt man sich ein, klickt auf die gewünschte Datenansicht und dann oben rechts auf „Verwalten„.
Rechts unten, unter dem Titel „PERSÖNLICHE TOOLS UND ASSETS“ klickt man auf „Segmente“ und dann auf den Button „+ NEUES SEGMENT„. Damit wird eine neues Segment erstellt.
Nun zu den Einstellungen des Segments. Zuerst muss es benannt werden. Einfachheitshalber habe ich den Namen „Referrer-Spam Filter“ gewählt. Danach muss das Segment so angepasst werden, dass es die Spam-Versuche filtert. Dazu klicken wir unter „Erweitert“ auf „Bedingungen“ und stellen folgendes ein:
Filter „Sitzungen„, „Ausschliessen„,
„Quelle/Medium„, „stimmt mit regulärem Ausdruck überein„,
„.*((darodar|priceg|semalt|buttons\-for\-website|makemoneyonline|blackhatworth|hulfingtonpost|bestwebsitesawards|o\-o\-6\-o\-o|(social|simple\-share)\-buttons)\.com)|((ilovevitaly|econom)(\.co(m)?|\.ru))|((humanorightswatch|4webmasters)\.org).*“ Ohne „“
Dann noch speichern, und schon ist der rückwirkende Filter erstellt. Um ihn zu aktivieren, kann er als zusätzliches oder einziges Segment in der Datenansicht ausgewählt werden.
Dazu einfach in der Datenansicht auf das Segment „Alle Sitzungen“ klicken, und dort das neu erstellte (Filter-) Segment auswählen.
Schon sind die ungewünschten Aufrufe gefiltert.
Falls nicht der gesamte Spam gefiltert wird, könnte dieser zusätzliche Filter (erstellt von Karsten Zachary) helfen:
„^(microsoft corp(oration)?|inktomi corporation|yahoo! inc.|google inc.| stumbleupon inc.)$|gomez“ Ohne „“
Gegebenenfalls müssen auch noch weitere Wörter in die Regex aufgenommen werden, um den gesamten Spam zu filtern.