robots.txt & Sitemap — Manual
Funktionsbeschreibung von robots.txt & Sitemap: beide Generatoren mit allen Optionen, die zwei Live-Checker, Direktiven, Sitemap-Felder, Limits und Architektur.
Zurück zur Übersicht: robots.txt & Sitemap · Tool live öffnen: www.jpkc.com/tools/robots-sitemap/
Dieses Manual beschreibt robots.txt & Sitemap vollständig: jeden der sieben Tabs, jede Option der beiden Generatoren, das Verhalten der beiden Live-Checker und die technischen Grenzen darunter. Die Oberfläche des Tools ist auf Englisch — die Tab- und Button-Bezeichnungen stehen hier deshalb in ihrer englischen Original-Schreibweise (mit deutscher Erläuterung), damit du dich im echten Interface zurechtfindest.
Aufbau: sieben Tabs, vier Funktionen
Das Tool gliedert sich in sieben Tabs: robots.txt (Generator), Sitemap (Generator), Check robots.txt (Live-Checker), Check Sitemap (Live-Checker), Examples, Tips und Reference. Die beiden Generatoren erzeugen Dateien, die beiden Checker holen und analysieren bestehende Dateien von einer fremden URL. Examples, Tips und Reference sind Nachschlage-Tabs und funktionieren ohne jede Eingabe. Auf schmalen Bildschirmen stehen Formular und Ausgabe untereinander.
robots.txt-Generator
Der erste Tab baut eine robots.txt mit Live-Vorschau: Jede Änderung im Formular links (Abschnitt Configure robots.txt) aktualisiert nach einer kurzen Verzögerung den Ausgabe-Editor rechts.
User-agent-Blöcke
Das Herzstück, im Formular unter Groups. Jeder Block entspricht einer Gruppe der robots.txt. Über Add User-agent Block legst du beliebig viele an; ein neuer Block startet mit einer leeren Disallow:-Zeile. Jeder Block hat:
- ein User-agent-Feld mit Autovervollständigung (Datalist). Mehrere Bots trägst du kommagetrennt ein (
GPTBot, ClaudeBot) — jeder bekommt in der Ausgabe eine eigeneUser-agent:-Zeile, die Regeln darunter gelten für alle. Vorgeschlagen werden 40 Bot-Namen aus der Bot-Liste des Tools — Suchmaschinen (Googlebot,Bingbot,DuckDuckBot,Applebot,YandexBot…), Archive (archive.org_bot), Social-Bots (facebookexternalhit,Twitterbot,LinkedInBot), KI-Crawler für Training (GPTBot,ClaudeBot,Google-Extended,Applebot-Extended,meta-externalagent,CCBot…), für KI-Suche und Abrufe auf Nutzeranfrage (OAI-SearchBot,ChatGPT-User,Claude-SearchBot,Claude-User,PerplexityBot…) sowie SEO-Tool-Crawler (AhrefsBot,SemrushBot,MJ12bot…). Du kannst auch jeden anderen Namen eintippen;*steht für „alle Bots ohne eigene Gruppe". - Regelzeilen. Über Add Rule fügst du welche hinzu, jede mit einem Typ-Auswahlfeld (
DisallowoderAllow) und einem Pfad-Feld (z. B./admin/). Pfade sind Präfixe und dürfen*(beliebige Zeichen) und ein abschließendes$(Ende der URL) enthalten, etwa/*.pdf$oder/*?. Ein leerer Wert erzeugtDisallow:— „nichts blockiert", also alles erlaubt. - ein Crawl-delay-Feld (Zahl in Sekunden, Feld von 0 bis 3600, optional). Es erzeugt eine
Crawl-delay:-Zeile im Block; die Hinweisliste unter der Vorschau vermerkt dazu, dass Google die Direktive ignoriert und Bing und Yandex sie befolgen.
Blöcke und Regelzeilen verschiebst du mit den Pfeil-Buttons (Move up/Move down) und entfernst sie mit dem Papierkorb- bzw. X-Button. Blöcke lassen sich zusätzlich mit der Maus am Griff-Symbol per Drag-and-drop umsortieren.
Zwei Sonderfälle regelt der Generator selbst: Ein Block ganz ohne Regelzeile bekommt automatisch Allow: / — ohne Regel würde er nach RFC 9309 mit dem nächsten Block verschmelzen und dessen Regeln erben; ein Hinweis unter der Vorschau sagt dir das. Ein Block ohne User-agent, aber mit Regeln wird ausgelassen und ebenfalls gemeldet.
Sitemaps
Unter den Blöcken steht das Feld Sitemaps: eine absolute URL pro Zeile. Jede Zeile wird am Ende der Datei als Sitemap: URL ausgegeben; diese Zeilen gelten für alle Crawler, unabhängig von den Gruppen. Eine Host:-Direktive bietet der Generator nicht mehr an — sie wurde nur von Yandex gelesen und ist seit 2018 wirkungslos.
Ausgabe, Kopieren, Download, Import
Rechts steht der Ausgabe-Editor (schreibgeschützt). Jede generierte Datei beginnt mit der Kommentarzeile # robots.txt — generated with https://www.jpkc.com/tools/robots-sitemap/. Über dem Editor:
- Load File — liest eine bestehende
robots.txt(bis 20 MB) ein und füllt das Formular daraus. Jede Gruppe der Datei wird ein Block, mehrere User-agents einer Gruppe stehen kommagetrennt im selben Block; Sitemaps landen im Sitemaps-Feld. Ein Bericht über dem Formular nennt, was dabei verloren geht oder auffällt: Kommentare werden nicht übernommen, eine veralteteHost-Zeile wird verworfen, und die Warnungen und Fehler der Prüfung (siehe unten) werden aufgelistet. Enthält die Datei weder Gruppen noch Sitemaps, meldet das Tool das und lässt das Formular unverändert. - Reset — setzt das Formular nach einer Rückfrage auf den Standard zurück: ein Block
User-agent: *mit einer leerenDisallow:-Regel. - Copy — kopiert die
robots.txtin die Zwischenablage. - Download — speichert sie als
robots.txt(text/plain).
Unter dem Editor weist ein Hinweis darauf hin, dass die Datei ins Root jedes Hosts gehört und als text/plain ausgeliefert werden muss — Subdomains brauchen eine eigene Datei.
Der Zwischenstand wird automatisch lokal im Browser (LocalStorage) gespeichert und beim nächsten Besuch wiederhergestellt; Formularstände aus älteren Versionen des Tools werden dabei übernommen. Beim allerersten Aufruf siehst du den Standard-Block User-agent: *.
Hinweise unter der Vorschau
Direkt unter dem Editor zeigt eine Liste alle Auffälligkeiten der gerade erzeugten Datei, sortiert nach Fehlern, Warnungen und Infos. Sie stammen aus denselben Prüfungen wie im Tab Check robots.txt (Liste dort unter Was du im Ergebnis siehst), ergänzt um die Hinweise des Formulars — etwa zum automatisch gesetzten Allow: /. Ohne Befund bleibt die Liste ausgeblendet.
URL-Test im Generator
Die Karte Test a URL against this robots.txt prüft live gegen die Datei, die du gerade baust: Im Feld Path or URL trägst du einen Pfad oder eine volle URL ein (Vorgabe /), unter User-agent einen Bot (Vorgabe Googlebot, mit Autovervollständigung). Das Ergebnis aktualisiert sich bei jeder Eingabe und bei jeder Änderung am Formular: Allowed oder Blocked, dazu die greifende Regel und die Gruppe, die für den Bot gilt — oder der Hinweis, dass keine Regel bzw. keine Gruppe passt. Wie das Tool dabei entscheidet, steht unter So liest das Tool eine robots.txt.
Sitemap-Generator
Der zweite Tab baut eine XML-Sitemap oder einen Sitemap-Index, ebenfalls mit Live-Vorschau (Abschnitt Configure sitemap.xml).
Dateityp: Sitemap oder Sitemap-Index
Das Auswahlfeld File type bestimmt, was entsteht:
- Sitemap (pages) — eine reguläre Sitemap mit
<urlset>, ein Eintrag pro Seite. - Sitemap index (sitemaps) — ein Index mit
<sitemapindex>, ein Eintrag pro Sitemap-Datei. Die Liste heißt dann Sitemaps, die Felderchangefrequndpriorityverschwinden (ein Index kennt pro Eintrag nur<loc>und<lastmod>), und Download speichert alssitemap_index.xml.
Base-URL und URL-Zeilen
- Base URL — die Adresse, mit der relative Pfade verbunden werden (z. B.
https://example.com). Volle URLs in den Zeilen bleiben, wie sie sind. Ohne Base-URL kann ein relativer Pfad nicht aufgelöst werden: Der Eintrag fehlt dann in der Ausgabe, und ein Fehlerhinweis nennt ihn. - URLs — über Add entry fügst du Zeilen hinzu. Jede Zeile hat:
- Path or URL — ein Pfad relativ zur Base-URL (z. B.
/about/; ein fehlender führender/wird ergänzt) oder eine volle URL. Das Tool prozentkodiert die Adresse (Umlaute, Leerzeichen) und escapet sie fürs XML — ein&im Query-String wird zu&. - Last modified — ein Textfeld für
<lastmod>im W3C-Datetime-Format: nur das Datum (2026-10-15) oder mit Uhrzeit und Zeitzone (2026-10-15T09:30:00+02:00). - changefreq — Auswahl für
<changefreq>:always,hourly,daily,weekly,monthly,yearly,never(oder leer). - priority — Auswahl für
<priority>:1.0bis0.0in Zehntel-Schritten (oder leer).
- Path or URL — ein Pfad relativ zur Base-URL (z. B.
Optionale Felder werden nur ausgegeben, wenn sie gesetzt sind; beide Auswahlfelder stehen per Default leer. Das Formular weist selbst darauf hin, dass Google changefreq und priority ignoriert und ein genaues lastmod zählt. Zeilen verschiebst du mit den Pfeil-Buttons und entfernst sie mit dem X-Button.
Der Button Empty lastmod → today trägt in alle Zeilen ohne lastmod das heutige Datum ein; Zeilen mit Datum bleiben unverändert.
Viele Einträge auf einmal
Im Feld Add many at once fügst du eine Liste ein — ein Pfad oder eine URL pro Zeile — und übernimmst sie mit Add lines als neue Einträge. Ist das Formular bis dahin nur mit einer einzigen leeren Startzeile belegt, ersetzt die Liste diese Zeile. Leerzeilen werden übersprungen.
Ausgabe und Import
Der Editor rechts zeigt die fertige Datei mit XML-Deklaration und dem Namespace http://www.sitemaps.org/schemas/sitemap/0.9. Darunter listet das Tool laufend die Befunde der Validierung — etwa ein lastmod, das kein gültiges W3C-Datum ist, doppelte Adressen, Einträge auf einem anderen Host als der Base-URL oder mehr als 50.000 Einträge (dann: aufteilen und einen Index verwenden). Ein Hinweis unter dem Editor erinnert daran, die Sitemap in der robots.txt zu deklarieren und in der Search Console bzw. den Bing Webmaster Tools einzureichen. Buttons:
- Load File — liest eine bestehende Datei (
.xmloder.txt, bis 20 MB) ein. Das Tool versteht reguläre Sitemaps, Sitemap-Indizes (dann schaltet es auf Sitemap index um), Text-Sitemaps mit einer URL pro Zeile und RSS-/Atom-Feeds, deren Links es als normale Sitemap übernimmt. Die Base-URL wird aus dem ersten Eintrag abgeleitet; Einträge auf diesem Host werden zu Pfaden (Query-String und Fragment bleiben erhalten), Einträge auf anderen Hosts behalten ihre volle URL.lastmodwird als Text übernommen, eine Uhrzeit geht also nicht verloren. Ist das XML nicht wohlgeformt, rettet das Tool die Adressen und meldet, dass die übrigen Felder leer bleiben; weitere Befunde stehen im Bericht über dem Formular. - Reset — setzt das Formular nach einer Rückfrage auf eine einzelne Zeile
/ohne Base-URL zurück. - Copy / Download — kopiert bzw. speichert die Datei als
sitemap.xml(im Index-Modussitemap_index.xml, Typapplication/xml).
Beim ersten Aufruf sind drei Beispielzeilen (/, /about/, /contact/) vorbelegt. Der Zwischenstand wird ebenfalls lokal gespeichert.
Live-Checker: Check robots.txt
Dieser Tab (Check a live robots.txt) holt eine bestehende robots.txt von einer fremden Domain und zerlegt sie. Du gibst entweder nur eine Domain ein (z. B. example.com; /robots.txt wird automatisch ergänzt) oder eine vollständige URL. Fehlt das Protokoll, wird https:// vorangestellt. Ein Klick auf Check startet den Abruf.
Was du im Ergebnis siehst
- Eine Zusammenfassung mit HTTP-Status, Dateigröße, Anzahl der Gruppen und der Zahl der Fehler (oder, wenn es keine gibt, der Warnungen) — oder „No problems found.". Eine leere Datei wird als „Empty file — everything is allowed." eingeordnet.
- Checks — die Befunde, sortiert nach Fehler, Warnung und Info, jeweils mit Zeilennummern. Zur Antwort des Servers: eine Weiterleitung (Crawler folgen bis zu fünf), eine HTML-Seite statt einer Textdatei (meist existiert die Datei nicht und der Server liefert eine Fehler- oder Startseite), ein anderer Content-Type als
text/plain, gzip-Kompression, ungültiges UTF-8, eine wegen des Abruflimits gekürzte Datei. Zum Inhalt: Regeln vor der erstenUser-agent-Zeile (die kein Crawler anwendet), Zeilen ohneFeld: Wert, Direktiven ohne Doppelpunkt oder mit Tippfehler (Google toleriert etwaDissallow, andere Crawler nicht), leere User-agents, User-agent-Werte mit Version (Googlebot/2.1zählt nur alsgooglebot), Leerzeilen zwischenUser-agent-Zeilen, Pfade ohne führendes/oder*, relative Sitemap-URLs, ein nicht numerischesCrawl-delay(jedesCrawl-delaybekommt zudem die Info, dass Google es ignoriert und Bing und Yandex es befolgen), nicht unterstützte Direktiven wieHost,Noindex,Nofollow,Clean-param,Request-rateoderVisit-time, unbekannte Direktiven, mehrere Gruppen für denselben Bot (Crawler führen sie zusammen), eine Datei ganz ohne Gruppe,User-agent: *mitDisallow: /sowie Dateien über 500 KiB (Google liest nur die ersten 500 KiB). Ein Byte-Order-Mark am Dateianfang wird als Info vermerkt. - Per-bot access to
/— eine Tabelle, die für 40 bekannte Bots prüft, ob sie die Startseite abrufen dürfen. Pro Bot: Name, Betreiber (Owner), Type (Search, Social, Archive, AI, SEO Tool), Access (Allowed/Blocked), Group (der Bot-Name der Gruppe, die greift,*für die Wildcard-Gruppe odernone), Crawl-delay und die konkret greifende Regel (Matched rule). Das ist der schnellste Weg zu sehen, ob du versehentlich KI-Crawler aussperrst. - Groups — jede Gruppe der Datei einzeln, mit ihren User-agents, der Zeilennummer, einem Crawl-delay-Badge und ihren Allow-/Disallow-Regeln. Eine Gruppe ohne einschränkende Regel wird als „No restricting rule — full access." markiert.
- Sitemaps declared — alle in der Datei deklarierten
Sitemap:-Zeilen. Neben jeder absoluten URL steht ein check-Button, der direkt in den Check Sitemap-Tab springt und diese Sitemap prüft; relative Angaben werden als „not absolute" markiert. Fehlt die Zeile ganz, rät das Tool, eine zu ergänzen. - Test a URL against these rules — ein kleines Formular: Du gibst unter Path or URL einen Pfad oder eine URL (Vorgabe
/) und unter User-agent einen Bot (VorgabeGooglebot) ein und klickst Test. Zurück kommtAllowedoderBlocked, der geprüfte Pfad in der Form, in der das Tool ihn vergleicht (prozentkodiert), die greifende Regel mit Zeilennummer, die Gruppe und ein etwaiges Crawl-delay. Im Feld User-agent darfst du auch einen kompletten User-Agent-String einfügen; das Tool zieht die Produkt-Namen daraus. - Raw content — der rohe Inhalt der Datei, ausklappbar und mit Copy kopierbar (die Anzeige endet nach 50.000 Zeichen, Copy liefert alles).
Sonderfälle
Der HTTP-Status entscheidet, wie Crawler die Datei behandeln — und so ordnet das Tool ihn auch ein:
- 2xx — die Datei wird ausgewertet wie oben beschrieben.
- 4xx (z. B. 404) — es gibt keine
robots.txt; Crawler dürfen alles abrufen. Das Tool zeigt eine Warnung statt einer Auswertung. - 5xx oder 429 — der Server antwortet mit einem Fehler; Crawler müssen die ganze Site als gesperrt behandeln, bis die Datei wieder erreichbar ist. Das Tool zeigt das als Fehler.
- Jeder andere Status wird als „Unexpected status" gemeldet.
Kann die Datei gar nicht abgerufen werden (DNS-Fehler, Timeout, gesperrte Adresse), erscheint eine Fehlermeldung mit dem Grund.
Live-Checker: Check Sitemap
Derselbe Ablauf für Sitemaps (Check a live sitemap.xml): Domain oder volle URL eingeben, Check klicken.
Welche Datei geprüft wird
- Gibst du nur eine Domain ein (
example.comoderhttps://example.com/), holt das Tool zuerst dierobots.txtund prüft die erste dort deklarierte Sitemap. Deklariert die Datei mehrere, nennt ein Hinweis die übrigen als Buttons, mit denen du sie einzeln prüfst. Deklariert sie keine, nimmt das Tool/sitemap.xml. - Gibst du eine volle URL ein, wird genau diese Datei geprüft.
Das Tool versteht reguläre Sitemaps (<urlset>), Sitemap-Indizes (<sitemapindex>), Text-Sitemaps mit einer URL pro Zeile und RSS-/Atom-Feeds, die Google ebenfalls als Sitemap akzeptiert. Gzip-komprimierte Dateien (.xml.gz) werden vor der Prüfung entpackt.
Reguläre Sitemap (urlset)
Für reguläre Sitemaps, Text-Sitemaps und Feeds zeigt das Tool:
- Eine Zusammenfassung mit Dateityp (sitemap, text sitemap, feed …), Anzahl der URLs, Dateigröße und der Zahl der Fehler (oder, wenn es keine gibt, der Warnungen) — oder „No problems found.".
- Checks — Befunde zur Antwort (Weiterleitung: die endgültige URL einreichen, HTML-Seite statt Sitemap, gzip, ungültiges UTF-8, gekürzte Datei) und zum Inhalt: nicht wohlgeformtes XML (Crawler verwerfen dann die ganze Datei), fehlender oder falscher Sitemap-Namespace,
<url>ohne bzw. mit mehreren<loc>, vermischte<url>- und<sitemap>-Einträge, relative Adressen, Leerzeichen oder Nicht-ASCII-Zeichen in Adressen, Adressen über 2.048 Zeichen, Adressen auf einem anderen Host oder Protokoll als die Sitemap, Duplikate,lastmodohne gültiges W3C-Datum oder in der Zukunft, ungültigechangefreq- undpriority-Werte, mehr als 50.000 URLs oder mehr als 50 MB unkomprimiert. Die 50-MB-Prüfung greift nur im Expert Mode: Über den Server-Proxy wird eine so große Datei schon beim Abruf gekürzt (siehe Abruf-Grenzen), und der Checker meldet dann, dass die Ergebnisse unvollständig sind. Als Info kommen dazu: Google ignoriertchangefrequndpriority; eine Sitemap ganz ohnelastmod; Text-Sitemap bzw. Feed erkannt. - Metadata — eine Tabelle mit der Anzahl der URLs und Fortschrittsbalken dafür, bei wie viel Prozent der URLs
lastmod,changefrequndprioritygesetzt sind (die beiden letzten mit dem Vermerk „ignored by Google"). Nutzt die Sitemap Erweiterungen, zählt eine Zeile Extensions Bilder, Videos, News-Einträge und hreflang-Alternativen. - Do the URLs work? — die Stichprobe, siehe unten.
- URLs — eine Tabelle der Einträge (die ersten 100 von N) mit URL und
lastmod. Copy all URLs kopiert die vollständige Liste, nicht nur die angezeigten 100. - Raw content — der rohe Inhalt, ausklappbar und kopierbar (die Anzeige endet nach 50.000 Zeichen, Copy liefert alles).
Sitemap-Index
Erkennt der Checker eine Index-Datei (<sitemapindex>), listet er unter Child sitemaps stattdessen die Kind-Sitemaps mit ihrem optionalen lastmod. Jede Kind-Sitemap hat einen Check-Button, mit dem du sie einzeln weiterprüfst. Die Checks melden auch hier ungültige Adressen und Datumsangaben, <url>-Einträge im Index und mehr als 50.000 gelistete Sitemaps.
Abgleich mit der robots.txt
Sobald die Sitemap Einträge hat, holt das Tool die robots.txt desselben Hosts und vergleicht beide Dateien. Die Karte robots.txt meldet:
- wie viele gelistete URLs die
robots.txtfür Googlebot sperrt, mit bis zu drei Beispielen — eine Sitemap sollte nur abrufbare Seiten enthalten; - ob die
robots.txtdie Sitemap selbst sperrt; - ob die Sitemap in der
robots.txtdeklariert ist, und falls nicht, die passendeSitemap:-Zeile zum Ergänzen; - dass die ganze Site als gesperrt gilt, wenn die
robots.txtmit einem Serverfehler antwortet — oder dass ohnerobots.txtnichts gesperrt ist.
Stichprobe: Funktionieren die URLs?
Die Karte Do the URLs work? prüft auf Knopfdruck (Check N URLs), ob die gelisteten Seiten wirklich erreichbar sind. Bei bis zu 20 URLs prüft sie jede, bei mehr eine gleichmäßig über die Liste verteilte Stichprobe von 20 (der Button heißt dann Check 20 URLs (sample)). Jede URL wird per HEAD-Anfrage abgefragt; lehnt ein Server HEAD ab, fragt der Server-Proxy mit einem kleinen GET nach. Pro URL erscheinen Status und Bewertung: OK, eine Weiterleitung („list the final URL" — in die Sitemap gehört die Ziel-URL), Broken ab Status 400 („remove it from the sitemap") oder, wenn keine Antwort kommt, die Fehlermeldung des Abrufs. Geprüft werden nur absolute http(s)-Adressen. Am Ende fasst eine Zeile zusammen, wie viele URLs in Ordnung, weitergeleitet oder kaputt sind.
Sonderfälle
Antwortet der Server nicht mit 2xx, meldet das Tool „No sitemap at …" mit dem Status (und, falls du nur eine Domain eingegeben hast und die robots.txt keine Sitemap nennt, auch das). Eine leere Datei, eine HTML-Seite oder ein unbekanntes Wurzelelement (weder <urlset> noch <sitemapindex>) werden als Fehler gemeldet; eine wohlgeformte Datei ohne einen einzigen Eintrag erscheint in der Zusammenfassung als „file without entries". Wurde die Datei wegen des Größenlimits des Proxys abgeschnitten, weist ein Hinweis darauf hin, dass die Ergebnisse unvollständig sind.
So liest das Tool eine robots.txt
Generator-Test, Per-Bot-Tabelle, URL-Test und der Abgleich mit der Sitemap nutzen dieselbe Auswertung nach RFC 9309 in Googles Lesart:
- Gruppen: Aufeinanderfolgende
User-agent-Zeilen bilden eine Gruppe und teilen sich die Regeln darunter. Erst eineUser-agent-Zeile nach einer Regel beginnt eine neue Gruppe — eine Leerzeile beendet keine Gruppe. Mehrere Gruppen für denselben Bot werden zusammengeführt. - Welche Gruppe gilt: Ein Bot folgt der Gruppe mit seinem Namen und ignoriert dann
User-agent: *vollständig; nur ohne eigene Gruppe gilt*. Verglichen wird der Produkt-Name ohne Groß-/Kleinschreibung und ohne Version (Googlebot/2.1→googlebot) — und zwar exakt:googletrifftGooglebotnicht.Googlebot-Image,Googlebot-NewsundGooglebot-Videofallen ohne eigene Gruppe auf die Gruppe vonGooglebotzurück. - Welche Regel gilt: Verglichen wird Pfad plus Query-String. Regeln sind Präfixe (
/admintrifft auch/administrator),*steht für beliebige Zeichen, ein$am Ende für das Ende der URL. Die längste passende Regel gewinnt; bei gleicher Länge gewinntAllow. Pfade und Regeln werden in einer einheitlichen Prozent-Kodierung verglichen, sodass/äund/%C3%A4als gleich gelten. /robots.txtselbst ist immer erlaubt.
Examples, Tips, Reference
- Examples — fertige Vorlagen mit Vorschau. Für die
robots.txt: Allow All Bots, Standard Website (Admin-, Login- und Privatbereiche, interne Suche und PDFs per Wildcard gesperrt), WordPress, Block AI Training, Allow AI Search und Block All AI Crawlers. Für die Sitemap: Simple Website (vier Seiten mit echtemlastmod), Blog (Datumsangaben mit Uhrzeit und Zeitzone, eine URL mit Query-String) und Shop: Sitemap Index. Der Button Load into Generator ersetzt nach einer Rückfrage den jeweiligen Generator durch die Vorlage und wechselt in dessen Tab. - Tips — kompakte Best-Practice-Karten („Do This" / „Avoid This") für beide Dateien plus eine Erklärung, wie
robots.txtund Sitemap zusammenspielen. - Reference — die Format-Spezifikation: eine Tabelle der
robots.txt-Direktiven mit Beispiel und Support-Hinweis, die Bot-Liste mit Betreiber und Typ, eine Tabelle der Sitemap-XML-Elemente sowie Links zu RFC 9309, den Google-Leitfäden fürrobots.txtund Sitemaps, dem Sitemaps-Protokoll und der Search Console.
robots.txt-Direktiven (Reference)
| Direktive | Unterstützung | Bedeutung |
|---|---|---|
User-agent |
alle | Beginnt eine Gruppe (Produkt-Name, Groß-/Kleinschreibung egal). Aufeinanderfolgende Zeilen teilen sich eine Gruppe; Gruppen für denselben Bot werden zusammengeführt. |
Disallow |
alle | Sperrt Pfade, die mit dem Wert beginnen (Pfad + Query). * = beliebige Zeichen, $ am Ende = Ende der URL. Leerer Wert sperrt nichts. |
Allow |
alle | Gibt einen Pfad frei. Die längste passende Regel gewinnt, bei gleicher Länge Allow. |
Crawl-delay |
die meisten | Sekunden zwischen Anfragen. Nicht von Googlebot unterstützt (dort die Search Console nutzen). |
Sitemap |
alle | Absolute URL einer Sitemap. Darf mehrfach vorkommen, unabhängig von den Gruppen. |
Host |
veraltet | Wurde nur von Yandex gelesen und seit 2018 ignoriert — stattdessen auf den bevorzugten Host weiterleiten. |
Noindex |
keine | War nie Standard; Google wertet es seit 2019 nicht mehr aus — stattdessen Meta-Robots oder X-Robots-Tag. |
Bot-Liste (Reference)
Die Tabelle Common Bot Names listet die 40 Bots, die das Tool auch für die Autovervollständigung und die Per-Bot-Tabelle nutzt — mit Betreiber bzw. Zweck und Typ. Bei KI-Crawlern steht statt „AI" der Zweck: AI training (z. B. GPTBot, ClaudeBot, Google-Extended, Applebot-Extended, meta-externalagent, CCBot, Bytespider, Amazonbot), AI search (OAI-SearchBot, Claude-SearchBot, PerplexityBot, DuckAssistBot) oder AI user request (ChatGPT-User, Claude-User, Perplexity-User, MistralAI-User — Abrufe, die eine Person im Chat auslöst).
Sitemap-XML-Elemente (Reference)
| Element | Pflicht | Werte / Hinweis |
|---|---|---|
<urlset> |
ja | Wurzelelement mit Namespace http://www.sitemaps.org/schemas/sitemap/0.9. |
<url> |
ja | Container je Eintrag. |
<loc> |
ja | Voll-qualifizierte URL mit Protokoll, max. 2048 Zeichen, URL-kodiert. |
<lastmod> |
optional | Letzte wesentliche Änderung im W3C-Datetime-Format (2026-10-15 oder 2026-10-15T09:30:00+02:00). Google nutzt es, wenn es durchgängig stimmt. |
<changefreq> |
optional | always/hourly/daily/weekly/monthly/yearly/never — von Google ignoriert. |
<priority> |
optional | 0.0–1.0 — von Google ignoriert. |
<sitemapindex> / <sitemap> |
nur im Index | Listet bis zu 50.000 Sitemaps (je mit <loc>, optional <lastmod>). Ein Index darf keine weiteren Indizes listen. |
| Grenzen | — | 50.000 URLs und 50 MB pro Datei, unkomprimiert. Text-Sitemaps (eine URL pro Zeile) und RSS-/Atom-Feeds werden ebenfalls akzeptiert. |
Architektur, Limits und Datenschutz
- Generatoren und Auswertung rein clientseitig. Die beiden Generator-Tabs erzeugen ihre Dateien vollständig im Browser, und auch Parser, Prüfungen und URL-Tests laufen dort. Es wird nichts hochgeladen; der Zwischenstand liegt nur in deinem LocalStorage. Einen Verlauf der Prüfungen speichert das Tool nicht.
- Checker über einen serverseitigen Proxy. Eine fremde Datei kann der Browser wegen CORS nicht direkt laden. Deshalb holt ein serverseitiger Proxy auf dem JPKCom-Server die Datei per cURL; die Analyse läuft danach wieder lokal im Browser. Die geprüfte Domain sieht einen Request vom JPKCom-Server (mit einem Browser-User-Agent), nicht deine IP-Adresse.
- Kein öffentliches API. Die beiden serverseitigen Endpunkte (ein Fetch-Proxy und ein token-basierter Hilfsendpunkt) sind kein öffentlich aufrufbares API — sie werden ausschließlich vom JavaScript des Tools genutzt und sind gegen Missbrauch gehärtet (Token-Authentifizierung, Referer-Prüfung).
- SSRF-Schutz: Interne, lokale und private IP-Adressen werden blockiert, und jeder Redirect-Hop wird erneut geprüft.
- Abruf-Grenzen: maximal 5 MB Body (größere Dateien werden abgeschnitten — ein Hinweis erscheint), gzip-Dateien werden auf höchstens 10 MB entpackt, 15 s Timeout pro Abruf, 30 s für alle Weiterleitungen zusammen, höchstens 5 Weiterleitungen. Die Stichprobe fragt jede URL mit 10 s Timeout ab.
- Rate-Limit: Im Standard-Proxy-Modus liegen zwischen zwei Prüfungen mindestens 3 Sekunden; klickst du früher, nennt ein Hinweis die verbleibende Wartezeit. Serverseitig gilt ein Limit von 120 Abrufen pro Minute und IP-Adresse — darüber kommt „Too many requests — please wait a minute".
- Expert Mode (optional). Über einen Schalter im Header lässt sich ein lokaler Proxy (
http://127.0.0.1:<port>) aktivieren, der die Dateien direkt holt — ohne Wartezeit und ohne die Größengrenze des Server-Proxys;.xml.gz-Dateien entpackt dann der Browser. Die Einrichtung ist fortgeschritten und für den normalen Betrieb nicht nötig.
Für den Einstieg, die Zielgruppen und das große Bild siehe die Übersichtsseite. Konkrete Durchläufe zeigen die Beispiele. Ausprobieren kannst du alles direkt im Tool.