Crawling und Indexierung umfangreicher Webseiten

Sobald Webseiten den typischen Umfang einer privaten Homepage übersteigen, gibt es zahlreiche neue Herausforderungen. Eine davon ist, dass die vorhandenen Inhalte möglichst vollständig und aktuell in den Google-Index gehören.

Was sich so einfach anhört, birgt gerade bei sehr großen Webseiten, deren Inhalte aus zahlreichen unterschiedlichen Datenbanken und von verschiedenen Zulieferern kommen, ungeahntes Potential für schwerwiegende Fehler.

Da sogar bei Google die Ressourcen für das Erfassen und Speichern von Webseiten begrenzt sind, nutzt Google hierfür individuelle Begrenzungen pro Domain: wie viele URLs werden pro Tag gecrawlt, wie viele dieser Seiten davon dürfen in den Googleindex?

Umfangreiche Webseiten stoßen schnell an diese Grenzen. Daher ist es wichtig, die verfügbaren Ressourcen möglichst intelligent und produktiv einzusetzen. In diesem Blogposting möchte ich kurz die Hintergründe erläutern, mögliche Verfahren zur Steuerung vorstellen und ihre Vor- und Nachteile aufzeigen.

Crawling-Budget & Index-Budget

Auch wenn diese beiden Begriffe inhaltlich eng zusammenhängen, gibt es doch wichtige Unterschiede. Um diese zu verstehen, schaut man sich den schematischen (und vereinfachten) Aufbau einer Internetsuchmaschine an:

Google Search-Algorhitmus als visuelles Schaubild

Damit Inhalte einer Domain überhaupt die Chance haben, für einen gesuchten Begriff in die engere Auswahl des Ranking-Algorithmus zu kommen, müssen sie zuerst durch den Crawler gefunden sowie erfasst und schließlich in den Index aufgenommen werden.

Google hat für das Verhalten des Googlebot einige Annahmen getroffen, die dafür sorgen, dass der Googlebot zwei Ziele erreicht: neue Inhalte schnell zu finden und tief in der Seite versteckte Inhalte zuverlässig auszulesen. In welchem Umfang Google hierbei vorgeht, hängt vom Crawling-Budget der Domain ab.

Google hat bislang Vorstöße zur Gleichstellung aller Domains abgewehrt und weist jeder Domain ihre eigenes Crawling-Budget zu. Dieses Crawling-Budget bestimmt maßgeblich, wie häufig der Googlebot die ersten Ebenen einer Domain crawlt und wie tief ein regelmäßigen “Deep-Crawl” der Domain stattfindet.

Ähnlich sieht es mit dem Index-Budget aus: dieses bestimmt die maximale Anzahl der URLs einer Domain, die in den Google-Index aufgenommen werden. Wichtig ist im Hinterkopf zu behalten, dass nur URLs, die regelmäßig vom Crawler erfasst werden, auch dauerhaft im Index bleiben werden.

Deine Feinde: Webentwickler, JavaScript und allgemeines Chaos

In der Theorie könnte die Welt so einfach sein: jedes inhaltlich zusammenhängende Stück Content hat genau eine, logische und sprechende URL. Die URL bleibt für die nächsten Jahrzehnte bestehen.

Die Praxis sieht leider oft anders aus: Webentwickler bauen mal eben die dritte Druck-Version des Artikels, der Googlebot lernt wieder etwas JavaScript und erfindet damit komplett neue URLs und nach dem dritten CMS-Relaunch in zwei Jahren ist von dem ursprünglichen URL-Konzept auch nicht mehr viel übrig.

Allen Problemen gemein ist, dass sie zu einem Effekt führen: Google wird die URLs crawlen und damit Crawling-Budget der Domain verbrauchen. Gerade bei umfangreichen Projekten wird diese Crawling-Power häufig an anderen Stellen fehlen.

Das kann dazu führen, dass die Domain nicht die ihr maximal zugestandene Seitenanzahl im Google-Index belegt und somit unterhalb ihres möglichen Longtail-Potentials bleibt.

Panda- & Duplicate-Content-Schreck: Indexhygiene

Es sollte mittlerweile deutlich geworden sein, dass eine gezielte Steuerung von Crawling sowie Indexierung einer Domain bei umfangreichen Webseiten nahezu unumgänglich ist.

Als Bonus ergeben sich dadurch sogar noch weitere Vorteile. So bemüht Google sich zwar seit Jahren zu beteuern, dass Duplicate-Content für sie überhaupt kein Problem darstelle, die Realität spricht jedoch leider eine andere Sprache.

Ordnung und Systematik im Crawling helfen dabei, mögliche interne Duplicate-Content-Probleme früh zu erkennen und gegenzusteuern. Und auch bei einem der pelzigen Schreckensverbreiter können eher wenige, dafür qualitativ hochwertige Inhalte im Index helfen: Google Panda.

Wähle Deine Waffen: robots.txt, noindex, canonical

Soweit zur Theorie, jetzt kommt die Praxis: wie halte ich meine Domain sauber? Zum Glück gibt es mittlerweile ein sehr großes und umfangreiches Arsenal an Werkzeugen, um zum Ziel zu kommen. Ich möchte die wichtigsten mit ihren Vor- und Nachteilen kurz vorstellen.

Robots.txt-Datei

Anweisungen in der robots.txt-Datei sind das älteste Instrument, um Suchmaschinen am Besuchen von bestimmten Inhalten zu hindern. War die Syntax anfangs noch recht simpel, hat insbesondere Google mittlerweile zahlreiche Erweiterungen implementiert und ermöglicht so die Abdeckung fast aller Fälle.

Der Vorteil der robots.txt: der Googlebot wird die so gesperrten Inhalte gar nicht erst besuchen, es fällt also kein Crawling-Budget an. Der Nachteil: wenn Google davon überzeugt ist, dass die Inhalte trotzdem wichtig sind (weil beispielsweise viele externe Links auf genau diese URL zeigen), wird die URL trotzdem in den SERPs angezeigt – nur ohne Titel und Snippet.

Noindex-Anweisung

Die Noindex-Anweisung bezieht sich immer auf eine spezifische URL. Sie kann entweder als Meta-Tag im HTML der Seite hinterlegt werden oder aber im HTTP-Header stehen.

Letzteres ist insbesondere für andere Dateiformate wie PDF- oder Word-Dokumente interessant. Um die Noindex-Anweisung beachten zu können, muss der Googlebot die URL zuerst einlesen. Dafür wird Crawling-Budget verbraucht, allerdings kein Index-Budget.

Noindex ist die einzige zuverlässige Methode um sicherzustellen, dass eine URL unter keinen Umständen in den SERPs erscheint. Dabei bitte darauf achten, dass Google die Anweisung auch lesen kann, die URL also nicht zusätzlich in der robots.txt gesperrt ist.

Canonical-Hinweis

Direkt vorneweg: es gibt nur sehr wenige legitime Anwendungsfälle für den Einsatz des Canonical-Hinweis. Schlägt ein Webentwickler den Einsatz vor, liegt das in der Regel daran, dass das eigentliche Problem nicht gelöst werden soll, sondern die Auswirkungen mit dem Canonical-Tag nur abgeschwächt werden.

Der Canonical-Tag ist nicht, wie robots.txt und Noindex, eine verbindliche Anweisung an Google, sondern lediglich ein Hinweis unter welcher URL sich die Inhalte finden lassen. Häufig folgt Google diesem Hinweis, aber natürlich nicht immer.

Seiten mit dem Canonical-Tag verbrauchen Crawling-Budget, damit Google den Tag finden kann und sehr wahrscheinlich auch Index-Budget, so dass Google die Inhalte auf der Seite mit anderen Inhalten im Index abgleichen kann. Zum Abschluss: Finger weg vom Canonical-Tag wo es nur geht.

Monitoring ist Pflicht

Beim Crawling großer und dynamisch gewachsener Seiten gibt es nur eine Konstante: alle Fehler, die irgendwie passieren könnten, werden definitiv passieren. Daher ist eine regelmäßige Kontrolle aller wichtigen Parameter unerlässlich.

Google bietet in der Search Console mittlerweile wichtige Unterstützung dabei: Anzahl der gecrawlten und indexierten Seiten sollte ein Pflicht-Indikator sein.

Aber auch ein Faible für das Lesen von Serverlogfiles und der gekonnte Umgang mit Shell-Werkzeugen ist hilfreich. Sei mir noch der Hinweis erlaubt, dass auch unsere Toolbox Aufgaben zur Kontrolle übernehmen kann.

SISTRIX Experten-Video