Zum Inhalt springen
Leitfäden

Was ist robots.txt und wie schreibt man sie?

Anleitung · 14 Min. Lesezeit · Aktualisiert 15. September 2026

Kurze Antwort

Wie blockiert man KI-Bots mit robots.txt?

robots.txt ist eine Klartextdatei im Wurzelverzeichnis einer Website, die angibt, welcher Crawler welchen Pfad abrufen darf; standardisiert als RFC 9309. Die Datei besteht aus Gruppen, die eine User-agent-Zeile eröffnet, darunter Disallow- und Allow-Regeln. Hat ein Crawler eine eigene Gruppe, gilt die Wildcard-Gruppe für ihn gar nicht — und genau daran scheitern die meisten Dateien, die KI-Bots blockieren sollen.

Das Wichtigste

  • Hat ein Crawler eine eigene User-agent-Gruppe, gelten die Regeln der Wildcard-Gruppe (*) für ihn nicht; beide Gruppen werden nie kombiniert.
  • Bei widersprüchlichen Regeln gewinnt das längste Pfadmuster; bei gleicher Länge greift die weniger restriktive Regel, also Allow.
  • Es gibt keine einzelne Kategorie „KI-Bot“: Training, Suche und Live-Abruf kommen unter eigenen Tokens und brauchen eigene Entscheidungen.
  • Den Trainings-Crawler eines Anbieters zu blockieren blockiert nicht dessen Such-Crawler — mit geschlossenem GPTBot kann man in der ChatGPT-Suche erscheinen.
  • robots.txt ist kein Werkzeug zur Deindexierung: Eine blockierte, von außen verlinkte Seite kann weiterhin mit ihrer URL gelistet werden, und ein noindex auf ihr wirkt nicht, weil es nie gelesen wird.
  • Der häufigste Grund, warum ein Bot eine Site nicht erreicht, ist nicht robots.txt, sondern eine Regel auf CDN- oder Firewall-Ebene; Cloudflares Schalter „Block AI bots“ ist das verbreitetste Beispiel.

Was ist robots.txt und wo liegt sie?

robots.txt ist eine Klartextdatei, die Crawlern mitteilt, welche Teile einer Website sie abrufen dürfen. Sie gilt nur im Wurzelverzeichnis: Für example.com wird /robots.txt gelesen, example.com/blog/robots.txt bedeutet nichts. Jede Subdomain hat ihre eigene Datei — blog.example.com braucht eine eigene, und die Regeln der Hauptdomain gelten dort nicht.

Die Datei wurde 2022 mit RFC 9309 zum formalen Standard — anders als llms.txt ist sie eine von Crawlern gemeinsam akzeptierte Vereinbarung. Ein Sicherheitsinstrument ist sie dennoch nicht: Ob die Regeln befolgt werden, liegt beim Crawler, und ein bösartiger Scraper geht vorbei, ohne die Datei zu lesen. Einen geheim zu haltenden Pfad in die robots.txt zu schreiben heißt, ihn öffentlich anzukündigen.

Wie schreibt man eine robots.txt?

Die Datei besteht aus Gruppen. Jede Gruppe beginnt mit einer oder mehreren User-agent-Zeilen, darunter stehen die Regeln für diesen Crawler. Vier Direktiven genügen:

  • User-agent: benennt den Crawler, für den die Regeln gelten. Die Wildcard (*) heißt „alle ohne eigene Gruppe“ — nicht „alle“.
  • Disallow: verhindert das Abrufen von Adressen, die mit dem angegebenen Pfad beginnen. Leer gelassen, blockiert sie nichts.
  • Allow: öffnet einen Pfad innerhalb eines Disallow wieder; sinnvoll ist das für einen offenen Ordner unter einem gesperrten Verzeichnis.
  • Sitemap: die vollständige Adresse der Sitemap. Sie ist gruppenunabhängig, darf überall stehen und wird üblicherweise zuletzt notiert.
Eine vollständige Datei für eine Unternehmenssite, die sichtbar sein will
# example.com/robots.txt

# Standard: jeder Crawler ohne eigene Gruppe.
User-agent: *
Disallow: /warenkorb/
Disallow: /konto/
Disallow: /suche
Disallow: /*?sortierung=
Allow: /

# Trainings-Crawler — eine Lizenzentscheidung.
# Die beiden Zeilen darunter zu loeschen schliesst Inhalte fuers Training.
User-agent: GPTBot
Allow: /

User-agent: Google-Extended
Allow: /

User-agent: ClaudeBot
Allow: /

# Suche und Live-Abruf — daher kommt die Sichtbarkeit.
User-agent: OAI-SearchBot
Allow: /

User-agent: ChatGPT-User
Allow: /

User-agent: PerplexityBot
Allow: /

User-agent: Perplexity-User
Allow: /

User-agent: Claude-SearchBot
Allow: /

User-agent: Claude-User
Allow: /

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

Beachten Sie den Preis: Da nun jeder Crawler eine eigene Gruppe hat, gelten die Regeln /sepet/ und /hesabim/ aus der Wildcard-Gruppe für sie nicht. Sollen auch diese Bots eingeschränkt werden, müssen dieselben Disallow-Zeilen in jeder Gruppe wiederholt werden.

Welche Regel gilt? Gruppenzuordnung und längste Übereinstimmung

Das ist der am häufigsten missverstandene Teil der Datei, und er läuft auf zwei Regeln hinaus. Erstens die Gruppenwahl: Ein Crawler sucht die Gruppe, deren User-Agent am spezifischsten zu ihm passt, und wendet nur diese an. Googles Dokumentation ist eindeutig — eine spezifische Gruppe und die Wildcard-Gruppe werden nie kombiniert.

Eine Datei, die das Gegenteil bewirkt
User-agent: *
Disallow: /intern/
Disallow: /admin/

User-agent: GPTBot
Disallow: /trainingsdaten/

# Absicht: GPTBot ueberall fernhalten und /trainingsdaten/ fuer alle sperren.
# Realitaet: Da GPTBot eine eigene Gruppe hat, gelten die zwei Zeilen oben nicht fuer ihn.
#            GPTBot darf /intern/ und /admin/ jetzt frei abrufen.

Richtig ist, Disallow: /gizli/ und Disallow: /admin/ innerhalb der GPTBot-Gruppe zu wiederholen. Eine Gruppe zu eröffnen nimmt diesen Crawler aus allen allgemeinen Regeln heraus.

Die zweite Regel betrifft Konflikte innerhalb einer Gruppe: Das längste Pfadmuster gewinnt. Bei gleicher Länge wendet Google die weniger restriktive Regel an — Allow. Deshalb bleibt bei „Disallow: /“ zusammen mit „Allow: /blog/“ der Blog offen: Das Allow-Muster ist länger.

Praktische Folge: In einer robots.txt nach „Disallow“ zu suchen beweist nichts. Welche Regel gilt, entscheiden Gruppenzuordnung und Musterlänge — und der Schluss, den man beim bloßen Lesen zieht, ist meist falsch.

Welche KI-Crawler gibt es, und was tut jeder?

KI-Crawler erfüllen drei verschiedene Aufgaben, und die Entscheidung sollte sich dreifach teilen. Trainings-Crawler sammeln Inhalte für den Datensatz, der in die Gewichte eines Modells eingeht. Such-Crawler indexieren die Quellen, die bei einer Nutzerfrage erscheinen — davon hängt die Markensichtbarkeit unmittelbar ab. Live-Abruf-Crawler holen eine Seite in dem Moment, in dem ein Nutzer einen Link öffnet.

Von den Betreibern selbst dokumentierte Crawler und die Folgen einer Blockade

  • GPTBot

    Betreiber
    OpenAI
    Aufgabe
    Modelltraining
    Wenn blockiert
    Inhalte bleiben aus künftigen Trainingsdaten; ChatGPT-Suche unberührt
  • OAI-SearchBot

    Betreiber
    OpenAI
    Aufgabe
    ChatGPT-Suchindex
    Wenn blockiert
    Sie erscheinen nicht als Quelle in ChatGPT-Antworten
  • ChatGPT-User

    Betreiber
    OpenAI
    Aufgabe
    Abruf, wenn ein Nutzer einen Link öffnet
    Wenn blockiert
    Nutzer können Ihre Seite nicht aus ChatGPT heraus öffnen
  • OAI-AdsBot

    Betreiber
    OpenAI
    Aufgabe
    Sicherheitsprüfung von Anzeigen-Landingpages
    Wenn blockiert
    Ihre Landingpage kann nicht validiert werden
  • Googlebot

    Betreiber
    Google
    Aufgabe
    Der Google-Index — daraus speist sich AI Overviews
    Wenn blockiert
    Sie verlassen Google-Suche und AI Overviews zugleich
  • Google-Extended

    Betreiber
    Google
    Aufgabe
    Gemini-Training und Grounding
    Wenn blockiert
    Ausschluss vom Gemini-Training; Suche und AI Overviews unberührt
  • GoogleOther

    Betreiber
    Google
    Aufgabe
    Recherche-Crawls der Produktteams
    Wenn blockiert
    Keine Auswirkung auf die Suchsichtbarkeit
  • ClaudeBot

    Betreiber
    Anthropic
    Aufgabe
    Modelltraining
    Wenn blockiert
    Inhalte werden nicht für Anthropic-Training genutzt
  • Claude-SearchBot

    Betreiber
    Anthropic
    Aufgabe
    Qualität der Suchergebnisse
    Wenn blockiert
    Sie erscheinen nicht in Claudes Suchergebnissen
  • Claude-User

    Betreiber
    Anthropic
    Aufgabe
    Abruf auf Nutzeranfrage
    Wenn blockiert
    Nutzer können Ihre Seite nicht aus Claude heraus öffnen
  • PerplexityBot

    Betreiber
    Perplexity
    Aufgabe
    Der Perplexity-Index
    Wenn blockiert
    Sie sind keine Quelle in Perplexity-Antworten
  • Perplexity-User

    Betreiber
    Perplexity
    Aufgabe
    Abruf auf Nutzeranfrage
    Wenn blockiert
    Nutzer können Ihre Seite nicht aus Perplexity heraus öffnen

OpenAIs Dokumentation vermerkt für ChatGPT-User, dass „robots.txt-Regeln möglicherweise nicht gelten“ — weil die Anfrage eine Nutzerhandlung ist und kein automatisches Crawling. Wer diesen Bot blockieren will, sollte wissen, dass das Ergebnis nicht garantiert ist.

Welche Bots sollte man blockieren, welche offen lassen?

Die Entscheidung folgt dem Geschäftsmodell, eine einzige richtige Antwort gibt es nicht. Für Publisher, deren Inhalt das Produkt ist — Nachrichtenseiten, Forschungsverlage, kostenpflichtige Archive — ist das Blockieren von Trainings-Crawlern vertretbar: Verkauft wird der Inhalt selbst. Bei Unternehmen, die Leistungen und Produkte verkaufen, kehrt sich die Rechnung um: Inhalt ist nicht das Verkaufte, sondern das, was zum Verkauf führt.

Empfohlene Entscheidung nach Geschäftsmodell

  • Unternehmen mit Leistungen und Produkten

    Trainings-Bots
    Offen
    Such-Bots
    Offen
    Live-Abruf
    Offen
  • E-Commerce

    Trainings-Bots
    Offen
    Such-Bots
    Offen
    Live-Abruf
    Offen
  • Nachrichtenseite, kostenpflichtiges Archiv

    Trainings-Bots
    Gesperrt
    Such-Bots
    Offen
    Live-Abruf
    Offen
  • Forschungs- und Datenverlag

    Trainings-Bots
    Gesperrt
    Such-Bots
    Offen
    Live-Abruf
    Fallweise
  • Community-Inhalte hinter Mitgliedschaft

    Trainings-Bots
    Gesperrt
    Such-Bots
    Nur öffentliche Seiten
    Live-Abruf
    Nur öffentliche Seiten

In beiden Spalten ist das Blockieren von Such- und Live-Abruf-Crawlern selten richtig. Es ist das Äquivalent dazu, in der Suche nicht auffindbar sein zu wollen — und der Preis zeigt sich nicht sofort, sondern Monate später, wenn die Konkurrenz allein in den Antworten steht.

Wann wirkt eine Änderung an der robots.txt?

Nicht sofort — und das nicht zu wissen, löst viel unnötige Panik aus. Google cacht robots.txt in der Regel bis zu 24 Stunden, bei unmöglicher Aktualisierung auch länger. OpenAIs Dokumentation nennt etwa 24 Stunden, bis eine Änderung in den Systemen ankommt.

Auch die Unerreichbarkeit der Datei ist eine Entscheidung. Liefert robots.txt 5xx, stoppt Google das Crawling für 12 Stunden und versucht es erneut; schlägt der Abruf weiter fehl, nutzt Google die gecachte Fassung bis zu 30 Tage. Danach verhält es sich, wenn die Site grundsätzlich erreichbar ist, als gäbe es keine Einschränkungen. Ein Serverfehler bedeutet ab einem gewissen Punkt „alles erlaubt“.

Eine letzte Grenze: Google erzwingt ein Dateigrößenlimit von 500 Kibibyte und ignoriert Inhalte darüber hinaus. Handgeschriebene Dateien kommen selten in die Nähe, große Shops mit automatisch erzeugten Disallow-Listen schon — und die Regeln jenseits der Grenze werden stillschweigend ignoriert.

In robots.txt erlaubt, der Bot kommt trotzdem nicht durch: die Firewall-Falle

Der häufigste Grund, warum ein Crawler eine Site nicht erreicht, ist nicht robots.txt. robots.txt ist eine Bitte; die CDN- und Firewall-Ebene lässt die Anfrage gar nicht erst zum Server. Das Marketing öffnet die Datei, ein Schalter auf Infrastrukturseite verwirft den Bot am Edge — und monatelang weiß keine Seite, wo das Problem liegt.

Cloudflare ist das verbreitetste Beispiel. Der Schalter „Block AI bots“ in den Sicherheitseinstellungen blockiert verifizierte Bots, die als KI-Trainings-Crawler klassifiziert sind, sowie eine Reihe unverifizierter Bots mit ähnlichem Verhalten; laut Dokumentation nimmt er Bots mit gemischtem Zweck — Training und Suche — aus. Cloudflare stellt diesen Schalter am 15. September 2026 ein und ersetzt ihn durch Richtlinien, mit denen sich Such-, Agenten- und Trainingsverhalten getrennt steuern lassen.

  • Prüfen Sie in Cloudflare den Schalter „Block AI bots“ unter Security Settings sowie den Bot Fight Mode; beide arbeiten unabhängig von robots.txt.
  • Durchsuchen Sie WAF-Managed-Rule-Sets nach Blockierregeln für Bot-Kategorien — meist vor Jahren aktiviert und vergessen.
  • Prüfen Sie serverseitig, ob ModSecurity, fail2ban oder Rate-Limiting-Regeln Crawler-User-Agents verwerfen.
  • Ist ein „Bad Bot“- oder Sicherheits-Plugin installiert — bei WordPress häufig —, öffnen und lesen Sie dessen Liste blockierter User-Agents.
  • Bei Geoblocking: Die Egress-IPs der Crawler liegen außerhalb der Türkei, länderbasierte Sperren treffen sie mit.

Wie überprüfe ich, was ich blockiert oder geöffnet habe?

Drei getrennte Prüfungen sind nötig, und jede beantwortet eine andere Frage: Was sagt die Datei, was tut die Edge-Schicht, und ist der Bot tatsächlich gekommen.

Die Anfrage aus Sicht des Bots: verwirft der Edge sie?
# 1) Die Datei selbst
$ curl -s https://example.com/robots.txt | head -40

# 2) Eine echte Seite mit dem User-Agent des Bots anfordern.
$ curl -s -o /dev/null -w "%{http_code}\n" \
    -A "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; GPTBot/1.4; +https://openai.com/gptbot" \
    https://example.com/

# 200 -> kommt durch
# 403 / 503 / 429 -> nicht robots.txt, sondern die Edge-Schicht blockiert

# 3) Im Server-Log pruefen, ob der Bot tatsaechlich da war.
$ grep -Ei "GPTBot|OAI-SearchBot|ClaudeBot|PerplexityBot" /var/log/nginx/access.log \
    | awk '{print $1, $12, $13}' | sort | uniq -c | sort -rn | head

Der dritte Befehl trennt zugleich Echt von Gefälscht: Ein User-Agent lässt sich fälschen, eine IP nicht. OpenAI veröffentlicht Crawler-IP-Bereiche unter openai.com/gptbot.json und openai.com/searchbot.json, Anthropic unter claude.com/crawling/bots.json, Google in seiner Datei googlebot.json.

Was ist der Unterschied zwischen robots.txt und noindex?

robots.txt verhindert das Crawlen, noindex das Indexieren — und beides zu verwechseln erzeugt einen der tückischsten SEO-Fehler überhaupt. Sperren Sie eine Seite in der robots.txt, kann der Crawler sie nicht abrufen; und weil er sie nicht abrufen kann, liest er das noindex auf der Seite nie. Ist die Seite extern verlinkt, kann sie weiterhin nur mit ihrer URL gelistet werden — und der Weg, sie zu entfernen, ist damit versperrt.

Die richtige Reihenfolge lautet: Soll eine Seite aus dem Index, lassen Sie sie in der robots.txt offen und setzen Sie noindex auf die Seite. Der Crawler kommt herein, liest das Tag, entfernt die Seite. Danach können Sie das Crawlen in der robots.txt zusätzlich sperren.

Was sind die häufigsten robots.txt-Fehler?

  • Die Zeile „Disallow: /“ aus der Staging-Umgebung in die Produktion mitnehmen. Eine Zeile, die ganze Site. Jedes Team ohne robots.txt-Prüfung in der Release-Liste erlebt das einmal.
  • Eine crawler-spezifische Gruppe eröffnen und die allgemeinen Sperren darin nicht wiederholen — die Datei lässt dann ausgerechnet den gemeinten Bot freier als alle anderen.
  • CSS- und JavaScript-Verzeichnisse sperren. Ein Crawler, der nicht rendern kann, sieht unvollständige Inhalte; auf Seiten, die /wp-includes/ oder /assets/ schließen, passiert das noch immer.
  • Eine vollständige Adresse in eine Disallow-Zeile schreiben. Regeln beginnen mit einem Pfad (/sepet/), nicht mit einer Domain; eine Zeile https://example.com/sepet/ bewirkt nichts.
  • Die Sitemap-Zeile relativ schreiben. Die Sitemap verlangt eine absolute Adresse: nicht /sitemap.xml, sondern https://example.com/sitemap.xml.
  • Groß- und Kleinschreibung übersehen. Pfade sind case-sensitiv; /Urunler und /urunler sind zwei verschiedene Pfade.

Häufige Fragen

Was passiert ohne robots.txt-Datei?

Fehlt die Datei und liefert die Adresse 404, nehmen Crawler an, es gebe keine Einschränkungen, und crawlen frei. Für die meisten Unternehmenswebsites ist das harmlos; das Problem ist, dass niemand erkennt, ob das Fehlen Absicht oder eine offene Aufgabe ist. Eine leere Datei — nur User-agent: * und eine leere Disallow-Zeile — macht die Entscheidung lesbar.

Verschwinde ich ganz aus ChatGPT, wenn ich GPTBot blockiere?

Nein. GPTBot dient nur dem Modelltraining. Sucht ChatGPT für eine Antwort, nutzt es OAI-SearchBot; öffnet ein Nutzer einen Link, ChatGPT-User. Sind diese beiden offen, können Sie als Quelle in Antworten erscheinen, während GPTBot gesperrt bleibt — für viele Unternehmen ist genau das die richtige Konfiguration.

Funktioniert die Crawl-delay-Direktive?

Das hängt vom Crawler ab, weshalb es keine verlässliche Ratensteuerung ist. Anthropics Dokumentation zeigt ein Crawl-delay-Beispiel für ClaudeBot; Google nutzt die Direktive gar nicht, die Crawl-Rate läuft über die Search Console. Ist die Serverlast ein echtes Problem, hilft Rate-Limiting auf dem Server, keine Zeile in der robots.txt.

Wenn ich einen Bot wieder freigebe, wie lange dauert seine Rückkehr?

Die Entscheidung ist umkehrbar, aber nicht sofort wirksam. Zuerst muss der Cache ablaufen — bei Google in der Regel 24 Stunden, OpenAI nennt etwa 24 Stunden. Danach hängt es davon ab, wie oft der Crawler Ihre Site überhaupt besucht, was bei einer kleinen, selten aktualisierten Site Wochen dauern kann. Sperren geht schnell, Zurückkommen langsam.

Gibt es ein Werkzeug zum Testen der robots.txt?

Der robots.txt-Bericht in der Google Search Console zeigt, wie Google Ihre Datei sieht — aber nur für Googles Crawler. Für die KI-Crawler insgesamt wertet der kostenlose KI-Crawler-Zugangscheck von Galata Media die Datei nach Gruppenzuordnung und Longest-Match-Regel aus und liefert ein Ergebnis für sechzehn Bots. Zusammen bleibt kein blinder Fleck.

Suchanfragen, die diese Seite beantwortet

  • robots.txt
  • robots.txt erstellen
  • robots.txt beispiel
  • gptbot blockieren
  • ki-crawler blockieren

Sprechen wir über Ihr Projekt.

Eine neue Marke, eine zu erneuernde Website oder Sichtbarkeit in der Suche — schreiben Sie uns, wo Sie beginnen möchten, und wir entwerfen den Weg gemeinsam.