robots.txt para crawlers de IA: o que liberar e o que bloquear
Dê a cada crawler de IA que importa para você o seu próprio grupo User-agent. Libere crawlers de busca como OAI-SearchBot, Claude-SearchBot e PerplexityBot se quiser ser citado, e decida separadamente sobre tokens de treinamento como GPTBot, ClaudeBot, Google-Extended e Applebot-Extended. Um grupo nomeado substitui o grupo * para aquele crawler.
O robots.txt é um arquivo de texto simples que existe desde 1994 e virou padrão formal, a RFC 9309, em 2022. A maioria dos fornecedores de IA diz que seus crawlers o seguem, e vários publicam tokens separados para busca e para treinamento. Isso faz do robots.txt o lugar mais simples para declarar uma política de IA, desde que as regras signifiquem o que você pensa que significam.
Neste artigo
Que tokens de robots.txt os crawlers de IA usam?
Estes são os tokens que os fornecedores documentam. A comparação não diferencia maiúsculas de minúsculas pela RFC 9309.
- OpenAI:
OAI-SearchBot(busca do ChatGPT),GPTBot(treinamento),ChatGPT-User(visitas pedidas pelo usuário; a OpenAI diz que o robots.txt pode não valer). - Anthropic:
Claude-SearchBot(busca),ClaudeBot(treinamento),Claude-User(visitas pedidas pelo usuário). - Perplexity:
PerplexityBot(busca),Perplexity-User(visitas pedidas pelo usuário; a Perplexity diz que em geral o ignora). - Google:
Googlebot(Pesquisa Google, incluindo seus recursos de IA) eGoogle-Extended, um token sem crawler próprio que controla o uso no treinamento e no grounding do Gemini. - Apple:
Applebot(Spotlight, Siri, busca do Safari) eApplebot-Extended, que não rastreia, mas controla o uso no treinamento dos modelos de base da Apple. - Meta:
meta-externalagent(treinamento e indexação de produtos) emeta-webindexer(busca da Meta AI). - Common Crawl:
CCBot, que monta o arquivo público gratuito de dados da web do Common Crawl.
Como é um bom robots.txt para IA?
Este exemplo deixa entrar a busca com IA e os acessos pedidos por usuários, opta por sair dos principais tokens de treinamento e mantém uma área privada fechada para todos:
User-agent: OAI-SearchBot
User-agent: Claude-SearchBot
User-agent: PerplexityBot
User-agent: ChatGPT-User
User-agent: Claude-User
Allow: /
Disallow: /account/
User-agent: GPTBot
User-agent: ClaudeBot
User-agent: Google-Extended
User-agent: Applebot-Extended
User-agent: meta-externalagent
User-agent: CCBot
Disallow: /
User-agent: *
Allow: /
Disallow: /account/
Sitemap: https://example.com/sitemap.xml
Várias linhas User-agent seguidas formam um único grupo, então as regras abaixo delas valem para cada um desses crawlers. Se você quer que seu conteúdo seja usado em treinamento, basta omitir o segundo grupo. Bloquear o Google-Extended não afeta a Pesquisa Google: o Google diz que ele não influencia a inclusão na Pesquisa e não é um sinal de ranqueamento. Da mesma forma, a Apple diz que páginas que bloqueiam o Applebot-Extended ainda podem aparecer nos resultados de busca dela.
Como os crawlers escolhem quais regras valem para eles?
A RFC 9309 define isso com precisão, e os detalhes explicam a maioria das surpresas:
- O crawler procura o grupo cujo
User-agentcorresponde ao seu token de produto, sem diferenciar maiúsculas de minúsculas. Se vários grupos correspondem, suas regras são combinadas em uma só. - Só se nenhum grupo corresponder o crawler segue o grupo
User-agent: *. Um grupo nomeado não herda nada do*. - Dentro do grupo, vence a regra com o caminho correspondente mais longo.
Allow: /blog/venceDisallow: /para/blog/post. - Se uma regra
Allowe umaDisallowcorrespondem com o mesmo comprimento, deve valer oAllow. *em um caminho corresponde a quaisquer caracteres e$marca o fim, entãoDisallow: /*.pdf$cobre todos os PDFs.
Quais são os erros mais comuns no robots.txt?
- Esperar que um grupo nomeado herde do
*. Um grupo paraOAI-SearchBotsó comAllow: /abre todos os caminhos, inclusive os que você bloqueou em*. - Um endereço de robots.txt que devolve uma página HTML, muitas vezes uma página 404 servida com status 200. Os crawlers não encontram regras válidas nela.
- Um robots.txt que devolve erro de servidor. A RFC 9309 diz que o crawler deve então presumir que o site inteiro está bloqueado. Um 404 é diferente: significa que não há restrições.
- Bloquear um token de busca achando que bloqueia o treinamento, por exemplo bloquear
PerplexityBotouClaude-SearchBotpara evitar o treinamento de modelos. - Contar com o robots.txt para impedir acessos pedidos pelo usuário. A OpenAI e a Perplexity dizem que seus user agents podem não segui-lo.
- Esquecer os subdomínios. Cada host tem seu próprio robots.txt; a documentação da Anthropic lembra os donos de site de adicionar regras em cada subdomínio.
Posso declarar uma política de uso de IA além de permitir e bloquear?
A Cloudflare propôs uma linha Content-Signal para o robots.txt com três sinais: search (montar um índice de busca e mostrar links e trechos curtos), ai-input (usar o conteúdo em tempo real em respostas de IA) e ai-train (treinar ou ajustar modelos). O robots.txt gerenciado da Cloudflare pode adicioná-la para você.
User-agent: *
Content-Signal: search=yes, ai-input=yes, ai-train=no
Allow: /
Como tudo no robots.txt, são preferências, não controles técnicos. A própria Cloudflare observa que o cumprimento do robots.txt é voluntário. A linha é opcional e não faz mal, mas não substitui os grupos por crawler acima.
Quanto tempo as mudanças levam e como verifico?
A RFC 9309 diz que os crawlers não devem usar um robots.txt em cache por mais de 24 horas, e a OpenAI e a Perplexity dizem que as mudanças podem levar cerca de um dia para valer. Lembre também que o robots.txt não é controle de acesso: um firewall ainda pode bloquear um crawler que suas regras permitem.
A AISeeWhy analisa seu robots.txt pela RFC 9309 para cada crawler que testa, aponta arquivos inacessíveis ou servidos como HTML, mostra onde suas regras e seu servidor discordam e entrega um diff pronto para a mudança.
Perguntas frequentes
Bloquear o GPTBot ou o ClaudeBot prejudica minha visibilidade nas respostas de IA?
Não diretamente. Os dois fornecedores usam crawlers de busca separados, OAI-SearchBot e Claude-SearchBot, para a busca. Bloquear o crawler de treinamento é uma escolha de política.
O Google-Extended impede as AI Overviews?
Não. O Google diz que os recursos de IA na Pesquisa usam o Googlebot e os controles habituais da Pesquisa, como nosnippet e noindex. O Google-Extended cobre o treinamento e o grounding do Gemini em outros produtos do Google e não afeta a Pesquisa.
Os crawlers de IA aceitam Crawl-delay?
Ele não faz parte da RFC 9309. A Anthropic diz que aceita Crawl-delay como extensão fora do padrão; para outros fornecedores, consulte a documentação.
Onde o robots.txt deve ficar?
Na raiz de cada host, por exemplo https://example.com/robots.txt. Um arquivo em uma subpasta é ignorado, e cada subdomínio precisa do seu.
Fontes
- RFC 9309: Robots Exclusion Protocol
- OpenAI: visão geral dos crawlers da OpenAI
- Google: crawlers comuns, incluindo o Google-Extended
- Apple: sobre o Applebot
- Cloudflare: robots.txt gerenciado e Content Signals