Google Analytics Spam – Wie wird man ihn los?

4. Februar 2015 - Highlight, SEO - 16 Kommentare

Inhalt:

  1. Warum und wie entsteht der Google Analytics Spam?
  2. Welche Auswirkungen hat der Google Analytics Spam?
  3. Wie man den Spam bekämpft
    1. Anschalten der Filterung bekannter Bots und Spidern
    2. Ausschluss der Referrals und Crawlern/Spidern in der .htaccess Datei
    3. Filterung der Hostnamen in Google Analytics

Übersicht

Fast alle Menschen mit einer Webseite werden es kennen. Man freut sich, dass die Webseite endlich online ist und die ersten Daten in der Google Analytics Übersicht erscheinen.

Nach kurzer Zeit wird man aber stutzig. Das SEO kann so schnell nicht gegriffen haben, da noch nicht alle Seiten indexiert wurden.
Bei näherem Betrachten stellt man im Bereich „Akquisition“ von Google Analytics fest, dass man Traffic von Referrals bekommen hat. Doch solch eine Referral Strategie wurde noch nicht einmal gestartet. Also was ist das? Gibt es tatsächlich einen Gönner der die Seite so stark weiterempfiehlt?

Dann die Ernüchterung, es handelt sich um Google Analytics Spam. Dieser Spam kommt von Seiten wie (bitte diese Seiten nicht aufrufen):

  • darodar.com
  • semalt.semalt.com
  • bestwebsitesawards.com
  • buttons-for-website.com
  • 7makemoneyonline.com
  • anticrawler.org

Aber woher kommt er? Und warum erstellt man solch einen Spam? Hat es Auswirkungen auf mich und wie wird man den Spam los?

Warum und wie entsteht der Google Analytics Spam?

Kurzum, die Leute, die diesen automatischen Google Analytics Spam betreiben, erhoffen sich darüber Einnahmen.

Ausschnitt aus Google Analytics

Ausschnitt aus Google Analytics mit Spam Referrals bei einer neu erstellten Seite.

Früher einmal war es möglich mit solchen Black-Hat-SEO Maßnahmen Einnahmen zu erwirtschaften. Mittlerweile wurde es aber zum Glück von Google massiv eingeschränkt einen Vorteil daraus zu erzielen. Lediglich für uns ernsthafte Webseitenbetreiber ist es immer noch lästig.

Mit Spam Geld verdienen?

Besucht man die Webseitenurls, die in dem Analytics Konto angezeigt werden, kam man früher oft auf Amazon Seiten heraus. Heutzutage landet man meist auf aliexpress.com. Den einzigen Vorteil erzielen diese Spambetreiber also daraus, dass wir über diese Links ihre Seiten geraten und über von uns dort genutzte Angebote, meist durch Provisionen, Geld verdienen.

Wie entstehen diese dubiosen Einträge in Google Analytics?

Diese Referral Einträge entstehen oft über automatische Scripts. Diese rufen nicht mal unsere Webseite auf, sondern nutzen nur unseren Tracking-Code, um einen solchen Eintrag in unserem Google Analytics Konto hinzuzufügen.
Sie erhalten den Tracking-Code nicht über crawling oder sonstige Listen, sondern wählen eine Nummer zufällig aus und treffen dabei leider oft ins Schwarze.

Begeht man den Fehler einem solchen Link aus Neugier zu folgen, wird er meist von dem Spamsystem registriert und eine zweite Welle, meist mit anderen Referrals, wird an unser Konto gesendet.

Daher folgen Sie bitte niemals solchen dubiosen Links.

Welche Auswirkungen hat der Google Analytics Spam?

Dieser Spam hat zum Glück keine großen Auswirkungen auf unser Suchmaschienenergebnis. Allerdings verf’älscht er stark die Webseitenstatistiken.

Zum Beispiel haben diese Spam Referrals eine Absprungrate von 100%. Dies drückt den Durchschnitt sehr stark und macht eine genaue Analyse und die Auslegung einer Strategie unmöglich.

Wie man den Spam bekämpft

Es gibt viele verschiedene Möglichkeiten den Google Analytics Spam zu bekämpfen.
Ich werde hier zwei Möglichkeiten beschreiben, die ich selbst nutze:

  1. Anschalten der Filterung bekannter Bots und Spidern
  2. Ausschluss der Referrals und Crawlern in der .htaccess Datei
  3. Filterung der Hostnamen in Google Analytics

Es gibt noch weitere Möglichkeiten, so kann man zum Beispiel diese Hosts aus dem Tracking-Code von Google Analytics ausschließen. Dies kann aber den gravierenden Nachteil haben, dass solche Einträge nicht mehr als Referral, sondern als richtige Seitenaufrufe gezählt werden und dann nicht mehr gefiltert werden können. Daher rate ich von dieser Methode ab.

1. Anschalten der Filterung bekannter Bots und Spidern

Zu allererst können wir die Filterung von Google in Google Analytics anschalten.

Dazu gehen wir auf „Verwalten“ > „Einstellungen der Datenansicht“

Dort aktivieren wir die Option „Alle Treffer von bekannten Bots und Spidern ausschließen“.

Bots herausfiltern in Google Analytics aktivieren um Spam zu verhindern

2. Ausschluss der Referrals und Crawlern/Spidern in der .htaccess Datei

Man kann diese Referrals ebenfalls in der .htaccess Datei der Webseite ausschließen und auf diesem Weg zwei Fliegen mit einer Klappe schlagen. So gibt es noch andere Spam Möglichkeiten, die unseren Webseiten schaden könnten.
Unter anderem gibt es Bots (Crawler), ähnlich wie die von Google, die kontinuierlich das Internet durchsuchen. Stoßen diese Crawler auf unsere Webseite, lösen Sie einen Eintrag in unserem Google Analytics Konto aus. Diese Crawler sind zumeist auch wesentlich aggressiver und greifen oft auf unsere Webseite zu, um einen höheren Rang in der Referral Liste zu erreichen. Dies erzeugt natürlich viel Datenverkehr und verschwendet daher unnötig Ressourcen unserer Server.

Man kann mit dieser Lösung natürlich den Spam nicht verhindern, da er über Systeme ausgelöst wird, die nicht unsere Webseite besuchen. Diesen werden wir mit der Strategie aus Abschnitt 2 (siehe unten) los.

Es ist recht einfach die .htaccess Datei anzupassen, jedoch sollte man hier vorsichtig vorgehen, um nichts falsches zu ändern. Ein Fehler kann zu internen Serverfehlern (Statuscode 500) führen.

Bei manchen Hostinganbietern kann man diese Datei direkt in der Webspace Verwaltung (z.B. cPanel) ändern. Kann man dies nicht, findet man die .htaccess Datei im root Verzeichnis der Webseite.
Ist dies auch nicht der Fall, so gibt es noch keine und man kann sie dort erstellen.

Um dem Spam Einhalt zu gebieten fügt man folgendes in der Datei hinzu (davor bitte ein Backup der Datei anlegen):


###Block Referrer Spam
SetEnvIfNoCase Referer econom.co spam=yes
SetEnvIfNoCase Referer iloveitaly.ru spam=yes
SetEnvIfNoCase Referer shopping.iloveitaly.ru spam=yes
SetEnvIfNoCase Referer bestwebsitesawards.com spam=yes
SetEnvIfNoCase Referer darodar.com spam=yes
SetEnvIfNoCase User-Agent econom.co spam=yes
SetEnvIfNoCase User-Agent iloveitaly.ru spam=yes
SetEnvIfNoCase User-Agent shopping.iloveitaly.ru spam=yes
SetEnvIfNoCase User-Agent bestwebsitesawards.com spam=yes
SetEnvIfNoCase User-Agent darodar.com spam=yes
Order allow,deny
Allow from all
Deny from env=spam

Der Code besteht aus 3 verschiedenen Segmenten.

SetEnvIfNoCase Referer darodar.com spam=yes

Diese Zeile markiert einen Referrer von einer Seite als Spam (er setzt die Environment Variable spam auf yes). Hier ist es darodar.com.

SetEnvIfNoCase User-Agent darodar.com spam=yes

Diese Zeile fängt einen Zugriff mit dem User-Agent darodar.com ab und setzt ebenfalls die Environment Variable spam auf yes.

Deny from env=spam

Diese Zeile ist nun entscheidend. Sie verbietet allen den Zugriff auf die Webseite, die eine Variable Spam besitzen.

Sollte also mal ein Spam von einer anderen Quelle als der wenigen oben kommen, so kann man sie mit dem hinzufügen von zwei Zeilen, einmal mit Referer und einmal mit User-Agent, schnell ebenfalls ausschließen.

Nach dem man die .htaccess angepasst und wieder hochgeladen hat, sollte man kurz die Funktion der Webseite testen, um auszuschließen, dass ein Fehler unterlaufen ist.

3. Filterung der Hostnamen in Google Analytics

Als nächstes ist es Zeit den Spam aus Google Analytics zu entfernen. Leider ist es nicht möglich bereits bestehende (Spam-) Einträge zu löschen. Jedoch gibt es eine Möglichkeit sie zu filtern und so die alten Daten bereinigt darzustellen.

Dies geht wie folgt:

Neues Segment erstellen

Als erstes erstellen wir eine neue Sektion in Google Analytics.
Dazu gehen wir auf ‚Verwalten‘ > ‚Segmente‘ > ‚+ NEUES SEGMENT‘

Ausschnitt aus Google Analytics

Als nächstes geben wir dem Segment einen Namen, hier „Spam Filter“.
Punkt 2 ist es den Eintrag „Bedingungen auszuwählen“ im Menü auszuwählen. Die Einstellungsmöglichkeiten sollten wie unten abgebildet aussehen.

Darstellung aus Google Analytics

 

Hier gibt man als Filter „Hostname“ an und im zweiten Drop-Down Menü „stimmt mit regulärem Ausdruck überein“.

Nun wird es komplizierter. Der 5. Schritt ist es, den regulären Ausdruck einzufügen.
Was wir von dem regulären Ausdruck dargestellt haben möchten, ist eine Liste von uns bekannten Hosts, die unseren Tracking-Code wirklich verwenden dürfen. Das bedeutet, wir schließen alle Hosts aus, bis auf eine von uns definierte Liste.

Das machen wir wie folgt. Wir geben alle URLs an von den Hosts auf denen wir definitiv unseren Tracking-Code platziert haben. Bei meinem Beispiel ist es rocket.works (mit und ohne www) und meine anderen URLs dieses Webprojektes.
Zusammen sind es also rocket.workswww.rocket.works, rocket-works.de und www.rocket-works.de.

Zusätzlich zu den Domains und ggf. Subdomains, empfiehlt es sich translate.googleusercontent.com der Liste hinzuzufügen. Damit zeichnet man auch die Zugriffe von Nutzern auf, die die Seite über Google übersetzen lassen.

Bei dem regulären Ausdruck nutzen wir das Pipe-Symbol |, um die Einträge voneinander zu trennen. Die Punkte in den URLs müssen wir durch einen Backslash maskieren, da Punkte Sonderzeichen der regulären Ausdrücke darstellen.

Mein kompletter regulärer Ausdruck ist in meinem Beispiel wie folgt:


rocket\.works|www\.rocket\.works|rocket-works\.de|www\.rocket-works\.de|translate\.googleusercontent\.com

Warten wir nach der Eingabe kurze Zeit, können wir anhand der Zusammenfassung auf der rechten sehen, ob wir den Ausdruck richtig eingegeben haben.
Dieser Wert verdeutlicht direkt, wie viele Spameinträge es bereits gegeben hat. In meinem Fall waren dies nicht sehr viele, da ich die Maßnahmen, kurz nach dem ich das Projekt online gestellt habe, bereits angewandt hatte.

Den regulären Ausdruck bitte kopieren, da wir Ihn gleich noch einmal benötigen!

Segment zu den Berichten hinzufügen

Wir können das Segment nun speichern und den Bericht hinzufügen. Dazu einfach oben in den Berichten auf das + klicken und das neu erstellte Segment in der Liste auswählen.

Ansicht eines von Google Analytic Spam bereinigtes Segmente.

 

Neue Datenansicht & Filter erstellen

Um nun zu verhindern das zukünftig überhaupt Einträge von Hosts eingetragen werden, die wir nicht wünschen, müssen wir einen Filter anlegen. Dieser funktioniert genauso wie unser gerade erstelltes Segment.

Damit wir später immer noch die Möglichkeit haben alle Daten, samt möglichem Spam, zu sehen, empfehle ich eine neue Datenansicht zu erstellen. Mithilfe dieser Ansicht können wir immer wieder prüfen, wie viel Spam uns erreicht und ob wir die .htaccess Datei weiter anpassen müssen.

Eine neue Datenansicht kann man über „Verwalten“ in Google Anayltics hinzufügen. Dazu im Dropdown-Menü „Datenansicht“ mit „Neue Ansicht erstellen“ erstellen.

Nun erzeugen wir den Filter. Hierzu wählen wir „Filter“ auf der gleichen „Verwalten“ Seite von Google Analytics aus.

Ansicht für eine neue Datenansicht und Filter um Google Analytics Spam zu verhindern.

Im Menü für Filter erstellen wir mit „+ NEUER FILTER“ einen neuen Filter und geben ihm einen Namen, z.B. „Nur meine Hostnamen“.
Als Filtertyp wählen wir „Benutzerdefiniert“ und „Einschließen“ im erscheinenden Menü. Für das Filterfeld nutzen wir „Hostname“ und fügen unseren, im Segment bereits erstellten, regulären Ausdruck ein.

Übersicht über die Einstellungen für den neuen Filter

Nun speichern wir den Filter. Dieser Filter ist für die ausgewählte Datenansicht aktiv und wird in Zukunft für diese nur noch die Daten aufzeichnen, die von unseren definierten Hostnamen kommen.

Sollten wir in Zukunft weitere Hostnamen benutzen (z.B. weil wir den gleichen Tracking-Code auf einer weiteren Seite einfügen), müssen wir diese natürlich im Filter ergänzen.

Schlusswort

Ich hoffe diese kleine Anleitung wird vielen Webseitenbetreibern bei der Bekämpfung des Google Analytics Spams behilflich sein. Wenn Ihnen der Beitrag gefallen hat und  Sie ihn nützlich finden, so teilen Sie ihn bitte.

Wollen Sie etwas ergänzt haben, Ihre Kritik oder Lob äußern, so können Sie gerne einen Kommentar hinterlassen.

Benötigen Sie Hilfe bei der Beseitigung Ihres Spams oder suchen Sie nach einem Webdesigner?
Kontaktieren Sie mich jederzeit!


16 Comments for “Google Analytics Spam – Wie wird man ihn los?

  • Pascal sagt:

    Hi Dominik

    Super und übersichtliche Zusammenfassung des Referrer Spam Problems. Leider wird das Problem immer schlimmer und es tauschen regelmässig neue Spammer auf. Nachdem das manuelle Hinzufügen von Filtern für Ghost Referrer Spam für uns zu aufwändig wurde, haben wir ein automatisiertes Tool geschrieben, das uns die Arbeit abnimmt: referrer-spam.help
    Das Tool analysiert referrer Daten von allen Nutzern und kann so neue Spammer erkennen und dann automatisch filtern.

    Gruss

    • Dominik Friedrich sagt:

      Hallo Pascal!

      Was ihr da gebaut habt, sieht richtig gut aus! Und auch noch kostenlos! Werde mir das mal angucken!
      Vielen Dank!

  • Günter sagt:

    Vielen Dank! War total baff, wie viel sich da anhäuft. Eigentlich eine Frechheit, was da läuft.

    Günter

  • Dario sagt:

    Hi Dominik,

    sehr gutes Tutorial. Allerdings werden die Daten bei mir nur gefiltert, wenn ich die Punkte im regulären Ausdruck nicht maskiere!

    Bist du dir sicher, dass die maskiert werden müssen?

    Liebe Grüße
    Dario

    • Dominik Friedrich sagt:

      Hallo Dario,

      vielen Dank für deinen Kommentar!

      Ich bin mir sicher, dass die Punkte maskiert werden müssen, da sie sonst einen anderen regulären Ausdruck darstellen würden. Leider hatte ich meinen kompletten Ausdruck im Text oben falsch. Er ist bei mir:
      rocket\.works|www\.rocket\.works|rocket-works\.de|www\.rocket-works\.de|translate\.googleusercontent\.com

      Google hat auch eine kleine Hilfe auf der Eingabemaske eingebaut. Hier der Text von Google:

      Verwenden Sie diese Option, um Zugriffe auf einen bestimmten Host-Namen herauszufiltern. Im Folgenden werden einige der häufigsten Anwendungsfälle für diesen Filter aufgeführt:

      corp\.meine-firma\.de: Dies ist der häufigste Anwendungsfall für diesen Filter. Jeglicher Traffic für Ihre interne Unternehmens-Website “corp.meine-firma.de” wird herausgefiltert, ohne dass die Zugriffe auf Ihre öffentliche Unternehmens-Website “www.meine-firma.de” beeinträchtigt werden.
      org: Filtert alle Zugriffe auf Websites aus, deren Name an irgendeiner Stelle “org” enthält.
      \.net: Filtert alle Zugriffe auf “.net”-Hosts heraus.

      Auch hier sind die Punkte maskiert.

      Ich hoffe ich konnte helfen! 🙂

  • Steve sagt:

    Hallo Dominik,

    danke für den Artikel. Habe meine .htaccess nun nach Deinem Muster mal angepasst. Ich hatte gehofft, dass diese dadurch „geblockt“ werden. Ist dies nicht eigentlich der Zweck dieser Einträge in der .htaccess? Also dass die Zugriffe gar nicht erst erfolgen und dadurch auch nicht in den Statistiken auftauchen?

    Das mit den Segmenten und Filtern in Analytics war anfangs etwas irritierend für mich, da ich dachte, wenn ich da nur meine URLs eingebe, werden andere Referrer nicht berücksichtigt – also die, welche „echt“ sind. Dem ist offenbar aber nicht so. 🙂 Schaue ich nun z.B. in meine Liste der Verweise, werden bei den meisten Ref-Spam-URLs im neu erstellten Segment 0 angezeigt, so soll das auch sein. 🙂

    Aber eben nicht bei allen. Der Spam von best-seo-offer.com oder 100dollars-seo.com z.B. wird allen 32 bzw. 5 Aufrufen geführt. Woran liegt das?

    PS: *offtopic* Die Kommentare Johng895 etc. sind meiner Ansicht nach Bot-Comments – hat es einen bestimmten Grund, dass Du diese stehen lässt?

    • Dominik Friedrich sagt:

      Hallo Steve. Danke für den Kommentar!

      Was du mit der .htaccess blockst sind Bots und Crawler solcher Seiten. Leider blockt man damit nicht die Systeme, die einfach direkt an Google (mit deiner UA ID) einen Referrer eintragen.
      Diese Bots kommen also gar nicht auf deine Seite und werden dadurch nicht durch die htaccess Datei beeinflusst.

      Die Filter in Analytics filtern nicht die Referrer selbst heraus, sondern die Quelle von denen diese Einträge erzeugt werden. Kommt jemand also z.B. über Facebook auf deine Seite, löst der Browser des Nutzers direkt auf deiner Seite den Eintrag aus. Daher bleiben alle wichtigen Daten erhalten 🙂 .

      Was meinst du mit allen? Alle Segmente? Funktioniert der Filter richtig? Hast du eine neue Datenansicht erstellt und dort den Filter eingerichtet?

      PS: Ja, du hast wohl recht. Die Einträge haben seltsame Namen. Ich war mir unsicher, ob es sich vielleicht um echte Nutzer (via. translator) handelt. Aber wohl kaum. Habe die mal in den Papierkorb verschoben :). Danke für den Tipp!

      • Steve sagt:

        Wenn Du dem Pingback folgst findet Du einen Screen der zeigt was ich meine. 🙂

        Ok, verstehe, man kann sowas also gar nicht wirkungsvoll verhindern bzw. ist hier wohl Google gefragt da einzugreifen und soetwas global zu „blockieren“.

        • Dominik Friedrich sagt:

          Ich verstehe. Hast du mein Tutorial komplett durchgearbeitet? 🙂

          Wenn bereits Spam in die Datenansichten gelangt ist, löschen die Filter sie nicht. Erst ab diesem Zeitpunkt wird verhindert, dass neuer Spam eingetragen wird.

          Um den alten Spam aus den (alten) Datenansichten zu filtern, musst du die Segmente benutzen.
          Eigentlich sollte, wenn du das Tutorial genau befolgst, am Ende überhaupt kein Spam mehr sichtbar sein (außer eben ungefiltert).
          Ich habe das schon bei mehreren Projekten und Kunden so eingerichtet und bis jetzt ist alles weiterhin Spamfrei :).

          Zu Google: Google kann sowas nicht verhindern, außer vielleicht eine Liste zu erstellen, die schon vorab ausgeschlossen wird.

  • Sven sagt:

    Hi,
    vielen Dank für diese tolle Anleitung.
    Eine Frage hätte ich jedoch. Ich habe nun alles so eingerichtet, wie es in diesem Tutorial empfohlen wird, trotzdem habe ich in meiner Statistik unter Referrals z.B. bei buttons-for-your-website.com sowohl bei „Alle Sitzungen“ 4 stehen, aber auch bei meinem angelegten Spam-Filter-Segment 4 Sitzungen für buttons-for-…..

    Eigentlich müßte da doch Null stehen, oder? Woran liegt das?

    Gruß
    Sven

    • Dominik Friedrich sagt:

      Hey Sven!

      Eigentlich sollte bei deinem neu angelegten Segment 0 stehen. Bist du sicher, dass der eingerichtete Filter richtig funktioniert?
      Ist der reguläre Ausdruck korrekt?

      • Sven sagt:

        Also, eigentlich ja. Das Segment zeigt mir 87% an und filtert auch einen Teil aus, aber best-seo-offer ist beispielsweise immer noch drin mit 4 Sitzungen statt mit 0.

        Der Ausdruck ist bisher recht simpel: www\.domain\.de|domain\.de
        Mehr ist es nicht.

        Ich habe auch noch einen anderen Ausdruck hinzugefügt, keine Änderung:

        (?:([^. ]+)\.)?(?:([^.]+)\.)?(econom|darodar|ilovevitaly|buttons-for-website|semalt|makemoneyonline|priceg|blackhatworth|best-seo-offer|100dollars-seo|buttons-for-your-website)\.(com?|de|net)

        Hierbei natürlich „Hostname ausschließen“ ausgewählt.

        • Dominik Friedrich sagt:

          Hmmm. Was mir jetzt aus dem Stegreif einfällt ist, dass die Seite vielleicht bei dir „echte“ Einträge erstellt hat. Das bedeutet, dass sie mit einem Bot auf der Seite war (daher am besten die .htaccess Datei anlegen/ändern).

          Sind es denn viele Einträge? Du könntest ein paar Tage warten und dann sehen, ob mehr solche Einträge entstanden sind, wenn ja, muss es etwas anderes sein.

  • Vielen dank für die Informationen. Es ist sehr hilfreich gewesen.

    Gruß Anna

Schreibe einen Kommentar

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

Anfrage:

Ihr Name

Ihre E-Mail-Adresse

Ihre Telefonnummer (optional)

Ihre Firma (optional)

Betreff

Ihre Nachricht

×