Wozu dient die robots.txt?
Die robots.txt ist eine Textdatei im Hauptverzeichnis Ihrer Website, die Crawlern sagt, welche Bereiche sie abrufen dürfen. Sie steuert das Abrufen (Crawling), nicht die Aufnahme in den Index: Um eine Seite aus Google herauszuhalten, brauchen Sie noindex oder einen Passwortschutz.
Gedacht ist die Datei vor allem dafür, die Zahl der Crawler-Anfragen an Ihren Server zu steuern. Eine gesperrte Adresse kann trotzdem in den Suchergebnissen erscheinen – ohne Beschreibung, wenn andere Seiten darauf verlinken. Zugriffsschutz ist die robots.txt ebenfalls nicht: Seriöse Crawler wie der Googlebot halten sich daran, andere womöglich nicht.
- Sie liegt immer unter
https://www.example.com/robots.txtund gilt nur für genau diesen Hostnamen, dieses Protokoll und diesen Port. Jede Subdomain braucht eine eigene Datei. - Sie ist eine reine Textdatei in UTF-8. Google liest höchstens 500 KiB, der Rest wird ignoriert.
- Google speichert die Datei in der Regel bis zu 24 Stunden zwischen. Änderungen wirken also nicht sofort.
Entscheidend ist auch, mit welchem Statuscode der Server die Datei ausliefert:
| Antwort des Servers | Verhalten von Google |
|---|---|
| 200 | Die Regeln der Datei gelten. |
| 3xx | Google folgt mindestens fünf Weiterleitungen, danach gilt die Datei als nicht vorhanden. |
| 4xx (außer 429) | Behandelt wie „keine robots.txt“: Alles darf abgerufen werden. |
| 5xx | In den ersten 12 Stunden crawlt Google die Website nicht. Danach gilt bis zu 30 Tage die zuletzt gespeicherte Fassung. |
Eine fehlende robots.txt ist für Google also unproblematisch, ein Serverfehler dagegen nicht. Den Statuscode 429 („zu viele Anfragen“) wertet Google allgemein wie einen Serverfehler.
Wie ist eine robots.txt aufgebaut?
Eine robots.txt besteht aus Gruppen: Jede beginnt mit einer oder mehreren User-agent-Zeilen, darauf folgen Disallow- (sperren) und Allow-Regeln (erlauben). Ein Crawler befolgt nur die Gruppe, die ihn namentlich nennt – gibt es keine, gilt die Gruppe für alle (*).
# Gruppe für alle Crawler
User-agent: *
Disallow: /suche/
Disallow: /*.pdf$
Allow: /suche/hilfe/
# Eigene Gruppe für den Googlebot
User-agent: Googlebot
Disallow: /intern/
Sitemap: https://www.example.com/sitemap.xml
Achtung: In diesem Beispiel befolgt der Googlebot nur seine eigene Gruppe. Für ihn ist /suche/ also erlaubt, denn Google kombiniert eine eigene Gruppe nicht mit der Gruppe für alle.
| Element | Bedeutung |
|---|---|
Disallow: /pfad/ |
sperrt alle Adressen, die mit /pfad/ beginnen |
Allow: /pfad/frei/ |
erlaubt einen Teilbereich innerhalb einer Sperre |
* |
beliebig viele beliebige Zeichen |
$ |
Ende der Adresse: /*.pdf$ trifft /preise.pdf, aber nicht /preise.pdf?v=2 |
Sitemap: |
vollständige Adresse der XML-Sitemap, unabhängig von den Gruppen |
Welche Regel gewinnt? Passen mehrere Regeln, gilt die genaueste, also die mit dem längsten Pfad. Sind zwei gleich lang, nimmt Google die weniger strenge (Allow). Die Feldnamen sind unabhängig von Groß- und Kleinschreibung, die Pfade nicht: /Intern/ sperrt /intern/ nicht. Die Zeile Crawl-delay unterstützt Google nicht, und die Datei /robots.txt selbst ist immer erlaubt.
Welche Fehler in der robots.txt sind typisch?
Am folgenschwersten sind eine Komplettsperre mit Disallow: / – etwa aus einer Testumgebung übernommen – und gesperrte CSS- oder JavaScript-Dateien, ohne die Google die Seite nicht richtig darstellen kann.
Schlecht: sperrt die ganze Website für alle Crawler
User-agent: *
Disallow: /
Gut: alles erlaubt, Sitemap angegeben
User-agent: *
Allow: /
Sitemap: https://www.example.com/sitemap.xml
Weitere Fehler, die Auffindig erkennt:
- Gesperrte Ressourcen: Regeln wie
Disallow: /assets/können auch Stylesheets und Skripte treffen. Google rät davon ab, Dateien zu sperren, die zum Verständnis der Seite nötig sind. - noindex in der robots.txt: Diese Anweisung unterstützt Google dort nicht. Sie wirkt nur als Meta-Tag oder HTTP-Header.
- HTML statt Text: Liefert das CMS unter
/robots.txteine normale HTML-Seite aus, findet Google keine gültigen Regeln – ungültige Zeilen ignoriert es. - Serverfehler: Antwortet
/robots.txtmit 5xx, pausiert Google das Crawling (siehe Tabelle oben). - Regeln ohne Gruppe:
Disallow-Zeilen vor der erstenUser-agent-Zeile gehören zu keiner Gruppe.
Ihre aktuelle Datei sehen Sie in der Google Search Console im „robots.txt-Bericht“ in den Einstellungen; dort können Sie nach einer Änderung „Erneutes Crawlen beantragen“. Ohne Konto testen Sie Regeln mit unserem robots.txt-Tester.
Wie steuere ich KI-Crawler mit der robots.txt?
KI-Anbieter verwenden eigene Crawler mit eigenen Namen, die Sie in der robots.txt einzeln ansprechen. Entscheidend ist die Unterscheidung zwischen Crawlern für die KI-Suche und solchen, deren Daten in das Training von KI-Modellen fließen.
# KI-Training sperren, KI-Suche erlauben
User-agent: GPTBot
Disallow: /
User-agent: Google-Extended
Disallow: /
User-agent: OAI-SearchBot
Allow: /
- OpenAI trennt ausdrücklich:
OAI-SearchBotentscheidet über die Sichtbarkeit in der ChatGPT-Suche,GPTBotüber das Training. Beide Einstellungen sind laut OpenAI unabhängig voneinander. - Google-Extended ist kein eigener Crawler, sondern nur eine Kennung (ein sogenanntes Token) für die robots.txt. Es regelt, ob Inhalte für Gemini-Modelle und deren Antworten (Grounding) genutzt werden, und hat laut Google keinen Einfluss auf die Aufnahme in die Google Suche.
Trainings-Crawler zu sperren, ist eine legitime Entscheidung. Wer dagegen Such-Crawler sperrt, verzichtet auf die jeweilige KI-Suche – bei OpenAI erscheint die Website dann nicht mehr in den Antworten der ChatGPT-Suche, höchstens noch als Navigationslink. Welche Crawler es gibt und wie Firewalls sie unbeabsichtigt blockieren, erklärt der Artikel KI-Sichtbarkeit.
Wie ist eine XML-Sitemap aufgebaut?
Eine XML-Sitemap listet die Adressen Ihrer Website, die in den Index sollen, optional mit dem Datum der letzten Änderung. Sie ist ein Hinweis an Google, keine Garantie für Crawling oder Indexierung.
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>https://www.example.com/</loc>
<lastmod>2026-10-01</lastmod>
</url>
<url>
<loc>https://www.example.com/leistungen/zahnreinigung/</loc>
</url>
</urlset>
- Höchstens 50 000 Adressen oder 50 MB (unkomprimiert) pro Datei, sonst aufteilen.
- UTF-8 und vollständige, absolute Adressen. Zeichen wie
&in Adressen werden maskiert (&). lastmodnur angeben, wenn es stimmt: Google nutzt den Wert nur, wenn er nachweislich zuverlässig ist. Eine geänderte Jahreszahl im Footer ist keine Änderung des Inhalts.priorityundchangefreqignoriert Google.- Nur Seiten aufnehmen, die mit 200 antworten und in den Index sollen – keine Weiterleitungen, keine gelöschten Seiten.
Größere Websites fassen mehrere Sitemaps in einer Sitemap-Indexdatei zusammen, die bis zu 50 000 Sitemaps aufführen darf:
<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<sitemap><loc>https://www.example.com/sitemap-seiten.xml</loc></sitemap>
<sitemap><loc>https://www.example.com/sitemap-produkte.xml</loc></sitemap>
</sitemapindex>
Legen Sie die Sitemap ins Hauptverzeichnis: Ohne Einreichung in der Search Console gilt sie nur für Adressen unterhalb ihres eigenen Ordners. Selbst schreiben müssen Sie sie oft nicht: WordPress erzeugt seit Version 5.5 eine Sitemap unter /wp-sitemap.xml. Prüfen Sie, ob Ihr System oder ein Plugin bereits eine Sitemap ausgibt. Laut Google brauchen kleine, gut verlinkte Websites mit etwa 500 Seiten oder weniger nicht unbedingt eine Sitemap; sie hilft aber bei neuen Websites mit wenigen Verweisen von außen.
Wie reiche ich die Sitemap in der Search Console ein?
Tragen Sie die Sitemap mit einer Sitemap:-Zeile in die robots.txt ein und reichen Sie sie zusätzlich im Sitemaps-Bericht der kostenlosen Google Search Console ein. Die Zeile in der robots.txt ist Teil des gemeinsamen Sitemap-Protokolls und nicht auf Google beschränkt.
- Veröffentlichen Sie die Sitemap, idealerweise im Hauptverzeichnis.
- Öffnen Sie in der Search Console den Sitemaps-Bericht Ihrer Property. Dafür brauchen Sie Inhaberrechte.
- Tragen Sie die Adresse unter „Neue Sitemap hinzufügen“ ein und klicken Sie auf „Senden“.
- Prüfen Sie den Status. „Erfolgreich“ ist das Ziel; bei „Konnte nicht abgerufen werden“ oder „Sitemap kann gelesen werden, enthält aber Fehler“ klicken Sie auf die Zeile, um die Details zu sehen.
Achten Sie darauf, dass die robots.txt die Sitemap selbst nicht sperrt – Google hält sich auch beim Abruf der Sitemap an die Datei. Auffindig sucht die Sitemap zuerst über die Sitemap:-Zeilen, dann unter den üblichen Adressen, und prüft anschließend eine Stichprobe von fünf Adressen daraus. Die genauen Regeln stehen unten im Abschnitt So prüft Auffindig.
Diese Punkte jetzt auf Ihrer Seite prüfen
So prüft Auffindig
Zu diesem Thema gehören 4 der 120 Prüfpunkte. Alle Gewichte und Formeln stehen in der Methodik, den Anteil am Gesamtscore finden Sie unter Bereich Technik & Indexierbarkeit.
robots.txt erreichbar und gültig
In Ordnung: /robots.txt antwortet mit Status 200 und ist eine Textdatei bis 500 KiB ohne Syntaxfehler (auch eine leere Datei ist in Ordnung). Verbesserbar: Status 4xx oder eine nicht verfolgte Weiterleitung (Google crawlt dann ohne Einschränkung), HTML statt Text, größer als 500 KiB, unbekannte Felder oder Syntaxfehler (z. B. Regeln vor der ersten User-agent-Zeile oder Zeilen ohne Doppelpunkt). Problem: Status 5xx oder 429, oder die Datei ist nicht erreichbar.
Seite nicht per robots.txt gesperrt
In Ordnung: Die geprüfte Adresse sowie die stichprobenartig geprüften CSS- und JavaScript-Dateien desselben Hosts sind für Googlebot, Bingbot und alle übrigen Bots (*) erlaubt. Verbesserbar: CSS- oder JavaScript-Dateien sind für Googlebot gesperrt, oder die robots.txt ist nicht abrufbar (Status 5xx, 429 oder keine Antwort – der Befund steht bei der Erreichbarkeit der robots.txt, ohne Begrenzung des Gesamtscores). Problem: Die Adresse ist für Googlebot oder Bingbot gesperrt; der Gesamtscore ist dann auf höchstens 49 begrenzt.
XML-Sitemap vorhanden und eingetragen
In Ordnung: gültige XML-Sitemap, die in der robots.txt eingetragen ist. Verbesserbar: gültige Sitemap, aber nicht in der robots.txt eingetragen, nur eine Text-Sitemap, oder eine Teil-Sitemap eines Sitemap-Index ist nicht lesbar. Problem: keine gültige Sitemap gefunden, XML-Fehler oder mehr als 50 000 URLs in einer Datei. Nicht prüfbar, wenn die eingetragene Sitemap unserem Prüf-Crawler den Zugriff verweigert (z. B. Status 403) oder größer als 5 MB ist.
Sitemap enthält nur erreichbare Seiten
In Ordnung: Alle stichprobenartig geprüften Adressen (bis zu fünf) aus der Sitemap antworten mit Status 200. Verbesserbar: mindestens eine Weiterleitung, oder die Änderungsdaten (lastmod) sind unplausibel (ein Datum mehr als einen Tag in der Zukunft, oder alle Adressen – mindestens 10 – tragen dasselbe Datum). Problem: mindestens eine Adresse mit Status 4xx oder 5xx, mit Zertifikatsfehler (abgelaufen, falscher Name, selbst signiert) oder auf einer fremden Domain. Adressen, die mit 401, 403 oder 429 antworten oder nicht rechtzeitig reagieren, gelten als „nicht prüfbar“. Entfällt ohne Sitemap.
Häufige Fragen
Brauche ich überhaupt eine robots.txt?
Pflicht ist sie nicht. Fehlt die Datei und antwortet der Server mit 404, darf Google alles abrufen. Eine schlanke robots.txt ist trotzdem sinnvoll: Sie nennen darin Ihre Sitemap und können gezielt Bereiche oder KI-Trainings-Crawler ausschließen.
Garantiert eine Sitemap, dass alle Seiten bei Google erscheinen?
Nein. Laut Google ist eine eingereichte Sitemap nur ein Hinweis; Google crawlt und indexiert nicht zwingend alle Einträge. Sie hilft vor allem großen und neuen Websites, deren Seiten noch wenig verlinkt sind.
Kann ich mit der robots.txt verhindern, dass ChatGPT meine Inhalte nutzt?
Teilweise. OpenAI verwendet für das Training den Crawler GPTBot und für die ChatGPT-Suche OAI-SearchBot; beide lassen sich getrennt sperren. Für Abrufe, die eine Person in ChatGPT auslöst (ChatGPT-User), gelten robots.txt-Regeln laut OpenAI möglicherweise nicht.
Warum steht eine gesperrte Seite trotzdem bei Google?
Die robots.txt verhindert nur das Abrufen, nicht die Aufnahme in den Index. Ist die Adresse verlinkt, kann Google sie ohne Beschreibung anzeigen. Um sie zu entfernen, heben Sie die Sperre auf und setzen noindex.
Quellen
- Google Search Central: Einführung in robots.txt
- Google: So interpretiert Google die robots.txt-Spezifikation
- Google: robots.txt-Datei erstellen und einreichen
- RFC 9309: Robots Exclusion Protocol
- Search Console-Hilfe: robots.txt-Bericht
- Google: Wie HTTP-Statuscodes die Google-Crawler beeinflussen
- Google Search Central: Indexierung mit noindex blockieren
- Google: Gängige Crawler von Google (u. a. Google-Extended)
- OpenAI: Overview of OpenAI Crawlers
- Google Search Central: Was ist eine Sitemap?
- Google Search Central: Sitemap erstellen und einreichen
- Google Search Central: Sitemaps mit Sitemap-Indexdateien verwalten
- sitemaps.org: Sitemaps XML format
- Search Console-Hilfe: Sitemaps mithilfe des Sitemaps-Berichts verwalten
- WordPress Core: New XML Sitemaps Functionality in WordPress 5.5