Es hat zwar nicht direkte etwas mit Domains zu tun, aber für die Zielgruppe von Peew.de ist das Thema Keyword Recherche sicher genauso interessant wie die Suche nach Expired Domains, weshalb ich mich entschlossen habe diesen Artikel hier zu veröffentlichen. Es geht um das Google AdWords Keyword Tool und wie man die dort gespeicherten Daten ohne das lösen einer Captcha automatisch abfragen kann.
Die richtigen Keywords auszuwählen gehört zum Einmal eins jedes Texters/SEOs, den nur wenn man die richtigen Keywords zu seinem Thema benutzt, finden Besucher die eigene Seite in den Suchmaschinen. Auf der Suche nach den richtigen Keywords kommt man meiner Meinung nach nicht um das Google AdWords Keyword Tool herum. Die Marktmacht von Google und die damit verbundene sehr große Datenbasis machen das Keyword Tool zu einem schönen Spielzeug um schnell an wirklich gesuchte Keywords zu kommen.
Als Fan von automatischen Abfragen habe ich mir schon eine Weile die Frage gestellt wie die SEO Tool Hersteller (zum Beispiel Sistrix) an die Daten des Keyword Tools kommen. Ich konnte mir nicht vorstellen das sie den lieben langen Tag Captchas lösen oder Captcha Breaker einsetzen. Die Antwort auf diese Frage war recht schnell gefunden. Google stellt in der AdWords API auch die Funktionen des Keyword Tools zur Verfügung. Diese kann man mit Hilfe eines SOAP Clients benutzen und kommt so auch ohne Captcha an die gewünschten Keyword Daten. Das ganze hat natürlich einen Hacken, den Google lässt sich diesen Service bezahlen (AdWords API Rate Sheet). Die Preise sind teilweise fair und nicht übermäßig hoch, aber dazu mehr weiter unten.
Ein interessanter Aspekt mit dessen Hilfe man die Ergebnisse verbessern und die Kosten senken kann sind die unterstützten Filter, die die kostenlosen Versionen des Keyword Tools nicht unterstützen. So kann man das monatliche Mindestsuchvolumen angeben um so nur wirklich gesuchte und damit relevante Keywords zu erhalten oder man benutzt den Wettbewerbsfilter um nur Keywords mit geringer AdWords Konkurrenz zu finden. Man kann natürlich auch beides verknüpfen und bekommt so eine gute Basis zum Nichen finden. Außerdem hat man mehr Möglichkeiten die Anzahl an gewünschten Keywords zu bestimmen und bekommt nicht nur fest 100 Keywords angeboten.
Hier nun ein paar Antworten auf Fragen die ich mir zu Beginn gestellt habe und über dessen übersichtliche Beantwortung ich mich sehr gefreut hätte.
Kann jeder Zugriff auf die Google AdWords API erhalten? Welche Voraussetzungen gibt es? Wie kann man die API Kosten bezahlen?
Einschränkungen wer die API benutzen darf habe ich nicht gefunden, aber bei der Anmeldung muss man einen Firmennamen und eine Firmenwebsite (die geprüft wird) angeben. Das macht es einem privaten Entwickler wie mir nicht gerade einfach. *Update* Mein Developer Token wurde nun freigeschaltet, auch als privat Person! Bei der Anmeldung muss außerdem eine Zahlungsart ausgewählt werden. Zur Auswahl steht unter Deutschland nur die Kreditkarte, die man also haben sollte.
Wie lange dauert die Freischaltung des Developer Tokens?
Nach der Beantragung mit Firmendaten hat die Freischaltung weniger als 24 Stunden gedauert, dann war auch der Developer Token einsatzbereit. Bei meiner Privatanmeldung hat es knapp doppelt so lange gedauert. Die AdWords API Sandbox kann auch schon vor der Anmeldung zur API benutzt werden. Man benötigt nur einen Google Account und schon kann die Entwicklung los gehen. Sie liefert natürlich nur Testdaten, aber kostet dafür keinen Pfennig.
Wieso steht in der Related Keywords Antwort kein CPC? Wo bekomme ich ihn her?
Die Traffic Estimation ist von der Related Keywords Funktion getrennt. Man muss also um den CPC zu ermitteln eine weitere Anfrage pro Keyword stellen. Die CPC Berechnung ist sowieso ein sehr seltsames Ding. Hier kommen schon bei der Benutzung der kostenlosen Keyword Tool Versionen unterschiedliche Werte raus und wenn man die unterschiedlichen API Funktionen benutzt bekommt man noch einmal ganz andere Werte…
Die richtigen Funktionen sind estimateKeywordList und estimateCampaignList. Bei der zweiten Funktion kann man auch Regionale Faktoren angeben, während estimateKeywordList weltweite Werte liefert. Eine Anleitung dazu gibt es im AdWords API Blog: Traffic Estimator Service Explained
AdWords API v13/v2009/v201003? Wie bitte?
Die AdWords API wird recht stark entwickelt und so gibt es alle paar Monate eine neue Version. Die aktuelle “Stable Version” ist v2009, aber da diese noch nicht alle Funktionen beinhaltet, muss man zum Beispiel für die CPC Gewinnung noch Funktionen von v13 benutzen. v201003 Beta ist erst seit ein paar Tagen verfügbar.
Was kosten die Funktionen des Keyword Tools über die API?
Die AdWords API wird mit so genannten API Units bezahlt. Bei einem Preis $0.25 pro 1.000 API Units bezahlt man $250.00 für 1.000.000 API Units. Die benötigten Funktionen sind aus v2009 der TargetingIdeaService und möchte man den CPC haben muss man die v13 Funktion TrafficEstimatorService benutzen. Die Funktion v2009->TargetingIdeaService liefert zu einem Keyword die Related Keywords zurück und kostet pro Ergebnis 1 API Unit. Möchte man also zu seinem Wunschkeyword 100 Related Keywords haben, kostet dies 100 API Units oder $0.025. Mit dem Einsatz von BulkMutateJob (ein asynchroner Query) kann man die Kosten noch einmal halbieren.
Mit Hilfe der v13->TrafficEstimatorService Funktionen kann man den CPC abfragen und pro Keyword schlägt dies mit 20 API Units zu Buche. Die Kosten steigen also für die gewünschten 100 Related Keywords + CPC auf 2100 API Units = $0,525. Durch die Benutzung der Filter, kann man die Anzahl an Related Keywords aber einschränken und bekommt so meist weniger als 100 Antworten. Trotzdem ist die CPC Abfrage kein Schnäppchen.
Ganz schön teuer. Was für Informationen bekommt man dafür?
v2009->TargetingIdeaService liefert folgende Felder pro Keyword:
- keyword
- matchtype (EXACT/BROAD/PHRASE)
- targeted_monthly_searches (Suchvolumen pro Monat der letzten 12 Monate)
- global_monthly_searches
- average_targeted_monthly_searches
- ad_share
- search_share
- competition (AdWords bezogen)
- ngram_group (irgend eine Keyword Gruppe, ist aber immer 0)
- keyword_category (scheint die neue Keyword Gruppen Einteilung zu sein)
v13->TrafficEstimatorService liefert folgende Felder pro Keyword:
- loweraverageposition
- upperaverageposition
- lowercostperclick
- uppercostperclick
- lowerclicksperday
- upperclicksperday
Den Average kann man damit berechnen.
Gibt es Beispielcode oder fertige Libraries?
Ja es gibt fertige Java, Ruby, DotNet, Perl, Python und PHP Client Libraries. In PHP kann man für v2009 die AdWords API PHP Client Library benutzen. Will man außerdem v13 benutzen muss man sich mit der älteren APIlity herumschlagen. Die AdWords API PHP Client Library ist komplett Objektorientiert und damit sehr Codelastig. APIlity ist noch aus PHP4 Zeiten und wirft viele DEPRICATE Fehler aus und ist auch sonst kein sehr schöner Code. Beide Libraries enthalten neben den Keyword Tool relevanten Funktionen natürlich auch noch alle weiteren AdWords API Schnittstellen, was sie für meine Zwecke überfüllt und kompliziert machen. Für den Einstieg habe ich sie trotzdem benutzt, aber für die weitere Arbeit werde ich mir eigene, schlanke Implementierungen bauen. Wenn Interesse besteht, kann ich diese auch veröffentlichen.
Welche Funktionen brauche ich genau um ein eigenes Keyword Tool zu bauen?
- v2009->TargetingIdeaService->TargetingIdeaSelector um Related Keywords zu erhalten
- v13->TrafficEstimatorService->estimateCampaignList oder estimateKeywordList für den CPC
Wo kann ich mich für die AdWords API anmelden?
Der Anmeldeprozess wird hier gut erklärt: How do I begin using the AdWords API?
Fazit
Die API ist nicht gerade einfach zu verstehen wenn man komplett neu einsteigt, aber mit ein bisschen Geduld findet man alle Informationen die man braucht und dann ist die Arbeit mit ihr sehr einfach. Die gewonnen Daten sind natürlich Gold wert und ermöglichen viele weitere Auswertungen. Den Kostenfaktor sollte man natürlich nicht aus den Augen verlieren. Besonders die CPC Abfragen können schnell ins Geld gehen, aber mit kluger Systematik und gezielten Abfragen kann man auch mit einem kleinen Budget damit arbeiten.
Das soll es erst mal gewesen sein. Wenn es Fragen oder Anmerkungen gibt hinterlasst mir ein Kommentar oder schreibt mir per Mail. Wenn es Interesse gibt und ich die Zeit finde, schreibe ich einen zweiten Teil der sich mit dem Einstieg in die Programmierung befasst.
Related Links
- Google AdWords API Blog
- Google AdWords Blog (englisch)
- Google AdWords Blog (deutsch)
- AdWords API v2009 Manual
- AdWords API v13 Manual
- AdWords API Forum
- AdWords API FAQ
Hi, ich hätte Interesse an der PHP Einweisung. Ich hab mir die adwords Klassen zwar runter geladen, aber ich weiß irgend wie nich wo ich anfangen muss…
Ein feines Spielzeug, der zweite Teil würde mich sehr interessieren. Danke für diese Einführung!
sehr interessante geschichte. wisst ihr, ob yahoo auch was vergleichbares anbietet? also erstmal überhaupt ein keyword tool und wenn ja, eine api um es automatisch abzufragen.
Es gab bei Yahoo mal Overture, das wurde aber meines Wissens eingestellt.
Hi,
ich lese mich gerade ein und versuche die CPC Daten zu erhalten.
Finde aber leider dazu keinen Call. Haste mal nen Link zum Google Dokument dafür?
THX
Herbert
@Dreamworker: das steht oben im Text unter “Welche Funktionen brauche ich genau um ein eigenes Keyword Tool zu bauen?”
Das zweite ist für den CPC da.
@kostaki: yep! dies habe ich auch durchgesehen.
Als Request Möglichkeit finde ich über Deinen Link zur CPC Abfrage “upperCpc” & “lowerCpc”. Im Trafficestimator Tool wird jedoch nur ein Wert (Durchschnitt) angeben. Die Rückgabewerte sind nicht logisch und ein Durchschitt wäre ja zu erechnen. Aber die Werte passen nicht. Daher meine Frage wie man den CPC erhält oder welche Opearation aus den Rückgabewerten den CPC ergeben.
@Kostaki: Habe es rausgefunden…..
Schön.
Es gibt keinen average CPC von der Schnittstelle. Diese liefert nur nen lower/upper CPC. Aus den Werten kann man sich aber seinen eigenen average CPC berechnen. So macht es das kostenlose keyword tool auch. CPC Berechnung scheint aber kompliziertes Glücksspiel zu sein. Der verändert sich an manchen stellen recht schnell. Ich habe es aber mit den richtigen Filtern hin bekommen den gleichen average CPC zu berechnen wie die google Variante, von daher denke ich das es so richtig ist.
[...] [...]
Den globalen CPC bekomme ich schonmal via PHP abgefragt, immerhin. Etwas gebraucht habe ich, um zu kapieren dass in das Feld “clientEmail” nicht nochmal meine Mailadresse reinmuss, sondern die eines neu innerhalb des MCC-Accounts erstellten Unteraccounts.
Ich habe noch zwei Probleme:
1.) Obwohl ich nur ein Keyword “Exact” abfrage, werden mir 100 Units pro Abfrage berechnet. Müsste es nicht nur 1 Unit sein? Wo mag mein Fehler liegen?
2.) Um an die geotargetted CPCs zu kommen, muss ich einen CampaignRequest statt eines KeywordRequests machen. Doch da wird nach einer Campaign-ID gefragt. Und wie übermittel ich dann das Keyword? Oder muss für jedes Keyword erstmal eine Campaign erstellt werden und dann nochmal ein KeywordRequest hinterhergeschoben? Fragen über Fragen…
Vielleicht ist ja schon jemand etwas weiter als ich und mag helfen
Ja die Einstellungen sind anfangs etwas kompliziert, leider auch wenn man die Libraries benutzt…
zu 1: Ich denke mal du meinst den TargetingIdeaSelector? Bei diesem bezahlt man anhand der zurück gegebenen Keywords. Wenn du 100 Units abgezogen bekommst, dann werden da auch 100 Keyword zurück kommen. Willst du nur 1 Keyword checken, dann musst du RequestType auf STATS setzen.
zu 2: Du musst dafür nicht estimateCampaignList benutzen. Du kannst auch estimateKeywordList benutzen und damit ohne Campaign id den CPC abfragen.
Ich hoffe das hilft, wenn nicht einfach weiter fragen
meine Güte..
hab noch nie etwas von dieser Adwords-Api gehört, ich hab mich jahrelang mit selbst geschriebenen Tool herumgeschlagen mit Anbindung an ein Decaptcher-Solver.. Liesst sich alles gut was die Api anbietet, aber sieht alles auf den ersten Blick etwas kompliziert aus… und kostspielig. Muss man die 250 USD im Voraus bezahlen? oder kann man auch mit 50 die Api nutzen? Ich brauche keine Million von Tokens, die Adwords-Keyword Abfragen nutze ich vielleicht ein mal in der Woche..
Mike.
Das geht natürlich auch.
Du kannst selbst festlegen wie viel du Monatlich verbrauchen wirst und es wird nicht im voraus abgebucht!
[...] AdWords Keyword Tool lässt sich auch recht komfortabel via AdWords API automatisch abfragen. Wie das geht, wird bei Peew.de erklärt. Einen kleinen Haken hat die Sache allerdings: Google lässt sich diesen Service bezahlen, auch [...]
Ich habe auch schonmal ein bisschen mit der API rumgespielt, allerdings nur in der Sandbox.
Es gibt dazu ein nettes Programm von dem man den Quellcode einsehen kann und einige schlüsse daraus ziehen kann, wie das ganze funktioniert.
Mit diesem Programm kann man sich auch anschaun, was man in der Sandbox bewirkt hat, wenn man zum Beispiel neue Kampagnen angelegt hat etc.
Wer sich für die Programmierung von solchen Anwendungen interessiert, sollte sich das vielleicht mal anschauen
http://code.google.com/p/google-api-adwords-java/wiki/SandboxAccountViewer