Traffic & Backlinks mit YouTube [Case Study]

Ich habe vor ein paar Monaten eine neue Domain registriert und ein kleines Projekt aufgesetzt (10 Seiten Content):

  • Relativ kompetitives Hauptkeyword (Produktbezeichnung)
    • 135.000 exaktes Suchvolumen
    • 500.000 bei “weitgehender Übereinstimmung” (lt. Google Keyword-Tool)
    • AdWords-CPC bei 0,50 €
    • Der Preis des beworbenen Produkts liegt zwischen 20 und 180 Euro
    • steigende Nachfrage (siehe dazu den Trend der Suchanfragen)
    • Präsenz von Affiliate-Seiten ist vorhanden, auch wenn man den Eindruck gewinnt, dass die Projekte lieblos bis nicht bearbeitet werden. Mag aber auch an der Nische liegen:
    • Themenbereich: Kosmetik/Schönheit
  • Domain wurde frisch registriert – enthält das Hauptkeyword + Suffix, hat also nur minimalen bis keinen “Keyworddomain-Bonus”
  • Selbst erstelltes, wie ich finde ganz gut gelungenes, authentisches Design. Etwas klischeehaft lila-pink ist es geworden, aber es wirkt nicht kalt und SEO-mäßig. Ich glaube an Design und denke das hilft.

Jetzt galt es, die Seite mit Backlinks zu versorgen. Man hat in der Nische viele schöne Möglichkeiten, sei es jetzt Linktausch mit anderen SEOs oder Gastposts in den zahlreichen Blogs, die es da gibt. Wer sich immer noch dem Vorurteil der technikfernen Frauenwelt hingibt, sollte einen Blick auf die Beauty-Blogosphäre werfen, die wirklich gut vernetzt und ziemlich aktiv ist.

Aber das dauert und Artikel und Gastposts schreiben kostet in Bereichen, mit denen man sich wenig auskennt, entweder Nerven, Zeit, Geld oder alles zusammen. Ein recht erfolgreiches Experiment war da Werbung auf YouTube.

Werbung mit YouTube und ohne AdWords

Statt nervige Banner zu buchen, habe ich ein qualitativ gutes Produkt, das ich auch auf der Seite bewerbe, gekauft (35 €) und nach voriger Absprache an eine YouTube-Nutzer geschickt. Besagte YouTuberin ist mit über 80 Videos rund um das Thema Kosmetik nicht neu im Geschäft, aber mit 5.000 Abonnenten noch eher ein Underdog. Ein durchschnittliches Video von ihr bekommt rund 10.000 Views.

Als Gegenleistung hat sie ein Testvideo für das Produkt gedreht und meine Website prominent eingeblendet, darauf hingewiesen und in der Sidebar verlinkt.

  • Das Video wurde bisher rund 8.500 mal angesehen
  • 1.200 Besucher kamen dadurch auf meine Website
  • Das ist eine CTR von 14,11 % (nur die Besucher mit YouTube-Referrer gezählt. Rechnet man die Type-Ins dazu, wird sie noch besser).
  • Das bedeutet einen theoretischen CPC von ungefähr 0,03 € (35€ / 1200 Uniques) für schönen targetted Traffic.


(Klicken zum Vergrößern)

Backlinks

Als Linkbait habe ich ein Gewinnspiel veranstaltet, das auf der Website sehr prominent angepriesen wird. Der Gewinn war ein hochpreisiges Produkt aus der beworbenen Nische, das jeder gerne hätte. Die einzige Bedingung zur Teilnahme war, einen Link auf die Website zu setzen. Das ist plump, aber ohne die Bedingung hätte es kaum so funktioniert, denke ich.

Rechnet man die Teilnehmer weg, die ihre private Facebook-Seite mit dem Link versehen oder ihn irgendwie anders wertlos machen, komme ich auf 60 generierte Backlinks aus Blogs, meistens von Subdomain-Bloghostern, aber durchaus auch von Blogs mit eigener Domain. Von Twitter-Accounts, von Foren-Profilen, Signaturen, etc. pp. Das sind alles keine Killer-Links, aber der Mix stimmt und es sieht natürlich aus. Zu bedenken ist auch, dass die Links oft in themenrelevantem Kontext auftauchen, weil die Blogs und Foren in der Regel irgendetwas mit Schönheit oder Kosmetik zu tun haben und gut mit Content gefüllt sind.

Über die generierten Links kommen noch mehr Leute, und spätestens wenn das erste “Gewinnspiel-Blog” darüber schreibt und 20 weitere folgen, kann man das viral nennen. In kleinem Maßstab, aber es läuft von selbst.

Mittlerweile ist die Website für das Hauptkeyword auf Platz 17 neu eingestiegen, ich bin gespannt wie sich die Rankings verändern, wenn die ganzen Backlinks in Googles Ranking-Hirn angekommen sind.

Habt ihr schonmal ähnliche Experimente gemacht? Was für Effekte habt ihr bemerkt?

Externe Domains bei All-Inkl.com aufschalten

Ich wusste nicht genau, wie ich meine Domains (die ich sehr zufrieden und günstig bei INWX.de registriert habe), auf meinen Account bei all-inkl.com aufschalte.

UPDATE:

Wie Kostaki in den Kommentaren bemerkt hat, geht es noch einfacher. Die Domain im KAS eintragen und dann die IP des Servers in den inwx-DNS eintragen. Das sieht so aus:

Die Antwort des Supports (die innerhalb einer Minute kam):

Hallo Herr Blümer,

um dies zu realisieren gehen Sie bitte wie folgt vor:

1. Sie müssen die Domain bei uns im KAS unterhalb Ihres Accounts anlegen. Nach ca. 30 Minuten erkennen unsere Nameserver automatisch, dass eine neue Domain angelegt wurde.

2. Jetzt müssen Sie bei dem Provider, wo die Domain liegt, unsere Nameserver (wie unten genannt) eintragen.

Unsere Nameserver lauten:

ns5.kasserver.com = 85.13.128.3 (IP)
ns6.kasserver.com = 85.13.159.101 (IP)

Sollten Sie selbst direkt bei der nic.ch eine Domain registrieren und dort unsere Nameserver eintragen wollen, so verwenden Sie bitte auschließlich nur den ns3- und ns4-Nameserver, der wie folgt lautet:

ns3.kasserver.com = 85.13.128.2 (IP)
ns4.kasserver.com = 85.13.140.2 (IP)

Hinweis! Bitte prüfen Sie bei dem Anbieter/Registrar wo Sie unsere Nameserver eintragen möchten, ob auch wirklich eine Änderung der Nameservernamen vorgenommen wird. Nicht selten muss man an dieser Stelle eine IP-Adresse eintragen, aber nicht die IP-Adresse der Nameserver, sondern die IP-Adresse des Zielserver auf dem Ihre Hauptdomain freigeschalten ist.

Bei weiteren Fragen stehen wir Ihnen selbstverständlich im Rahmen unserer Möglichkeiten jederzeit gern beratend zur Verfügung.

Mit freundlichen Grüßen
Ronny Kretschmar
Support Team

Wie man Twitter-Spam (nicht) betreibt

Wer mir noch bis vor Kurzem auf Twitter folgte, hat vielleicht gemerkt, dass er das jetzt nicht mehr tut. Das passiert nämlich, wenn Twitter einen Account sperrt (“This account ist suspended [...]“): Keine Follower mehr, die eigene Following-Liste wird gelöscht und bis auf den Accountinhaber kann niemand die Twittertimeline des Accounts aufrufen ohne von der Nachricht über die Accountsperrung gestoppt zu werden.

Das ist mir Anfang Februar passiert. Nicht ganz ungerechtfertigt:

Ich habe auf Twitter gespammt. Bei weitem nicht so viel wie die Großen, aber doch durchaus ein bisschen. Während sich andere riesige Accounts aufbauen, indem sie automatisch irgendwelchen Accounts followen und un-followen, um damit die wenigen echten Follower, die sie damit “nebenbei” sammeln mit Werbung vollzutexten oder Werbedienste auszunehmen, oder die Real-Time-Search mit ihren Affiliate-Links zu füllen, habe ich mich am klassischen @reply-Spam versucht. Jemand schreibt einen Tweet, mein Bot antwortet mit “@username blablablabla http://link.com”.

Die Motivation dahinter war auszuprobieren wie die API funktioniert, wo die Limits sind, wie und wann Twitter den Spam erkennt und wie viel (wenn überhaupt) man damit verdienen kann.

Theorie

Monetarisieren wollte ich den Spam über Amerikanische Amazon-Affiliate-Links. Amerikanische deshalb, weil Twitter in Deutschland bei der breiten Bevölkerung noch keine wirklich nennenswerte Verbreitung hat. Ein Tweet à la

“Oh, need a new laptop? Amazon’s got some good offers http://bit.ly/cX3oxI”

und fertig ist die Kiste. Die Leute klicken auf den Link und wenn sie in den Laptop-Suchergebnissen nichts finden, stoßen sie vielleicht auf irgendwas anderes was sie noch brauchen. Mit 5% Provision und 24 Stunden Cookie-Lifetime nicht der Renner, aber für’s Erste einfach umzusetzen und jeder kennt und vertraut Amazon.

Zunächst habe ich mir überlegt wie man möglichst effektiv spammen kann, mit hoher CTR & hoffentlich einer vernünftigen Conversion. Deswegen und auch in Anbetracht der gegebenen Limits (mehr dazu weiter unten), sollte man die Tweets so gut wie möglich targetten. Man könnte nach Tweets suchen, die ein Stichwort (z.B. “laptop”) enthalten und mit einem Link zu Laptop-Angeboten antworten, aber da nur sehr wenige der dabei gefundenen Tweets mit einer Kaufintention verbunden sind und eine Spamantwort darauf null Erfolgsaussichten hätte, muss man die Suche verfeinern.
Sucht man nach Keyphrases wie “get a laptop”,”buy a laptop”,”need a laptop” aber auch “laptop is broken” usw., liefert das Tweets, die zu rund 70-80% tatsächlich aussagen, dass der Twitterer gerne einen neuen Laptop hätte – es lohnt sich also zu antworten. Der zweite Effekt ist, dass die Antworten oftmals nicht als Spam wahrgenommen werden, weil sie so gut getargetted sind. Das resultiert in weniger Spamreports und einem geringeren Risiko dass ein Account gemeldet und gesperrt wird.

Die Limits

Twitter hat eine tolle und einfach bedienbare API, aber sie hat Einschränkungen. Pro Account und IP kann man sie höchstens 150 mal pro Stunde aufrufen. Um nicht aufzufallen, darf man es nicht übertreiben. Ein Tweet pro Minute ist denke ich noch im Rahmen, die Accounts bleiben nicht bemerkenswert länger bestehen wenn man nur alle zwei Minuten eine Nachricht zwitschert. Weniger als das macht wenig Sinn, weil man dann wesentlich mehr Accounts braucht, um ein brauchbares Tweet-Volumen zu erreichen.

Auf jeden Fall zu unterlassen: 100 Tweets innerhalb von 30 Sekunden. Bei solchen Extremen springt sofort der Filter ein und der Account wird automatisch abgeschaltet. Wie viel Automatisierung dahintersteht wenn ein Account 3 Tage überlebt und dann auf einmal gekillt wird, ist schwer zu schätzen, baut aber wohl hauptsächlich auf Spam Reports auf, jedenfalls wurden Accounts immer innerhalb von ein paar Stunden gesperrt sobald eines der Spamopfer antwortete, er habe den Account gemeldet.

Aufbau

Das ganze beruht auf einfachen PHP-Skripten und Cronjobs, das heißt die Skripte wurden automatisiert einmal pro Minute aufgerufen. Die API habe ich über die curl-Befehle, die PHP anbietet, aufgerufen. Dank der besagten Limits pro IP und Account muss man verteilt arbeiten und von verschiedenen IPs aus senden. Das erledigen die Clients.

Ein Client besteht aus einem einfachen PHP-Skript, das man zwecks IP-Diversität bei möglichst vielen Webhostern hochlädt. Dann einfach die Adressen zu den Skripten in die Cronjob-Liste (crontab) eintragen und sie minütlich aufrufen lassen. Idealerweise trägt man die Cronjobs auf einem Server ein der rund um die Uhr läuft, ich habe dazu den vServer Bronze von netcup benutzt, speed- und performancetechnisch kann man für 4 Euro im Monat nicht meckern. Wenn man dann eine gewisse Menge solcher Clients hat, wird es irgendwann unübersichtlich und damit man nichts mehr an ihnen ändern muss, macht man sie simpel. Sie tragen dazu die Adresse eines zentralen Servers (gleich mehr dazu) in sich, können von dort Daten abfragen und Tweets posten, mehr nicht.

Der Server, auch nur ein PHP Skript, das automatisch aufgerufen wird, ist das eigentliche Hirn des Spamprogramms. Zum Speichern von Daten habe ich eine MySQL Datenbank benutzt und zwar für

  • Accountdaten von den zuvor angelegten Spam-Accounts
  • Die Satzbausteine, auf die reagiert werden soll (“Signale”) in Verbindung mit den passenden Antworttweets.
  • Gefundene Tweets, die ein solches Signal enthalten.
  • Eine Liste mit Tweet-IDs (jeder Tweet hat eine eindeutige Nummer), um festzustellen welche Tweets man schon beantwortet hat und welche nicht.

Das Server-Skript sucht – auch über die API – nach Tweets, die Signale erhalten. Schreibt jemand

“omg i t0ld my cousin to get a laptop, srsly hes such a douche n should rathr buy an iPad lawlz^^”

oder

“Mmmh damn it, my laptop is broken, I want to buy a really expensive new one on Amazon like right now”

dann wird der Tweet (inklusive ID und Absender) in der Datenbank gespeichert.

Wenn nun eine Minute vergangen ist und der Cronjob ein Client-Skript aufruft, stellt es eine Verbindung zum Server-Skript her. Das Server-Skript sendet einen Fetzen XML an den Client. Das sieht etwa so aus:

<user>
<username>douchyDork76</username>
<password>legendary</password>
</user>
<tweet>
<answerTo>ActuallyNPH</answerTo>
<answerToID>8564898333</answerToID>
<answer>Oh, need a new laptop? Amazon’s got some good offers http://bit.ly/cX3oxI</answer>
</tweet>

Sicherheitstechnisch nicht das Gelbe vom Ei, aber es sind ja ohnehin nur Spamaccounts. Dadurch werden die Clients von den Accounts entkoppelt und wenn ein Account gesperrt wird, löscht man ihn eben aus der Datenbank mit den Accountdaten. Das habe ich immer per Hand gemacht, einfach alle zwei Tage mal durchgehen was noch läuft und was nicht, könnte man aber auch leicht automatisieren.

Aufbau meines Twitter-Spams

Die übermittelten Daten benutzt der Client dann, um den Tweet abzusetzen.

Auch wenn man es anders regeln könnte, ich bin immer dabei geblieben, immer nur mit einem Account von einer IP zu zwitschern, alles andere sähe ziemlich unmenschlich und damit spammy aus.

Und das ist es, gar nicht kompliziert.

Warum habe ich aufgehört?

Weil mein normaler Twitter-Account (@justusbluemer) gesperrt wurde. Erklären kann ich mir das nur so: Ich hatte, während ich frische Spamaccounts erstellt habe, immer Tweetie offen, also einen ganz normalen Client der ganz legitim minütlich nach neuen Nachrichten gesucht hat. Als dann eine gewisse Zahl meiner Spamaccounts gesperrt waren haben Sie sich wohl die IPs angeschaut und haben gemerkt, dass @justusbluemer die gleiche IP hat, die auch ständig Spam-Accounts registiert. Ärgerlich und auch nach mehrfachen hin und her mit dem Support wollte man meinen Account auch nicht wieder entsperren. Immerhin habe ich wenigstens den Accountnamen wieder. Beim gesperrten den Namen & die EMail-Adresse ändern, einen neuen mit den selben Daten registrieren und gut ist.

Fand ich frustrierend und habe mir gesagt ich stecke meine Zeit lieber in sinnvollere Aktivitäten.

Beobachtungen

  • Der Spam war tatsächlich gar nicht schlecht getargetted. Sucht man mal nach Signal-Tweets, merkt man, dass echt viele eine Kaufintention haben. Sieht man auch an den Antworten, die die Spamaccounts bekommen. Viele, die den Bot als solchen erkennen, ihm aber trotzdem antworten, und ebenso viele, die sich für den hilfreichen Tip bedanken. Hier ein Beispiel von Antworten an einen der Spamaccounts: https://twitter.com/#search?q=%40unlimited23 Damit hätte ich nicht gerechnet!
  • Die CTR war echt gut – selbst wenn es ein Spamlink ist, die Leute klicken noch gerne
  • Meine Tweets waren ausschließlich auf Englisch und die Empfänger fast ausschließlich in den USA. Meine Client-Skripts aber waren ausschließlich auf deutschen Servern. Wie man sehen kann, haben aber aus Deutschland doppelt so viele Leute geklickt wie aus den USA. Wo haben die den Tweet gesehen? Real-Time-Suche? Twitter Trends? Ich habe keine Ahnung!
    Das wäre richtig interessant, da mal einen Test zu machen und von amerikanischen Servern zu twittern – kommen dann alle Klicks aus den US of A?
  • Twitter ist gar nicht dumm und erkennt Spammer besser als ich dachte. Wobei mein Spam auch wirklich simpel gestrickt war.
  • Um wirklich viel Tweet-Volumen aufbauen zu können braucht man viele Signale. Da reicht es nicht, nur auf Laptops, Kameras und Handys zu reagieren und wenn man die Sache ernsthaft angeht wird man nicht umhin kommen, das komplett zu automatisieren und vernünftige Produktlisten einzusetzen mit Modellnamen, etc. pp.
  • Gegenständliche Produkte haben meistens miese Provisionen. Amazon ist zwar ein toller Onlineshop, aber die Wahrscheinlichkeit, dass jemand wegen eines Spamtweets einen hochpreisigen Fernseher kauft, ist doch wirklich sehr sehr gering. Handyverträge, Kredite, Poker, es gibt genug zum experimentieren.
    Entsprechend mager waren meine Einkünfte. Obwohl ich teilweise mehrere tausend Tweets am Tag verschickt habe, war die Conversion so mies, dass ich manchmal rein gar nichts losgeworden bin und wenn, dann hielt es sich meistens bei kleinen Produkten bis 20$, die mit dem ursprünglich von mir beworbenen Produkt nichts zu tun hatten.
  • PHP ist eine tolle Sprache und curl extrem vielseitig.
  • Ausprobieren macht Spaß.

Über einen ganz unspammigen Tweet über diesen Artikel und über neue Follower für @justusbluemer würde ich mich sehr freuen!