robots.txt voor AI-crawlers: GPTBot, ClaudeBot en PerplexityBot toestaan of blokkeren

Door SEOgrinder · Gepubliceerd · 7 min leestijd

Kort antwoord: Een robots.txt voor AI-crawlers bepaalt per bot of een AI-systeem je website mag lezen. Er zijn drie soorten bots: trainingsbots (GPTBot, ClaudeBot), zoekbots (OAI-SearchBot, Claude-SearchBot, PerplexityBot) en bots die een pagina ophalen omdat een gebruiker erom vraagt (ChatGPT-User, Claude-User). Wil je in AI-zoekantwoorden kunnen worden aangehaald, sta dan de zoekbots toe. Of je training toestaat, bepaal je zelf. Eén klein bestand regelt dit allemaal, maar één kleine fout in de opbouw maakt de regels nutteloos.

Waarom robots.txt voor AI-crawlers meer is dan één regel

User-agent: * was vroeger genoeg. Bij AI is dat te grof, want hetzelfde bedrijf zet verschillende bots in voor verschillende taken. OpenAI zegt het zelf: elke instelling staat los van de andere. Je kunt OAI-SearchBot toestaan, zodat je site in de zoekresultaten van ChatGPT kan verschijnen, en GPTBot blokkeren, zodat je inhoud niet bedoeld is voor het trainen van de basismodellen van OpenAI (OpenAI).

Dat betekent dat wie alleen GPTBot blokkeert in de hoop uit ChatGPT te verdwijnen, iets anders bereikt dan hij denkt. En wie uit voorzorg alles blokkeert, sluit ook de bots buiten die je in antwoorden zouden kunnen noemen.

De drie soorten AI-crawlers

SoortBotsWat gebeurt er als je ze blokkeert
TrainingGPTBot (OpenAI), ClaudeBot (Anthropic), Google-Extended (Google)Je geeft aan dat je inhoud niet voor training gebruikt mag worden. Google Zoeken blijft ongemoeid
ZoekenOAI-SearchBot (OpenAI), Claude-SearchBot (Anthropic), PerplexityBot (Perplexity)Je site wordt in de zoekantwoorden van die dienst niet of minder vaak getoond
Op verzoek van een gebruikerChatGPT-User (OpenAI), Claude-User (Anthropic)Bij OpenAI gelden robots.txt-regels hiervoor mogelijk niet, omdat een mens het ophalen start. Anthropic zegt dat je Claude-User kunt sturen en dat blokkeren de zichtbaarheid in zoekopdrachten van gebruikers kan verminderen

Wat de aanbieders zelf schrijven, kort samengevat:

  • OpenAI: Sites die OAI-SearchBot uitsluiten, verschijnen niet in de zoekantwoorden van ChatGPT, maar kunnen nog wel als navigatielink opduiken. Na een wijziging in de robots.txt duurt het ongeveer 24 uur voordat de systemen zich aanpassen.
  • Anthropic: Beperk je ClaudeBot, dan is dat een signaal dat toekomstig materiaal uit de trainingsdata moet worden gehouden. Zet je Claude-SearchBot of Claude-User uit, dan kan je zichtbaarheid in zoekresultaten dalen. Anthropic houdt zich aan de robots.txt, omzeilt geen CAPTCHA’s en ondersteunt de niet-gestandaardiseerde regel Crawl-delay (Anthropic).
  • Perplexity: PerplexityBot is bedoeld om websites te tonen en te linken in de zoekresultaten van Perplexity. Hij wordt niet gebruikt om inhoud voor basismodellen te verzamelen, en Perplexity raadt aan hem toe te staan (Perplexity).
  • Google: Google-Extended is geen aparte bot maar een token in de robots.txt. Het bepaalt of inhoud die Google crawlt mag worden gebruikt om toekomstige Gemini-modellen te trainen en voor grounding. Het beïnvloedt de opname in Google Zoeken niet en is geen rankingsignaal (Google).

Aanbieders passen hun lijsten aan. Controleer deze pagina’s voordat je een regel overneemt.

Drie voorbeelden die je kunt aanpassen

1. Alles toestaan, alleen de interne API blijft dicht. Zo doet seogrinder.com het zelf: één groep met meerdere User-agent-regels boven één set regels.

User-agent: *
User-agent: GPTBot
User-agent: ClaudeBot
User-agent: OAI-SearchBot
User-agent: Claude-SearchBot
User-agent: PerplexityBot
User-agent: ChatGPT-User
User-agent: Claude-User
Disallow: /api/
Allow: /

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

2. Zoeken toestaan, training weigeren.

User-agent: GPTBot
User-agent: ClaudeBot
User-agent: Google-Extended
Disallow: /

User-agent: OAI-SearchBot
User-agent: Claude-SearchBot
User-agent: PerplexityBot
Allow: /

Dit is een keuze van de eigenaar, geen aanbeveling. Wil je dat je inhoud zo breed mogelijk wordt gebruikt, neem dan voorbeeld 1. Let op: Google-Extended gaat naast training ook over grounding in Gemini Apps en op Vertex AI. Google Zoeken en AI-overzichten raakt het niet.

3. Alle AI-bots weigeren. Zet Disallow: / onder elke bot die hierboven staat. Dan verschijn je minder vaak of helemaal niet meer in de zoekantwoorden van ChatGPT, Claude en Perplexity (navigatielinks en het ophalen op verzoek van een gebruiker blijven mogelijk). De AI-overzichten van Google stuur je via Googlebot, niet via deze tokens. Alleen zinvol als je precies dat wilt.

De valkuil: de eigen groep van een bot vervangt de groep met *

Volgens RFC 9309 volgt een crawler de groep die bij zijn naam past. Heeft hij een eigen groep, dan geldt de groep met * niet voor hem (RFC 9309).

Een voorbeeld: onder User-agent: * staat Disallow: /intern/. Later maak je een aparte groep voor GPTBot die alleen Allow: / bevat. Nu is /intern/ voor GPTBot niet meer verboden. Herhaal de regels in elke groep, of zet meerdere User-agent-regels boven dezelfde set regels, zoals in de voorbeelden hierboven.

Twee andere regels uit dezelfde specificatie helpen bij conflicten: de meest specifieke treffer wint (het langste pad), en als Allow en Disallow even lang zijn, geldt Allow.

Een optionele regel die zegt hoe je inhoud mag worden gebruikt: Content-Signal

Naast toestaan en blokkeren bestaat er een optionele regel die Cloudflare in september 2025 heeft ingevoerd. Die zegt waarvoor je inhoud mag worden gebruikt:

Content-Signal: search=yes, ai-input=yes, ai-train=no

search gaat over zoekindexen en snippets, ai-input over het rechtstreeks gebruiken van inhoud in AI-antwoorden en ai-train over training. Het is een verklaring, geen slot: naleving is vrijwillig. Cloudflare zegt dat Content Signals voorkeuren uitdrukken, geen technische tegenmaatregelen zijn en dat sommige bedrijven ze gewoon zouden kunnen negeren (Cloudflare).

Ook aan standaarden wordt gewerkt. In de crawlerdocumentatie van Google staat dat Google begin 2027 het gezamenlijke, machineleesbare trainingssignaal AIPREF wil ondersteunen, geschreven als user-agent: __usage_ai-training (Google). Tot die tijd blijft Google-Extended de schakelaar voor Gemini-training en grounding.

robots.txt is geen toegangsbeveiliging

De specificatie zegt het duidelijk: het protocol vervangt geen echte beveiligingsmaatregelen, en de paden in de robots.txt zijn voor iedereen zichtbaar. Een bot die de regels negeert, wordt door je bestand niet tegengehouden. Voor inhoud die niet openbaar mag zijn, heb je een login of firewallregels nodig. Anthropic waarschuwt bovendien dat blokkeren op IP-adres als opt-out niet betrouwbaar werkt, omdat de bot dan je robots.txt helemaal niet meer kan lezen.

Zo controleer je je robots.txt voor AI-crawlers

  1. Open https://jouw-site.nl/robots.txt in je browser. Elk subdomein heeft zijn eigen bestand.
  2. Open SEOgrinder, voer je adres in en start de analyse. Een account heb je niet nodig.
  3. Ga naar het tabblad AI-gereedheid en zoek onder “Controles voor AI-agents” het punt “AI-bots sturen”. Is het voldaan, dan staat er hoeveel AI-crawlers zijn geregeld, hoeveel zijn toegestaan en hoeveel zijn geblokkeerd. Staat het open, dan is er geen expliciete regel voor training en zoeken gevonden.
  4. Een voldaan punt kun je uitklappen: dan zie je de tekst die in je bestand is gevonden.
  5. Klik op Agent-prompt kopiëren en plak hem in je programmeerassistent. Ontbreekt er een regel, dan beschrijft de prompt wat je moet toevoegen. Bestaat er al een, dan vraagt hij die te controleren en alleen aan te passen wat niet klopt. Toestaan of blokkeren blijft de beslissing van de eigenaar.
  6. Klik na de wijziging op Opnieuw controleren. Rapporten blijven maximaal 24 uur in de cache; deze knop forceert een nieuwe controle (een paar keer per uur).

Reken op ongeveer een dag voordat de systemen van OpenAI en Perplexity nieuwe regels toepassen.

Echte bezoeken herkennen: logs en IP-bereiken

Of een bot je site echt bezoekt, zie je in je serverlogs aan de user agent. Omdat iedereen zich als GPTBot kan voordoen, publiceren de aanbieders IP-bereiken om mee te vergelijken: OpenAI noemt ze voor elke bot als JSON-bestand, bijvoorbeeld openai.com/gptbot.json, en Anthropic verwijst naar een eigen lijst. Komt een bezoek niet uit die bereiken, dan is het zeer waarschijnlijk niet van die aanbieder, ook als de naam klopt. Dat is handig als je bezoeken wilt analyseren of valse bots in een firewall wilt opvangen. Houd daarbij de waarschuwing van Anthropic in gedachten: blokkeer de echte bots niet op hun IP-adressen, anders kunnen ze je robots.txt niet meer lezen.

Veelgemaakte fouten

  • Disallow: / voor iedereen laten staan. Een testsite gaat live en de blokkade van de testomgeving zit nog in de robots.txt. Controleer dit bij elke livegang.
  • Alleen GPTBot blokkeren om uit ChatGPT te verdwijnen. Dat regelt de training, niet het zoeken.
  • Een lege regel binnen een groep. Sommige parsers, zoals de robotparser van Python, laten dan de namen erboven vallen. Houd de User-agent-regels direct bij elkaar.
  • Een relatieve Sitemap-regel. Schrijf het volledige adres met https://.
  • Het bestand op de verkeerde plek. Het moet in de hoofdmap staan: /robots.txt, niet in een submap.
  • Te veel verwachten van Content-Signal en llms.txt. Beide zijn optioneel, en een effect op ranking of vermeldingen is niet aangetoond.

Veelgestelde vragen

Moet ik AI-crawlers toestaan?

Dat hangt af van je doel. Wil je in AI-zoekantwoorden kunnen worden aangehaald, sta dan de zoekbots toe. Training toestaan of weigeren is een zakelijke beslissing, en je kunt beide los van elkaar instellen.

Verdwijn ik uit Google als ik Google-Extended blokkeer?

Nee. Google zegt dat Google-Extended de opname in Google Zoeken niet beïnvloedt en geen rankingsignaal is.

Hoe snel werkt een wijziging?

OpenAI en Perplexity noemen allebei tot ongeveer 24 uur nadat je je robots.txt hebt aangepast.

Is llms.txt hetzelfde als robots.txt?

Nee. De robots.txt stuurt de toegang. De llms.txt is een voorgesteld bestand met een samenvatting van je site voor taalmodellen. Volgens berichten uit de tweede hand ondersteunt Google het niet (Search Engine Roundtable). Een effect is niet aangetoond. Meer daarover lees je in Wat is llms.txt?.

Kan ik voor verschillende mappen verschillende regels instellen?

Ja. Binnen een groep stel je Disallow en Allow per pad in. De meest specifieke treffer wint.

Je volgende stap

Open je robots.txt en controleer of je de zoekbots niet per ongeluk hebt geblokkeerd. Doe daarna de gratis scan en kijk of “AI-bots sturen” onder AI-gereedheid voldaan is, dat wil zeggen: training en zoeken hebben elk een expliciete regel. Of die regel toestaat of blokkeert, staat in de bevinding.

Meer uit de blog