Robots.txt

Was robots.txt tatsächlich bewirkt – es steuert das Crawling, nicht das Indexieren – dazu die genaue Syntax, Googles interne Verarbeitung und die Fehler, die Websites lahmlegen können.

Erstveröffentlicht: 23. Juni 2026 · Zuletzt aktualisiert: 11. Aug. 2026 · Fortgeschritten
Sprachen
1 Evidenzsignal auf dieser Seite

Robots.txt ist eine Klartextdatei im Stammverzeichnis jedes Hosts, die Crawlern mitteilt, welche URLs sie anfordern dürfen und welche nicht. Das Wichtigste: Es steuert das Crawling, nicht das Indexieren. Eine nicht erlaubte URL kann dennoch ohne Snippet indexiert werden, wenn sie von anderer Stelle verlinkt ist – um eine Seite aus dem Index zu halten, verwendet man noindex, und die Seite darf NICHT in robots.txt blockiert sein, sonst sieht Google das noindex nie. Google unterstützt nur user-agent, allow, disallow und sitemap (noindex, nofollow und crawl-delay wurden am 1. September 2019 entfernt). Die Datei liegt unter /robots.txt, gilt für einen Host+Protokoll+Port, ist auf 500 KiB begrenzt, wird etwa 24 Stunden gecacht, und ein 4xx bedeutet keine Einschränkungen, während ein 5xx das Crawling seitenweit verlangsamen kann. Blockieren Sie nicht renderkritisches CSS/JS und verlassen Sie sich nicht darauf, etwas zu verbergen – die Datei ist öffentlich.

TL;DR — Robots.txt ist eine Klartextdatei im Stammverzeichnis jedes Hosts (/robots.txt, kleingeschrieben), die das Robots Exclusion Protocol (RFC 9309) implementiert. Es steuert das Crawling, nicht das Indexieren – eine nicht erlaubte URL kann dennoch ohne Snippet indexiert werden, wenn sie anderswo verlinkt ist; zum Entfernen aus dem Index verwenden Sie noindex auf einer Seite, die nicht blockiert ist. Google unterstützt nur user-agent, allow, disallow und sitemap; noindex/nofollow/crawl-delay wurden am

  1. September 2019 entfernt. Der Geltungsbereich ist ein Host+Protokoll+Port. Beim Abgleich gilt die spezifischste (längste) Regel, bei Gleichstand die am wenigsten restriktive; * und $ sind die Platzhalter; Pfade sind groß-/kleinschreibungssensitiv. Google begrenzt die Datei auf 500 KiB, cached etwa 24 Stunden, behandelt 4xx (außer 429) als keine Einschränkungen und pausiert bei einem 5xx das Crawling für etwa 12 Stunden, danach fällt es für etwa 30 Tage auf die letzte gute Kopie zurück. Blockieren Sie nicht render-kritisches CSS/JS und behandeln Sie es nicht als Zugriffskontrolle – die Datei ist öffentlich.

Was es ist und wo es sich befindet

Robots.txt implementiert das Robots Exclusion Protocol, das 1994 von Martijn Koster entwickelt und 2022 schließlich als RFC 9309 standardisiert wurde – unter Mitautorenschaft von Googles Gary Illyes, Henner Zeller, Lizzi Sassman und Koster selbst. Der Wortlaut des Standards: “This document specifies and extends the ‘Robots Exclusion Protocol’ method originally defined by Martijn Koster in 1994 for service owners to control how content served by their services may be accessed, if at all, by automatic clients known as crawlers.” (Übersetzung) „Dieses Dokument spezifiziert und erweitert die Methode des ‚Robots Exclusion Protocol‘, die Martijn Koster ursprünglich 1994 definierte, damit Dienstanbieter steuern können, ob und wie automatische Clients, sogenannte Crawler, auf die von ihren Diensten bereitgestellten Inhalte zugreifen dürfen.“

Einige Fakten, die Menschen oft überraschen:

  • Es muss im Stammverzeichnis liegen, kleingeschrieben. RFC 9309 ist eindeutig: “The rules MUST be accessible in a file named ‘/robots.txt’ (all lowercase) in the top-level path of the service.” (Übersetzung) „Die Regeln MÜSSEN in einer Datei namens ‚/robots.txt‘ (alles kleingeschrieben) im obersten Pfad des Dienstes zugänglich sein.“ Google fügt hinzu, dass die URL selbst wie jede URL groß-/kleinschreibungssensitiv ist.
  • Der Geltungsbereich ist ein Host + Protokoll + Port. Google: “The rules listed in the robots.txt file apply only to the host, protocol, and port number where the robots.txt file is hosted.” (Übersetzung) „Die in der robots.txt-Datei aufgeführten Regeln gelten nur für den Host, das Protokoll und die Portnummer, auf denen die robots.txt-Datei gehostet wird.“ Daher benötigen https://example.com, https://www.example.com, https://blog.example.com und http://example.com jeweils eine eigene Datei. Subdomains und Protokolle teilen sich keine.
  • Unterstützte Protokolle für Google sind HTTP, HTTPS und FTP.

Das Missverständnis, das dieses Thema definiert: Crawling vs. Indexierung

Wenn Sie nur eines von dieser Seite mitnehmen, dann dies: robots.txt steuert das Crawling, nicht die Indexierung. Das Blockieren einer URL ist nicht dasselbe wie das Entfernen aus Google. Evidence for this claim A robots.txt rule controls crawling rather than guaranteeing removal from Google Search; a URL can still appear when Google cannot crawl it. Scope: Google Search crawler behavior. Other crawlers can interpret robots.txt differently. Confidence: high · Verified: Google: Introduction to robots.txt

Googles eigenes Einführungsdokument sagt es deutlich: robots.txt “is not a mechanism for keeping a web page out of Google. To keep a web page out of Google, block indexing with noindex or password-protect the page.” (Übersetzung) „ist kein Mechanismus, um eine Webseite aus Google herauszuhalten. Um eine Webseite aus Google herauszuhalten, blockieren Sie die Indexierung mit noindex oder schützen Sie die Seite mit einem Passwort.“ Und dazu, was mit einer blockierten URL tatsächlich passiert: “While Google won’t crawl or index the content blocked by a robots.txt file, we might still find and index a disallowed URL if it is linked from other places on the web.” (Übersetzung) „Obwohl Google die durch eine robots.txt-Datei blockierten Inhalte nicht crawlen oder indexieren wird, können wir eine nicht erlaubte URL dennoch finden und indexieren, wenn sie von anderen Stellen im Web verlinkt ist.“ Das Ergebnis ist die bekannte Auflistung ohne Snippet: “its URL can still appear in search results, but the search result won’t have a description.” (Übersetzung) „ihre URL kann weiterhin in den Suchergebnissen erscheinen, aber das Suchergebnis wird keine Beschreibung haben.“ Evidence for this claim Robots.txt controls crawler access, not index eligibility; Google may still index a disallowed URL discovered through links, typically without a content snippet. Scope: web crawling Confidence: high · Verified: Robots.txt Introduction and Guide

Die Spezifikation wiederholt dieselbe Nuance für die disallow-Regel selbst: “Google can’t index the content of pages which are disallowed for crawling, but it may still index the URL and show it in search results without a snippet.” (Übersetzung) „Google kann den Inhalt von Seiten, die für das Crawling nicht erlaubt sind, nicht indexieren, aber es kann dennoch die URL indexieren und sie ohne Snippet in den Suchergebnissen anzeigen.“

Warum Sie eine Seite, die Sie mit noindex versehen möchten, NICHT blockieren dürfen

Das ist die Falle, die Deindexierungsbemühungen unbemerkt zunichtemacht. Ein noindex funktioniert nur, wenn Google die Seite crawlen und die Anweisung lesen kann. Googles Dokument zur Indexierungssperre beschreibt diese Abhängigkeit: “For the noindex rule to be effective, the page or resource must not be blocked by a robots.txt file, and it has to be otherwise accessible to the crawler. If the page is blocked by a robots.txt file or the crawler can’t access the page, the crawler will never see the noindex rule, and the page can still appear in search results, for example if other pages link to it.” (Übersetzung) „Damit die noindex-Regel wirksam ist, darf die Seite oder Ressource nicht durch eine robots.txt-Datei blockiert sein und muss dem Crawler anderweitig zugänglich bleiben. Ist die Seite per robots.txt gesperrt oder für den Crawler nicht erreichbar, sieht er die noindex-Regel nie; die Seite kann dann weiterhin in den Suchergebnissen erscheinen, etwa wenn andere Seiten auf sie verlinken.“ Evidence for this claim Google must be able to crawl a URL to see a noindex rule; blocking the URL in robots.txt can prevent the rule from being observed. Scope: Google Search indexing controls for HTML meta robots and X-Robots-Tag rules. Confidence: high · Verified: Google: Block indexing with noindex

Wenn Ihr Ziel also darin besteht, eine Seite aus dem Index zu bekommen, ist John Muellers Anleitung der klarste Weg, sich das zu merken: Wenn Sie Seiten aus dem Index entfernen möchten, sollten Sie Google nicht mit robots.txt blockieren, sondern noindex verwenden.

Der praktische Beweis: Ich habe zwei unserer eigenen stark rankenden Seiten blockiert

Ich muss das nicht theoretisch herleiten. In meinem Experiment mit zwei stark rankenden Ahrefs-Seiten habe ich sie absichtlich per robots.txt gesperrt und die Folgen beobachtet. Die Seiten blieben indexiert und behielten ihre Rankings – sie verschwanden nicht. Verloren ging die Aktualität, die Google durch erneutes Crawlen gewinnt: “We lost a position here or there and all of the featured snippets for the pages.” (Übersetzung) „Hier und da verloren wir eine Position und sämtliche Featured Snippets dieser Seiten.“ Der Traffic sank, aber weniger stark als erwartet: “Both pages lost some traffic. But it didn’t result in much change to our traffic estimate like I was expecting.” (Übersetzung) „Auf beiden Seiten ging der Traffic zurück. Entgegen meiner Erwartung änderte sich unsere Traffic-Schätzung dadurch jedoch kaum.“

Mein Fazit aus den Daten: “Accidentally blocking pages (that Google already ranks) from being crawled using robots.txt probably isn’t going to have much impact on your rankings, and they will likely still show in the search results.” (Übersetzung) „Wenn Sie das Crawling von Seiten, für die Google bereits Rankings vergibt, versehentlich per robots.txt sperren, wirkt sich das wahrscheinlich kaum auf die Rankings aus; die Seiten dürften weiterhin in den Suchergebnissen erscheinen.“ Und die unverblümte Version: “Don’t block pages you want indexed. It hurts. Not as bad as you might think it does—but it still hurts.” (Übersetzung) „Sperren Sie keine Seiten, die indexiert bleiben sollen. Das schadet – weniger stark als vielleicht erwartet, aber es schadet trotzdem.“

Die beruhigende Kehrseite: Meldet die Search Console für eine Funktions-URL – etwa Warenkorb, Filter oder Parameter-URL – “Indexed, though blocked by robots.txt” (Übersetzung) „Indexiert, obwohl durch robots.txt blockiert“, ist das meist unproblematisch. Wie Mueller zu Add-to-Cart-URLs erläuterte, ist die Sperre in Ordnung; selbst wenn solche URLs „indexiert“ werden, erscheinen sie ohne eine sehr spezifische Suchanfrage kaum in den Ergebnissen. Trennen Sie daher die beängstigend klingende Warnung vom tatsächlichen Problem: Relevant wird sie nur, wenn die gesperrte URL eine Seite ist, die gecrawlt und indexiert werden sollte.

Die Syntax (die Referenz)

Eine robots.txt ist eine Reihe von Gruppen. Jede Gruppe beginnt mit einer oder mehreren User-agent-Zeilen, die benennen, für welche(n) Crawler sie gilt, gefolgt von den Regeln für diese.

User-agent: *
Disallow: /cart/
Disallow: /search
Allow: /search/help

User-agent: Googlebot
Disallow: /no-google/

Sitemap: https://example.com/sitemap.xml

User-agent und Gruppen. Ein Crawler befolgt genau eine Gruppe – die mit dem spezifischsten User-Agent, der zu ihm passt – und ignoriert den Rest. Google: “Google’s crawlers determine the correct group of rules by finding in the robots.txt file the group with the most specific user agent that matches the crawler’s user agent. Other groups are ignored.” (Übersetzung) „Googles Crawler bestimmen die richtige Regelgruppe, indem sie in der robots.txt-Datei die Gruppe mit dem spezifischsten User-Agent suchen, der zum User-Agent des Crawlers passt. Andere Gruppen werden ignoriert.“ Und: “Only one group is valid for a particular crawler.” (Übersetzung) „Für einen bestimmten Crawler ist nur eine Gruppe gültig.“ (Bing verhält sich genauso – mehr dazu unten.)

Das bedeutet auch, dass eine spezifische Gruppe nicht um die Regeln der Wildcard-Gruppe ergänzt wird – sie wird eigenständig verwendet, nicht mit User-agent: * zusammengeführt. Googles Spezifikation sagt ausdrücklich: “user agent specific groups and global groups (*) are not combined.” (Übersetzung) „User-Agent-spezifische und globale Gruppen (*) werden nicht kombiniert.“ Wenn Sie also eine User-agent: googlebot-news-Gruppe schreiben, muss sie in sich geschlossen sein: Alles, was sie weiterhin aus der *-Gruppe befolgen soll, muss darin wiederholt werden, sonst sieht Googlebot-News diese Regeln überhaupt nicht. Evidence for this claim For Google's crawlers, the most specific matching user-agent group applies; rules from that specific group are not combined with the global asterisk group, although multiple matching specific groups are merged internally. Scope: robots.txt parsing and fetching Confidence: high · Verified: How Google Interprets the robots.txt Specification

Disallow und Allow. Disallow nennt Pfade, die ein Crawler nicht anfordern darf; Allow nimmt davon wieder Ausnahmen aus. Zur disallow-Regel heißt es: “specifies paths that must not be accessed by the crawlers identified by the user-agent line the disallow rule is grouped with.” (Übersetzung) „Sie bezeichnet Pfade, auf welche die in der zugehörigen User-Agent-Zeile genannten Crawler nicht zugreifen dürfen.“ Die allow-Regel “specifies paths that may be accessed by the designated crawlers. When no path is specified, the rule is ignored.” (Übersetzung) „Sie bezeichnet Pfade, auf welche die angegebenen Crawler zugreifen dürfen. Ist kein Pfad angegeben, wird die Regel ignoriert.“

Die Abgleichregel (hier liegen viele Anleitungen falsch). Wenn zwei Regeln miteinander kollidieren, gewinnt die spezifischste; „spezifisch“ bedeutet hier längster Pfad: “When matching robots.txt rules to URLs, crawlers use the most specific rule based on the length of the rule path. In case of conflicting rules, including those with wildcards, Google uses the least restrictive rule.” (Übersetzung) „Crawler wählen beim Abgleich einer robots.txt-Regel mit einer URL den längsten und damit genauesten Regelpfad. Treffen gleich genaue Regeln aufeinander, verwendet Google die weniger einschränkende.“ Bei einem echten Gleichstand gewinnt also die am wenigsten restriktive Regel – Allow schlägt Disallow. RFC 9309 bezeichnet dieses Prinzip als „Longest Match“: “The following example shows that in the case of two rules, the longest one is used for matching.” (Übersetzung) „Das folgende Beispiel zeigt: Von zwei Regeln wird die längere für den Abgleich verwendet.“ Evidence for this claim Google resolves matching robots.txt rules by path specificity and uses the least restrictive rule when equally specific rules conflict. Scope: Google crawler interpretation of robots.txt rules; other crawlers may implement different extensions. Confidence: high · Verified: Google: Robots.txt interpretation

Arbeitsbeispiel:

User-agent: *
Allow: /folder/page
Disallow: /folder/

Die URL /folder/page passt auf beide Regeln. Allow: /folder/page (12 Zeichen) ist länger als Disallow: /folder/ (8 Zeichen), also gewinnt die längere, spezifischere Allow-Regel und die Seite ist crawlbar.

Platzhalter * und $. Google: * designates 0 or more instances of any valid character. $ designates the end of the URL.” (Übersetzung)* bezeichnet 0 oder mehr Instanzen eines beliebigen gültigen Zeichens. $ bezeichnet das Ende der URL.“ Also blockiert Disallow: /*.pdf$ jede URL, die auf .pdf endet, und Disallow: /*? blockiert jede URL, die eine Query-String enthält. Das Matching ist präfixbasiert: Disallow: /fish matcht /fish, /fish.html, und /fish/salmon.html, aber nicht /Fish (case-sensitiv) oder /catfish (es ist ein Präfix, kein Substring).

Case-Sensitivität (die subtile Sache). Feld- und User-Agent-Namen sind case-insensitiv; Pfadwerte sind case-sensitiv. Google: “Both the user-agent field name and its value are case-insensitive,” (Übersetzung) „Sowohl der Feldname user-agent als auch sein Wert sind case-insensitiv,“ aber “The field name (disallow) is case-insensitive, but its value is case-sensitive,” (Übersetzung) „Der Feldname (disallow) ist case-insensitiv, aber sein Wert ist case-sensitiv,“ und “The path value must start with / to designate the root and the value is case-sensitive.” (Übersetzung) „Der Pfadwert muss mit / beginnen, um die Wurzel zu kennzeichnen, und der Wert ist case-sensitiv.“ Also blockiert Disallow: /Folder/ nicht /folder/.

Sitemap. Die Sitemap:-Direktive nimmt eine vollständige absolute URL und ist unabhängig von Gruppen — sie kann überall in der Datei stehen.

Kommentare. Alles nach # wird ignoriert: “To include comments, precede your comment with the # character.” (Übersetzung) „Um Kommentare einzufügen, setzen Sie Ihren Kommentar mit dem #-Zeichen davor.“

noindex, nofollow und crawl-delay sind KEINE robots.txt-Direktiven

Das ist ein hartnäckiger Mythos. Ab dem 1. September 2019 hat Google die Unterstützung für nicht unterstützte, undokumentierte Regeln eingestellt — einschließlich noindex, nofollow und crawl-delay. Googles Ankündigung konzentrierte sich auf Regeln, die vom Internet-Entwurf nicht unterstützt werden, wie crawl-delay, nofollow und noindex, und stellte fest, dass diese von Google nie dokumentiert wurden, und sagte, dass Google an diesem Datum den gesamten Code einstellt, der nicht unterstützte und unveröffentlichte Regeln (wie noindex) verarbeitet. Die unterstützte Feldliste ist kurz, und die Spezifikation nennt den Ausschluss direkt: Google unterstützt user-agent, allow, disallow und sitemap, und “other fields such as crawl-delay aren’t supported.” (Übersetzung) „Andere Felder wie crawl-delay werden nicht unterstützt.“

Wenn Sie sich auf noindex in robots.txt verlassen haben, sind die Alternativen ein noindex-Meta-Tag oder X-Robots-Tag-Header, 404/410-Statuscodes, Passwortschutz, ein Disallow, oder das Search Console-Entfernungstool.

Wie Google robots.txt unter der Haube behandelt

  • Größenlimit: 500 KiB. “Google enforces a robots.txt file size limit of 500 kibibytes (KiB). Content which is after the maximum file size is ignored.” (Übersetzung) „Google begrenzt robots.txt-Dateien auf 500 Kibibyte (KiB). Inhalte hinter dieser maximalen Dateigröße werden ignoriert.“ RFC 9309 stimmt damit überein: “The parsing limit MUST be at least 500 kibibytes [KiB].” (Übersetzung) „Das Parsing-Limit MUSS mindestens 500 Kibibyte [KiB] betragen.“
  • Caching: ~24 Stunden. “Google generally caches the contents of robots.txt file for up to 24 hours, but may cache it longer in situations where refreshing the cached version isn’t possible.” (Übersetzung) „Google speichert den Inhalt einer robots.txt-Datei normalerweise bis zu 24 Stunden im Cache, in Situationen ohne mögliche Aktualisierung der Cache-Version unter Umständen aber länger.“ Eine Änderung wird daher nicht unbedingt sofort übernommen. Evidence for this claim Google generally caches robots.txt for up to 24 hours and changes crawling behavior according to the HTTP status returned for the file. Scope: Google crawler handling of robots.txt fetches, including documented 4xx, 5xx, and redirect behavior. Confidence: high · Verified: Google: Robots.txt file handling
  • Statuscodes sind seitenweit relevant. Dies ist der Teil, den die meisten Anleitungen auslassen:
    • 4xx (außer 429) → keine Einschränkungen. “Google’s crawlers treat all 4xx errors, except 429, as if a valid robots.txt file didn’t exist. This means that Google assumes that there are no crawl restrictions.” (Übersetzung) „Googles Crawler behandeln alle 4xx-Fehler außer 429 so, als gäbe es keine gültige robots.txt-Datei. Google geht dann von keinerlei Crawling-Einschränkungen aus.“ Ein 404 auf /robots.txt bedeutet „alles crawlen“. (Verwenden Sie 401/403 nicht, um das Crawling zu drosseln.)
    • 5xx / nicht erreichbar → gefährlich. “For the first 12 hours, Google stops crawling the site but keeps trying to fetch the robots.txt file. If Google can’t fetch a new version, for the next 30 days Google will use the last good version, while still trying to fetch a new version.” (Übersetzung) „In den ersten 12 Stunden stellt Google das Crawling der Website ein, versucht aber weiter, die robots.txt-Datei abzurufen. Gelingt kein Abruf einer neuen Version, verwendet Google in den folgenden 30 Tagen die letzte funktionierende Version und versucht parallel weiterhin, eine neue abzurufen.“ Ein Serverfehler auf /robots.txt kann also Ihre gesamte Website für die ersten ~12 Stunden effektiv sperren und dann für ~30 Tage mit der letzten zwischengespeicherten Kopie arbeiten. Eine dauerhaft fehlerhafte robots.txt ist ein websiteweites Crawl-Risiko. Bleibt sie auch nach diesen 30 Tagen defekt, gilt: “If the errors are still not fixed after 30 days: If the site is generally available to Google, Google will behave as if there is no robots.txt file (but still keep checking for a new version).” (Übersetzung) „Sind die Fehler nach 30 Tagen weiterhin nicht behoben und ist die Website für Google grundsätzlich erreichbar, verhält sich Google so, als gäbe es keine robots.txt-Datei; auf neue Versionen wird weiterhin geprüft.“ Mit anderen Worten: Eine robots.txt, die sich nie erholt, bleibt nicht für immer gesperrt — Google fällt schließlich auf das Crawlen ohne Einschränkungen zurück, genau wie bei einem 404.
    • 3xx → Google folgt mindestens fünf Weiterleitungssprüngen und behandelt sie dann als 404.

robots.txt bei Bing, Yandex und darüber hinaus

Die Gruppierung und Syntax sind im Wesentlichen gemeinsam, aber zwei Abweichungen sind wichtig:

  • crawl-delay. Google ignoriert die Direktive, Bing berücksichtigt sie weiterhin, Yandex dagegen seit 2018 nicht mehr. Yandex schreibt: “From February 22, 2018, Yandex doesn’t take into account the Crawl-delay directive,” (Übersetzung) „Seit dem 22. Februar 2018 berücksichtigt Yandex die Crawl-delay-Direktive nicht mehr“, und verweist stattdessen auf die Crawl-Raten-Einstellung in Yandex Webmaster. Bing stellt klar: “The robots.txt file is the only valid place to set a crawl-delay directive for MSNBot,” (Übersetzung) „Die robots.txt-Datei ist der einzige gültige Ort für eine crawl-delay-Direktive für MSNBot“, und die Direktive “accepts only positive, whole numbers as values… the higher the value, the more throttled down the crawl rate will be.” (Übersetzung) „Sie akzeptiert nur positive ganze Zahlen; je höher der Wert, desto stärker wird die Crawl-Rate gedrosselt.“ Beachten Sie, dass Bing den Wert als relative Drosselung behandelt, nicht wörtlich als N Sekunden.
  • Die bingbot-Abschnitt-Falle. Genau wie bei Googles Regel “only one group per crawler” (Übersetzung) „nur eine Gruppe pro Crawler“ gilt: Wenn Sie einen Abschnitt User-agent: bingbot erstellen, wendet Bing nur diesen Abschnitt an und ignoriert die Standardwerte von User-agent: * (mit Ausnahme von crawl-delay). Eine bingbot-spezifische Gruppe muss also jede Direktive wiederholen, die Sie weiterhin durchsetzen möchten.
  • Amazons Cache- und Fehlerverhalten. Amazon sagt, dass seine Crawler eine robots.txt-Kopie verwenden können, die innerhalb der letzten 30 Tage zwischengespeichert wurde. Können sie die Datei nicht abrufen, verhalten sie sich so, als gäbe es die Datei nicht. Ein Prüftool kann die abgerufene Kopie melden, aber er kann nicht beweisen, welche zwischengespeicherte Version Amazon verwendet hat – oder dass Amazon denselben Fehler beobachtet hat wie der Prüfer. Evidence for this claim Amazon says its crawlers may use a robots.txt copy cached within the previous 30 days and behave as though the file does not exist when they cannot fetch it. Scope: Amazon crawler behavior only; a checker result cannot establish which cached copy Amazon used or whether Amazon observed the same fetch failure. Confidence: high · Verified: Amazon: Amazonbot

Verwaltung von KI-Crawlern mit robots.txt

Robots.txt ist derzeit der wichtigste Hebel zur Verwaltung von KI-Crawlern, und sie gehorchen der gleichen Gruppen-/User-Agent-Syntax. Der Haken: Dies sind getrennte Tokens, sodass das Blockieren eines Crawlers die anderen nicht blockiert.

  • OpenAI betreibt mehrere verschiedene Bots, und die Steuerung für jeden ist unabhängig – das Erlauben eines erlaubt nicht die anderen, und das Blockieren eines blockiert nicht die anderen. GPTBot durchsucht Inhalte für das Training der Modelle von OpenAI; OAI-SearchBot zeigt Websites in den Suchfunktionen von ChatGPT an; OAI-AdsBot prüft die Sicherheit von Seiten, die als Anzeigen eingereicht werden (seine Daten werden nicht für das Training verwendet). Blockieren Sie das Training mit User-agent: GPTBot / Disallow: / – das allein stoppt nicht die Such- oder Anzeigen-Bots. ChatGPT-User ist wieder anders: Es feuert für Aktionen, die eine Person in ChatGPT oder einem Custom GPT auslöst, nicht für automatisches Crawling, und OpenAI sagt: “robots.txt rules may not apply” (Übersetzung) „robots.txt-Regeln gelten möglicherweise nicht“ – verlassen Sie sich also nicht darauf, dass ein Disallow es fernhält. Wenn Sie ändern, was OAI-SearchBot crawlen kann, weist OpenAI darauf hin, dass es etwa 24 Stunden dauern kann, bis das Update ihre Suchsysteme erreicht.
  • Google-Extended steuert das Gemini/Vertex-Training und ist getrennt von Googlebot.
  • Andere, die erwähnenswert sind: CCBot (Common Crawl), ClaudeBot (Anthropic), PerplexityBot und Bytespider.

Der harte Vorbehalt: Die Einhaltung ist freiwillig. Robots.txt bittet; es erzwingt nicht. Wohlverhaltene Crawler befolgen es; Scraper können und ignorieren es. Wenn Sie wirklich etwas von einem Bot fernhalten müssen, ist das ein Authentifizierungs-/Blockierungsproblem, kein Robots.txt-Problem.

Häufige Fehler (und die Korrekturen)

Die Datei ist 200, aber sie ist tatsächlich keine nutzbare Robots-Datei. Der Status allein ist nicht genug. Erfassen Sie den Antwort-Content-Type und die ersten Bytes: Eine CDN-/Custom-Error- Vorlage kann HTML bei /robots.txt mit 200 zurückgeben, was eine Warnung sein muss, nicht ein “Allow all”-Pass. Google dokumentiert robots.txt als UTF-8-Klartext und kann ungültige Zeichen ignorieren. Ein einzelnes UTF-8-BOM am Anfang wird toleriert, aber ein zweites BOM, ein BOM in der Mitte, UTF-16-Bytes, NULs oder unsichtbare/Steuerzeichen können das erste Token ändern oder eine Zeile ungültig machen. Zeigen Sie den Byte-Offset und die betroffene Zeile; normalisieren Sie die Datei nicht stillschweigend, bevor Sie dem Benutzer mitteilen, was der Crawler empfangen hat. Wenden Sie das effektive 500-KiB-Parsing-Limit von Google an, bevor Sie Allow/Disallow-Ergebnisse berechnen, während Sie den verworfenen Rest weiterhin melden.

  • Eine Seite sperren, die Sie zugleich deindexieren möchten. Crawling-Sperre plus noindex bedeutet, dass Google die Seite nie abruft und die Indexierungsanweisung nicht sieht. Verwenden Sie noindex ohne die Sperre.
  • Verwenden von robots.txt zum Deindexieren. Völlig falsches Werkzeug – das ist die Aufgabe von noindex.
  • Blockieren von render-kritischem CSS/JS. Google benötigt diese Assets, um die Seite so zu sehen, wie ein Benutzer es tut; Googles eigene Beispiel-robots.txt erlaubt .css/.js explizit wieder, damit Googlebot sie crawlen kann.
  • Versuch, sensible Daten zu verstecken. RFC 9309 ist deutlich: “The Robots Exclusion Protocol is not a substitute for valid content security measures. Listing paths in the robots.txt file exposes them publicly and thus makes the paths discoverable.” (Übersetzung) „Das Robots Exclusion Protocol ersetzt keine wirksamen Maßnahmen zur Inhaltssicherheit. In robots.txt aufgeführte Pfade werden öffentlich sichtbar und damit auffindbar.“ Das Sperren von /secret-admin/ macht den Pfad gerade erst bekannt. Verwenden Sie Authentifizierung.
  • Ein versehentliches Disallow: /. Dies blockiert die gesamte Website für den genannten Crawler – der klassische Staging-Überrest, der eine Website aus Google nimmt.
  • Ignorieren des Antwortcodes auf /robots.txt. Ein 5xx kann das Crawling websiteweit ins Stocken bringen; behandeln Sie die Verfügbarkeit der Datei als produktionskritisch.

Für die breitere Pipeline, in der dies sitzt – Entdeckung, der Crawl-Scheduler, Rendering und wie sich Crawling vom Indexieren unterscheidet – siehe den Crawling-Hub. Die Schwesterseiten (Crawl-Budget und wie Google mit Sitemaps umgeht) gehen jeweils tiefer auf einen Teil davon ein.

Who's been ignoring my robots.txt?

This is live data from this site, not an illustration. My robots.txt disallows /api/trap/, and the only link to it is invisible to humans — so a compliant crawler will never request it. Every user-agent below fetched it anyway. (Humans poking at it with curl show up too; the user-agent usually gives them away.)

Loading trap log…

Add an expert note

Pin an expert quote

New person? Create their unclaimed profile at /admin/experts/ → Pin a quote first.