robots.txt för AI-crawlers: guiden för 2026
I korthet
Hur bör jag konfigurera robots.txt för AI-crawlers 2026?
Behandla AI-klienter som tre klasser, inte en: träningscrawlers (GPTBot, ClaudeBot, CCBot, Google-Extended), sökindexerare (OAI-SearchBot, Claude-SearchBot, PerplexityBot) och användarutlösta hämtare (ChatGPT-User, Perplexity-User, Gemini-Deep-Research). De två första samlar in innehåll för modellträning och för de sökindex som svarsmotorerna citerar, och båda följer robots.txt. Den tredje aktiveras när en verklig person ställer en verklig fråga, och de flesta operatörer dokumenterar att robots.txt kan vara ej tillämpligt för den. Att blockera träningsklassen är ett licensbeslut; att blockera användarutlösta hämtare är att vägra svara en kund som står och väntar.
Det korta svaret
Sluta betrakta ”AI-bottar” som en enda sak. Det finns tre klasser med helt olika ekonomi, och en enda Disallow-rad som läggs på dem alla är nästan alltid fel avvägning.
Training
- GPTBot
- ClaudeBot
- Google-Extended
- CCBot
Asking to learn from your catalogue. Declining is a licensing decision, and a defensible one.
Search index
- OAI-SearchBot
- PerplexityBot
- Applebot-Extended
Asking to be able to cite you. Blocking these removes you from answers you would have won.
User-triggered
- ChatGPT-User
- Claude-User
- Perplexity-User
A person with a bill of materials open, mid-decision, right now. This is a customer, not a scraper.
En träningscrawler ber om att få lära sig av din katalog. En sökindexerare ber om att få citera den. En användarutlöst hämtare är en kund, just nu, som ställer en fråga om din produkt. Att blockera den första är ett licensbeslut. Att blockera den tredje är att lägga på luren.
Forrester fann att 94 % av företagsköparna använde AI under sin senaste inköpsprocess. En betydande andel av de hämtningar som når din server med en AI-user-agent är inte skrapning – det är någon som sitter med en materialförteckning uppslagen, mitt i ett beslut. Din robots.txt bör skilja dem åt, och de flesta gör det inte.
Alla AI-user-agents som spelar roll 2026
| Token | Operatör | Klass | Följer robots.txt | Verifiera käll-IP via |
|---|---|---|---|---|
GPTBot | OpenAI | Träning | Ja | gptbot.json |
OAI-SearchBot | OpenAI | Sökindex | Ja | searchbot.json |
ChatGPT-User | OpenAI | Användarutlöst | ”kan vara ej tillämpligt” | chatgpt-user.json |
ClaudeBot | Anthropic | Träning | Ja | bots.json |
Claude-SearchBot | Anthropic | Sökindex | Ja | bots.json |
Claude-User | Anthropic | Användarutlöst | Ja | bots.json |
PerplexityBot | Perplexity | Sökindex | Ja | perplexitybot.json |
Perplexity-User | Perplexity | Användarutlöst | ”ignorerar i regel” | perplexity-user.json |
Google-Extended | Tillståndstoken för träning | Ja, som token | Ingen hämtare | |
Gemini-Deep-Research | Användarutlöst researchagent | Ignorerar i regel | IP-intervall för Googles hämtare | |
Applebot-Extended | Apple | Tillståndstoken för träning | Ja, som token | Ingen hämtare |
Amazonbot | Amazon | Träning och produktförbättring | Ja | Amazons IP-lista |
Bytespider | ByteDance | Träning | Omtvistat | Ingen publicerad |
CCBot | Common Crawl | Massarkiv som matar många modeller | Ja | Omvänd DNS |
Meta-ExternalAgent | Meta | Träning och indexering | Ja | Metas dokumentation |
Fem punkter i tabellen missförstås eller förbises rutinmässigt, och de är värda att säga rakt ut.
`Google-Extended` och `Applebot-Extended` är inte crawlers. Ingen av dem hämtar någonting. De är tillståndstoken: Google-Extended styr om innehåll som Googlebot redan har genomsökt får användas för att träna Gemini och för att underbygga dess svar, och Apples dokumentation är uttrycklig med att Applebot-Extended ”inte genomsöker webbsidor” och ”enbart används för att avgöra hur de data som genomsökts av user-agenten Applebot ska användas”. Att blockera Applebot-Extended tar inte bort dig ur resultaten i Siri, Spotlight eller Safari.
Anthropic är undantaget när det gäller användarutlösta hämtningar. OpenAI anger om ChatGPT-User att ”eftersom dessa åtgärder initieras av en användare kan robots.txt-regler vara ej tillämpliga”. Perplexity säger att Perplexity-User ”i regel ignorerar robots.txt-regler”. Googles dokumentation säger om företagets användarutlösta hämtare: ”eftersom hämtningen begärdes av en användare ignorerar dessa hämtare i regel robots.txt-regler”. Amazon säger att Amzn-User ”kanske inte följer alla robots.txt-direktiv”. Anthropic dokumenterar däremot att företagets bottar följer robots.txt och pekar ut Claude-User som en token webbplatsägare kan använda för att styra användarinitierade förfrågningar. Blockerar du hela uppsättningen är det Claude som faktiskt slutar hämta – vilket är raka motsatsen till vad de flesta avser.
Amazon och Meta driver var sin uppdelade flotta. Utöver Amazonbot dokumenterar Amazon Amzn-SearchBot (sökupplevelser inklusive Alexa och Rufus) och Amzn-User (aktiva användarhandlingar), och om båda uppges att de inte genomsöker för generativ AI-träning. Meta kör Meta-ExternalAgent för träning och indexering och Meta-ExternalFetcher för användarbegärda hämtningar, där den senare kan kringgå robots.txt.
Bytespider är ett policyproblem, inte ett robots.txt-problem. ByteDance uppger att den respekterar robots.txt; webbplatsoperatörer rapporterar allmänt motsatsen. Vill du få stopp på den gör du det i edge-lagret och förlitar dig inte på filen.
En not om `Gemini-Deep-Research`: Googles publicerade crawlerdokumentation listar ännu inte denna token bland sina vanliga crawlers eller användarutlösta hämtare, men den är i aktivt bruk och stora distributörer adresserar den redan vid namn – Digi-Keys robots.txt tillåter uttryckligen både Google-Extended och Gemini-Deep-Research, vid sidan av GPTBot, ChatGPT-User, OAI-SearchBot, PerplexityBot, Perplexity-User, ClaudeBot, Claude-User och Claude-SearchBot. Ta med den; en okänd token i robots.txt är harmlös.
Vad kostar det egentligen att blockera varje klass?
| Om du blockerar | Du förlorar | Du vinner |
|---|---|---|
| Träningscrawlers | Närvaro i framtida modellvikter; att vara standardsvaret utan uppkoppling mot webben | En licensposition, och marginellt lägre bandbredd |
| Sökindexerare | Att bli citerad i svar från ChatGPT, Claude och Perplexity | Inget av betydelse för en publik katalog |
| Användarutlösta hämtare | Möjligheten att besvara en köpares fråga i realtid | Inget |
För en tillverkare eller distributör vars katalog redan är publik och redan speglas hos aggregatorer är det mest symboliskt att blockera träningsklassen: data når modellerna ändå, via distributörers listningar och Common Crawl. Det som ändras är vems version av dina data modellen bär på. Att blockera de två andra klasserna har ingen som helst uppsida för en publik katalog.
robots.txt att kopiera rakt av
Recept A: maximal synlighet för agenter
Rätt standardval för en tillverkare eller distributör vars katalog är publik och vars kommersiella intresse är att bli hittad och korrekt citerad.
# --- Answer engines and user-triggered fetchers ---
User-agent: OAI-SearchBot
User-agent: ChatGPT-User
User-agent: Claude-SearchBot
User-agent: Claude-User
User-agent: PerplexityBot
User-agent: Perplexity-User
User-agent: Gemini-Deep-Research
User-agent: Amzn-SearchBot
Disallow: /account/
Disallow: /cart/
Disallow: /checkout/
Allow: /
# --- Training crawlers and permission tokens ---
User-agent: GPTBot
User-agent: ClaudeBot
User-agent: CCBot
User-agent: Meta-ExternalAgent
User-agent: Amazonbot
User-agent: Google-Extended
User-agent: Applebot-Extended
Disallow: /account/
Disallow: /cart/
Disallow: /checkout/
Allow: /
# --- Everything else ---
User-agent: *
Disallow: /account/
Disallow: /cart/
Disallow: /checkout/
Sitemap: https://www.example.com/sitemap.xml
Sitemap: https://www.example.com/sitemap-products.xmlRecept B: tillåt hämtning, neka träning
För organisationer som medvetet har beslutat att inte bidra till modellträning men fortfarande vill bli hittade och citerade. Notera vad det kostar: att blockera Google-Extended tar bort ditt innehåll från det underlag som Gemini bygger sina svar på, inte bara från träningen.
User-agent: OAI-SearchBot
User-agent: ChatGPT-User
User-agent: Claude-SearchBot
User-agent: Claude-User
User-agent: PerplexityBot
User-agent: Perplexity-User
User-agent: Gemini-Deep-Research
Allow: /
User-agent: GPTBot
User-agent: ClaudeBot
User-agent: CCBot
User-agent: Bytespider
User-agent: Meta-ExternalAgent
User-agent: Amazonbot
User-agent: Google-Extended
User-agent: Applebot-Extended
Disallow: /
User-agent: *
Disallow: /account/Recept C: katalogen öppen, allt annat stängt
Användbart när katalogen och dokumentbiblioteket är de tillgångar du vill lyfta fram, och resten av beståndet är brus.
User-agent: GPTBot
User-agent: OAI-SearchBot
User-agent: ChatGPT-User
User-agent: ClaudeBot
User-agent: Claude-SearchBot
User-agent: Claude-User
User-agent: PerplexityBot
User-agent: Perplexity-User
User-agent: Gemini-Deep-Research
Disallow: /
Allow: /products/
Allow: /catalog/
Allow: /datasheets/
Allow: /documents/
Allow: /sitemap-products.xmlEnligt RFC 9309 vinner den längsta matchande sökvägsregeln, så Allow-raderna åsidosätter den generella Disallow: / för dessa prefix. Verifiera resultatet i stället för att förutsätta det – parsrarnas beteende i gränsfall varierar fortfarande.
Att uttrycka ”nej” så att det biter: Content Signals
robots.txt styr åtkomst. Den säger ingenting om användning när innehållet väl har levererats. Cloudflares Content Signals Policy, lanserad den 24 september 2025, lägger till en maskinläsbar användningspreferens i samma fil, med tre signaler: search (bygga ett sökindex och leverera sökresultat), ai-input (mata in innehåll i en eller flera AI-modeller) och ai-train (träna eller finjustera AI-modeller).
User-agent: *
Content-Signal: search=yes, ai-input=yes, ai-train=no
Disallow: /account/Cloudflare tillämpade search=yes, ai-train=no på över 3,8 miljoner domäner som hade aktiverat företagets hanterade robots.txt, och lämnade medvetet ai-input osatt i stället för att gissa. Det är en uttalad preferens, inte en verkställighetsmekanism – men det är ett tydligt, daterat och maskinläsbart uttryck för avsikt, och det är värt att ha.
Varför tystnad börjar betyda ”nej”
I tjugo år betydde en frånvarande robots.txt-regel ”ja”. Det standardläget håller på att dras tillbaka i infrastrukturlagret, och tillverkare som aldrig har rört filen väljs bort av sin CDN.
- 1 juli 2025 – Cloudflare, som ligger framför ungefär en femtedel av webben, blev den första stora infrastrukturleverantören att blockera AI-crawlers som standard, och frågar varje nyansluten domän direkt om de ska tillåtas.
- 24 september 2025 – Content Signals Policy lanserades, med
ai-train=nosom standard på 3,8 miljoner hanterade domäner. - 1 juli 2026 – Cloudflare meddelade att crawlerkategorierna Training och Agent från och med 15 september 2026 blockeras som standard på sidor som visar annonser – på nya domäner, på befintliga kunders nya webbplatser och hos samtliga befintliga kunder på gratisnivån. Search förblir tillåtet. Crawlers med flera syften, som blandar Search och Training, ärver den mest restriktiva regeln.
Läs den sista punkten noga, för den citeras ofta fel. Den är avgränsad till annonsfinansierade sidor, vilket de flesta tillverkarkataloger inte är. Förändringen som redan påverkar dig är 2025 års: om din webbplats nyligen anslöts till en modern CDN, eller ligger på en gratisnivå, kan du redan avvisa AI-crawlers utan att någon har fattat det beslutet. Kontrollera innan du utgår från något.
robots.txt är en förfrågan. Din WAF är verkställigheten.
Det är här de flesta välmenande konfigurationer havererar. robots.txt är ett frivilligt protokoll som läses av följsamma klienter. Din bothanterare är en hård grind som klassificerar utifrån verifierad käll-IP, och standarduppsättningar av regler utmanar eller blockerar rutinmässigt allt som inte ser ut som en webbläsare. En crawler som läser Allow: / och därefter möts av en JavaScript-utmaning har blivit blockerad, vad filen än säger.
Alla större operatörer publicerar sina IP-intervall så att du kan allowlista dem ordentligt:
| Operatör | Publicerade IP-intervall |
|---|---|
| OpenAI | gptbot.json, searchbot.json, chatgpt-user.json |
| Anthropic | claude.com/crawling/bots.json |
| Perplexity | perplexitybot.json, perplexity-user.json |
| googlebot.json, special-crawlers.json, user-triggered-fetchers-google.json | |
| Amazon | developer.amazon.com/amazonbot |
Så kontrollerar du om en viss adress i dina loggar verkligen kommer från OpenAI:
python3 - <<'EOF'
import ipaddress, json, urllib.request
probe = ipaddress.ip_address("132.196.86.5")
data = json.load(urllib.request.urlopen("https://openai.com/gptbot.json"))
nets = [ipaddress.ip_network(p.get("ipv4Prefix") or p.get("ipv6Prefix"))
for p in data["prefixes"]]
print(any(probe in n for n in nets if n.version == probe.version))
EOFTre edge-regler täcker det mesta:
- 01Allowlista de verifierade IP-intervallen innan din bot-score-regel utlöses, avgränsat till enbart publika katalog- och dokumentsökvägar.
- 02Undanta de sökvägarna från JavaScript-utmaningar och hastighetsbegränsningar. En klient som inte är en webbläsare kan inte lösa en utmaning, och en crawler som indexerar 40 000 SKU slår i en hastighetsgräns som är inställd för människor.
- 03Allowlista inte utifrån user-agent-strängen. Det är ett fritextfält i huvudet. Matcha på IP, och därefter eventuellt på user-agent.
Kom ihåg att varje origin konfigureras för sig. Din produktwebbplats, din dokumentationssubdomän och ditt CDN-värdnamn behöver var och en sin egen robots.txt och sin egen WAF-policy.
Hur verifierar jag i loggarna att det fungerade?
En konfiguration du inte har verifierat i loggarna är en hypotes. Ge det några dagar innan du bedömer resultatet: operatörerna cachar robots.txt, och Metas dokumentation varnar för att ändringar kan ta upp till 24 timmar att slå igenom, medan Amazon säger att företagets crawlers kan använda en kopia som cachats under de senaste 30 dagarna. Sedan:
grep -aiE "GPTBot|OAI-SearchBot|ChatGPT-User|ClaudeBot|Claude-User|Claude-SearchBot|PerplexityBot|Perplexity-User|Gemini-Deep-Research|Applebot|Amazonbot|Bytespider|CCBot|Meta-External" access.log | wc -lBryt sedan ned det per agent och statuskod – det är den siffran som betyder något:
awk '/GPTBot/ {print $9}' access.log | sort | uniq -c | sort -rnDet här ska du leta efter:
- 01Volym skild från noll för varje agent. Noll förfrågningar från någon AI-agent under 72 timmar på en publik katalog betyder att du är blockerad uppströms, inte bara opopulär.
- 02En statusfördelning som domineras av 2xx. En mur av 403 betyder att din WAF åsidosätter robots.txt. En mur av 404 betyder att din sitemap.xml eller dina interna länkar pekar på URL som inte längre finns.
- 03Att dokumentsökvägar dyker upp, inte bara produktsökvägar. Om
/datasheets/aldrig syns är ditt tekniska bibliotek osynligt. - 04Svarsstorlekar som är rimliga. Upprepade 200-svar på 4–15 KB för produkt-URL betyder oftast att crawlerna får ett tomt, klientrenderat skal – tekniskt tillåtet, praktiskt värdelöst.
- 05Att de användarutlösta agenterna över huvud taget dyker upp. Trafik från ChatGPT-User, Claude-User och Perplexity-User är det närmaste du kommer en realtidssignal om köparintresse. Den är värd att rapportera separat.
Vanliga misstag
- Att av misstag blockera användarutlösta hämtare, i en generell regel som var riktad mot träningscrawlers.
- Att ställa in robots.txt rätt och lämna WAF:en orörd. Det är två reglage och båda måste ställas om.
- Att glömma dokumentationssubdomänen, DAM-systemet och CDN:et, som var för sig är ett separat origin enligt RFC 9309.
- Att blockera crawlers från CSS- och JavaScript-resurser. Det spelar ingen roll för rena textcrawlers, men både Googlebot och Applebot renderar, och att svälta dem på resurser försämrar det de ser.
- Att förutsätta att en aggregator återger dina data korrekt. Den återger det den skrapade, när den nu skrapade det.
- Att behandla
llms.txtsom en ersättning. Ingen större operatör har åtagit sig att läsa den, och loggarna visar i regel att den aldrig efterfrågas.
Partsgraph granskade 984 distributörs- och tillverkardomäner världen över, i Nordamerika, Europa och Asien, i augusti 2026. Endast 19 % publicerade någon form av uttrycklig policy för AI-crawlers – och bland dem som gjorde det var det mer än dubbelt så många som blockerade en stor AI-crawler jämfört med dem som bjöd in en. Ingen annonserade en MCP-endpoint. Medianpoängen för AI-synlighet: 50 av 100. Området har ännu inte blivit ett konkurrensfält – och det är precis därför en välformad robots.txt fortfarande är en av de timmar med störst hävstång som ett produktdatateam kan lägga.
Kontrollera vad AI-crawlers faktiskt når på din domän med den kostnadsfria granskaren från Partsgraph på [/audit](/audit).
Vanliga frågor
Vad är skillnaden mellan GPTBot och ChatGPT-User?
GPTBot är en massinsamlande crawler som samlar träningsdata till grundmodellerna från OpenAI, och den följer robots.txt. ChatGPT-User hämtar en enskild sida därför att någon har ställt en fråga till ChatGPT som kräver den. Dokumentationen från OpenAI anger att robots.txt-regler kan vara ej tillämpliga eftersom dessa åtgärder initieras av en användare. Att blockera GPTBot är ett licensbeslut; att blockera ChatGPT-User är att avstå från att besvara en kunds fråga i realtid.
Är Google-Extended en crawler?
Nej. Google-Extended är en styrtoken i robots.txt, inte en hämtare. Innehållet hämtas fortfarande in av Googlebot. Att blockera Google-Extended talar om för Google att innehållet inte får användas för att träna Gemini-modeller eller som underlag för svar, samtidigt som den vanliga indexeringen för Search lämnas orörd. Applebot-Extended fungerar på samma sätt för Apple.
Håller jag min katalog borta från AI-modeller genom att blockera träningscrawlers?
I stort sett inte, och det kostar dig synlighet. Komponentdata speglas hos distributörer, aggregatorer och Common Crawl, så innehållet når vanligtvis modellerna ändå – bara som en tredje parts inaktuella kopia i stället för din aktuella, auktoritativa version. Du förlorar möjligheten att vara den citerade källan utan att vinna någon meningsfull kontroll.
Täcker robots.txt på min huvuddomän även min dokumentationssubdomän?
Nej. Enligt RFC 9309 gäller robots.txt bara för ett origin: protokoll, värdnamn och port. Ditt CDN-värdnamn, ditt DAM-system och din dokumentationssubdomän behöver var sin egen fil. Det här är den enskilt vanligaste orsaken till att en webbplats som ser öppen ut i robots.txt ändå inte levererar någonting till en crawler.
Varför blockeras crawlers trots att min robots.txt säger Allow?
Därför att robots.txt är en förfrågan och din WAF är verkställigheten. Bothanterare klassificerar utifrån verifierad käll-IP, inte utifrån user-agent-strängen, och många standardregler utmanar allt som inte är en webbläsare. Du måste allowlista de verifierade crawler-intervallen i edge-lagret, inte bara tillåta dem i robots.txt.
Bör jag använda llms.txt i stället?
Inte i stället. Per 2026 har ingen större AI-operatör förbundit sig att läsa llms.txt, och Googles Search Relations-team har avstått från att ställa sig bakom den. Serverloggar visar i allmänhet att AI-crawlers aldrig efterfrågar filen. Publicera den gärna, men det är robots.txt, riktiga länkade sidor och allowlistning av verifierade bottar som faktiskt förändrar beteendet.
Hur bekräftar jag att en förfrågan verkligen kom från GPTBot och inte från en förfalskare?
Kontrollera käll-IP mot den prefixlista som OpenAI publicerar på openai.com/gptbot.json. Alla större operatörer publicerar en motsvarande JSON-fil, och Google stöder verifiering med omvänd DNS. Lita aldrig på user-agent-strängen ensam – den är trivialt enkel att förfalska, och en stor andel av den trafik som utger sig för att vara en AI-crawler är det inte.
Källor
- 01OpenAI, Overview of OpenAI crawlers
- 02Anthropic, Does Anthropic crawl data from the web?
- 03Perplexity, PerplexityBot and Perplexity-User documentation
- 04Google Search Central, Google crawlers and user agents
- 05Google Search Central, user-triggered fetchers
- 06Apple Support, About Applebot
- 07Amazon, About Amazonbot
- 08Meta for Developers, Meta web crawlers
- 09Cloudflare, Content Independence Day: new AI traffic options, July 2026
- 10Cloudflare, Content Signals Policy, September 2025
- 11Cloudflare press release, blocking AI crawlers by default, July 2025
- 12RFC 9309, Robots Exclusion Protocol
- 13Forrester, The State Of Business Buying, 2026 (January 2026)
Se exakt vad AI-assistenter kan och inte kan läsa om dina produkter i dag – crawlerpolicy, katalogtäckning, åtkomst till datablad – med betyg och jämförelse mot 984 distributörer och tillverkare världen över.
Betygsätt min katalogRelaterade fältanteckningar
AI-crawlers kör inte JavaScript
GPTBot, ClaudeBot och PerplexityBot läser rå HTML och kör aldrig skript. Så testar du om din katalog syns — oc…
LösningVad är en agentredo produktkatalog?
En agentredo katalog betjänar fyra maskinytor. Här är vad var och en är, vilka AI-assistenter som faktiskt anv…
UndersökningStörst inom distribution – sämst på AI-läsbarhet
Vi graderade 984 industrikataloger och mätte sedan om 25 välkända namn live. Deras median är 40 mot marknadens…