Crawlen mit XML-Sitemaps: Wie der Abgleich zu besseren Rankings führen kann

Beitrag aus Ausgabe 79 / August 2019
SEO
Markus Hövener

ist Chefredakteur des Magazins suchradar und geschäftsführender Gesellschafter der SEO-/SEA-Agentur Bloofusion Germany.

Das Crawlen von Websites ist wichtig, um Fehler und Potenziale aufdecken zu können. Ein wichtiger Baustein beim Crawlen: der Abgleich mit XML-Sitemaps.

Crawler wie der Screaming Frog SEO Spider oder Ryte werden häufig eingesetzt, um gerade auf großen Websites noch den Überblick zu behalten. An welchen Seiten kann man etwas verbessern? Wer aber nur crawlt, wird manche Probleme – vor allem hinsichtlich der Website-Struktur – nicht finden können. Genau deshalb ist der Abgleich mit XML-Sitemaps so wichtig, da nur dadurch bestimmte Fehler gefunden werden können.

Die Voraussetzungen: XML-Sitemap(s)

Damit der Abgleich funktionieren kann, muss es zunächst eine oder mehrere XML-Sitemap(s) geben.

Für XML-Sitemaps gelten zunächst einmal formale Regeln: Eine Sitemap-Datei darf eine Dateigröße von 50 MB nicht überschreiten. Außerdem dürfen in ihr maximal 50 000 URLs enthalten sein. Dass die Struktur valides XML enthalten sollte, versteht sich von selbst – wird aber trotzdem gelegentlich übersehen. So ist es wichtig, dass bestimmte Sonderzeichen in URLs (vor allem „&“) korrekt als Entitäten (in diesem Fall „&“) kodiert werden.

Darüber hinaus ist aber auch wichtig, dass alle genannten URLs auch indexierbar sind. Konkret heißt das:

  1. Alle URLs sollen einen HTTP-Code 200 generieren.
  2. Falls eine Ressource ein Canonical Tag hat, sollte dieses auf sich selbst zeigen (Selbstreferenz).
  3. Die URLs sollten nicht per robots.txt gesperrt sein.
  4. Die Ressourcen sollten auch nicht per noindex gesperrt sein.

In der Praxis liegt hier in der Regel schon die erste Hürde, weil XML-Sitemaps nicht regelmäßig aktualisiert werden oder weil der Sitemap-Generator nichts von der Existenz der robots.txt weiß und trotzdem gesperrte URLs in die Sitemap(s) aufnimmt.

Das Überprüfen der XML-Sitemap auf die vier genannten Kriterien sollte daher am Anfang erfolgen. Ein Tool für die Analyse ist der Screaming Frog SEO Spider. Dazu wechselt man in den List-Modus und übergibt dann per „Upload > Download Sitemap“ die zu testende XML-Sitemap an das Tool. Der SEO Spider wird dann alle URLs crawlen.

URLs, die gegen die Kriterien verstoßen, sind leicht zu identifizieren (siehe Abbildung 1): In der Spalte „Indexability“ steht dann „Non-Indexable“, in der Spalte „Indexability Status“ sind die genauen Gründe zu erkennen (z. B. „noindex“).

Grundsätzlich ist es übrigens immer gut, nicht alle URLs in eine einzige Sitemap-Datei aufzunehmen, sondern diese logisch aufzuteilen. So sollte es z. B. für jede Land-/Sprachversion eine eigene Sitemap geben (also z. B. sitemap-de.xml, sitemap-fr.xml …). Auch sollte es für unterschiedliche Seitentypen separate Sitemap-Dateien geben (also z. B. eine für News, eine für Profilseiten …). Gerade bei komplexeren Website-Strukturen kann das durchaus aufwendig sein. Bei der späteren Diagnose zahlen sich diese Vorarbeiten dann aber sicherlich aus.

Wer es den SEO-Tools leichter machen möchte, kann die XML-Sitemaps dann auch über die robots.txt-Datei bekannt machen. Über einen Eintrag wie „Sitemap: www.website.de/xml-sitemap.xml“ werden dann Tools wie der SEO Spider automatisch auf die XML-Sitemap(s) zugreifen können – wenn man denn auch die entsprechende Konfiguration (siehe Abbildung 2) vornimmt.

Der Abgleich: Warum?

Wenn diese – zum Teil mühsamen – Vorarbeiten erledigt wurden, kann der eigentliche Abgleich erfolgen. Wer nun eine Website crawlt, kann dazu verschiedene Crawler nutzen, die eben nicht nur die Website „klassisch“ crawlen – also durch das Folgen aller internen Links. Parallel laden die Tools auch die XML-Sitemap(s) runter, sodass zwei URL-Listen entstehen:

  1. Alle URLs, die beim Crawlen gefunden wurden. Das sind also Ressourcen, die intern verlinkt sind. Dabei muss darauf geachtet werden, dass man nur indexierbare URLs betrachtet (HTTP-Code 200, Canonical Tag nur als Selbstreferenz, nicht für Suchmaschinen gesperrt)
  2. Alle URLs, die in der XML-Sitemap gefunden wurden.

Wenn man diese beiden Mengen vergleicht, gibt es eine Schnittmenge und zwei disjunkte Mengen:

Menge 1: URLs, die im Crawl und in der XML-Sitemap gefunden wurden

Das ist natürlich der Idealfall: Eine Seite befindet sich in der XML-Sitemap und wird auch über interne Links gefunden.

An diesem Punkt kann man eigentlich nur noch nachdenken, ob diese Seite auch wirklich von Suchmaschinen indexiert werden sollte. So gibt es durchaus Seiten wie AGB, Impressum und ähnliche Service-orientierte Inhalte, die manche Website-Betreiber per Noindex sperren, um den Index möglichst nur mit relevanten Seiten zu füllen.

Das ist durchaus eine Überlegung wert, wenn es denn überhaupt eine relevante Anzahl solcher Seiten gibt und wenn diese Seiten keinen Traffic generieren. Wer also Shop-Betreiber ist und alle Service-Seiten sperrt, wird z. B. auch die Seite mit Informationen zum Rücksendeprozess sperren. Und nach solchen Informationen wird dann doch gesucht. Um sich hier der Lösung zu nähern, kann man den Crawl mit Daten aus der Google Search Console oder Google Analytics anreichern. Also: Gibt es Seiten, die in einer hinreichend großen Zeitspanne (>1 Jahr) gar keine organischen Besucher hatten?

Menge 2: URLs, die nur im Crawl und nicht in der XML-Sitemap gefunden wurden

Dieser Fall ist schon kritischer. Auch hier sollte man diese URLs mit realen Traffic-Daten anreichern, um so zu prüfen, ob diese Seiten überhaupt relevant sind.

Falls sie relevant sind, muss geprüft werden, warum diese nicht in der XML-Sitemap vorkommen. Wenn sie nicht relevant sind, kann man auch erwägen, diese komplett für Suchmaschinen zu sperren.

Menge 3: URLs, die nicht im Crawl und nur in der XML-Sitemap gefunden wurden

Dieser Fall ist eigentlich der kritischste: Man hat URLs gefunden, die in der XML-Sitemap stehen und folgerichtig relevant sind/sein können. Innerhalb der Website sind diese aber über interne Links nicht zu finden. Das kann z. B. daran liegen, dass ein Formular benötigt wird, um bestimmte Inhalte zu finden, oder dass eine Paginierung für Suchmaschinen gesperrt ist.

In jedem Fall sollte man auch hier zunächst prüfen, ob diese Seiten Traffic-relevant sind. Falls nicht, gelten die gleichen Überlegungen wie bei den ersten beiden Mengen.

Falls aber doch, muss die Website-Struktur überprüft werden: Warum findet der Crawler diese Seiten nicht? Wie gesagt: Dafür kann es sehr viele mögliche Ursachen geben.

Welche Tools?

Für den Abgleich zwischen XML-Sitemap und Crawl bieten sich derzeit u. a. zwei Tools an: der Screaming Frog SEO Spider und Sitebulb (ab Version 2.6).

Beim Screaming Frog SEO Spider muss, wie schon gezeigt, der Crawler so konfiguriert werden, dass er die XML-Sitemaps auch beachtet (siehe Abbildung 2). Sobald der Crawl durchgelaufen ist, muss die sogenannte „Crawl Analysis“ erfolgen (siehe Menü). Der gewünschte Abgleich der beiden URL-Mengen wird nämlich nur dann berechnet, wenn auch die entsprechenden Häkchen bei der Konfiguration gesetzt wurden (siehe Abbildung 3).

Sobald die Daten vorliegen, kann man sie dann über die folgenden Filter im Reiter „Sitemaps“ abrufen:

  1. „URLs not in Sitemap“: Diese URLs wurden im Crawl, aber nicht in der XML-Sitemap gefunden.
  2. „Orphan URLs“: Dieser Filter liefert „Waisen“ – URLs, die nur in der XML-Sitemap, nicht aber im Crawl gefunden wurden.

Eine interessante Alternative für den beliebten SEO Spider ist das hierzulande recht unbekannte Tool Sitebulb (siehe Abbildung 4). Seit der Version 2.6 werden auch hier XML-Sitemaps ausgewertet. Der Report ist auch deutlich intuitiver zu bedienen als der SEO Spider. Die beiden Filter „Only in Sitemaps“ und „Not in Sitemaps“ sind doch selbsterklärend und auch für Crawl-Laien schnell zu finden.

Beide genannten Tools müssen jeweils installiert werden. Wer lieber Cloud-Tools nutzen möchte, kann das natürlich auch tun. So bietet Ryte ebenfalls die Möglichkeit, XML-Sitemaps zu hinterlegen und mit dem Crawl abzugleichen.

XML-Sitemaps in der Google Search Console

Neben der Nennung in der robots.txt sollten XML-Sitemaps natürlich auch über die Google Search Console an Google übermittelt werden. (Analog geht das übrigens über die Bing Webmaster Tools auch für Bing.)

Das kann dann z. B. dazu führen, dass URLs, die nur in der XML-Sitemap genannt werden, von Google indexiert werden, obwohl sie intern nicht verlinkt sind. Allerdings muss man dabei beachten, dass das immer nur eine Notlösung sein kann, weil diese Inhalte dann zwar indexiert werden, allerdings fehlen ihnen interne Signale – vor allem eben interne Links. Das kann zur Folge haben, dass die Inhalte deutlich schlechter ranken. Empfehlenswert ist also in jedem Fall die Lösung, dass alle relevanten Inhalte auch intern verlinkt werden.

Mit korrekten XML-Sitemaps profitieren Website-Betreiber von sehr präzisen Informationen, die der Report „Abdeckung“ liefert. Wie in Abbildung 5 zu sehen ist, sollte man zunächst „Alle eingereichten Seiten“ auswählen. Damit ist gemeint, dass hier nur die URLs betrachtet werden, die per XML-Sitemap(s) übergeben wurden.

Ein Praxis-Tipp: An dieser Stelle kann man auch konkrete Sitemaps auswählen – wenn es denn mehrere gibt. Insbesondere ist das hilfreich, wenn für unterschiedliche Länder/Sprachen/Seitentypen eigene Sitemaps bereitgestellt werden. Man kann in der Search Console aber leider nur konkret eingereichte Sitemaps auswählen. Wer also in der Sitemap eine Index-Datei angemeldet hat, kann an dieser Stelle nicht einzelne Sitemaps auswählen. Der einzige derzeit mögliche Ausweg besteht dann leider darin, die XML-Sitemaps jeweils separat in die Search Console einzutragen – mühselig, aber für die Diagnose ein durchaus wichtiger Schritt.

Wenn alles korrekt konfiguriert ist, kann man oben die entsprechenden Filter „Fehler“, „Gültige Seiten mit Warnungen“ und „Ausgeschlossen“ auswählen. Es werden dann unterschiedliche Kategorien angezeigt, z. B. „Gefunden – zurzeit nicht indexiert“ oder „Gecrawlt – zurzeit nicht indexiert“. Die Bedeutung dieser Kategorien kann in der Google-Hilfe (support.google.com/webmasters/answer/7440203) nachgelesen werden.

Danach sollte man an die Behebung der Probleme gehen. Dabei ist wichtig, dass es faktisch immer Probleme gibt, weil manchmal Server überlastet sind oder weil auch Google mal Fehler macht. Einen komplett fehlerfreien Report wird man also ebenso wenig hinbekommen wie eine hundertprozentige Indexierungsrate.

Der On Page Training Day

Noch mehr Interesse an technischen Themen (Canonical Tag, Noindex, robots.txt, XML-Sitemap, URL-Parameter, Crawl-Budget, hreflang …)? Am 10. Oktober findet in Münster der „On Page Training Day“ statt: ein Tag, an dem die Teilnehmer viel Wissen tanken und das an konkreten Cases vertiefen.

bloo.link/omc1452

Fazit

Der Abgleich des Crawls mit XML-Sitemap(s) kann helfen, die Struktur und die Indexierung der Website zu verbessern – und damit auch Rankings steigern. Wer nur crawlt, kann sonst gut übersehen, dass einige Inhalte über interne Links gar nicht zu finden sind. Perfekte XML-Sitemaps sind dafür eine wichtige Voraussetzung – und dann auch ein starkes Hilfsmittel in Bezug auf die Google Search Console.

Spannend? Dieser Artikel ist im suchradar #79 erschienen

Lesen Sie weitere spannende Artikel aus der Ausgabe „Personalisierung im Online-Marketing: Passgenau potentielle Kunden erreichen“! Entweder online oder als PDF-Magazin.

Kostenlos als PDF-Version Alle Artikel aus der Ausgabe ansehen