Bloquear os «bots de IA» como uma categoria única é o erro caro de 2026. Sob esse rótulo escondem-se duas famílias completamente diferentes: os crawlers de treino, que recolhem o seu conteúdo para treinar um modelo e não devolvem nada, e os fetchers do momento da resposta, enviados em tempo real para responder à pergunta de um utilizador — e que o citam pelo nome na resposta. Declaram user-agents distintos, e três linhas no robots.txt bastam para os separar. Segundo o relatório da Cloudflare de 1 de julho de 2026, 52% dos pedidos de crawlers destinam-se agora ao treino de IA em junho de 2026, contra 22% na primavera de 2025, e pela primeira vez mais de 50% do tráfego na Internet não é humano. Bloquear tudo significa apagar-se das respostas; não bloquear nada significa pagar largura de banda por um treino que nunca lhe devolve nada.
Duas famílias, não uma
A distinção que decide tudo não é quem opera o bot, mas quando ele corre. Um crawler de treino trabalha em ciclos próprios, sem qualquer ligação a um utilizador. Recolhe texto para um corpus, e o seu conteúdo dissolve-se nos pesos do modelo sem fonte, sem crédito e sem ligação. Um fetcher do momento da resposta comporta-se de forma totalmente diferente: um utilizador fez uma pergunta, o sistema considerou a sua página relevante, e o pedido parte agora para a ler e citar — com o nome da sua marca e uma ligação de retorno.
Três empresas separaram explicitamente as duas famílias em user-agents distintos, e é precisamente o ponto que a maioria dos sites falha. A OpenAI usa GPTBot para treino e OAI-SearchBot para indexação no ChatGPT Search. A Anthropic usa ClaudeBot para treino e Claude-SearchBot para indexação. A Google usa Google-Extended como controlo de exclusão para o treino e o grounding do Gemini — um controlo que não é um crawler por si só e que não tem qualquer efeito no posicionamento na Pesquisa.
Existe uma terceira camada, menos conhecida: a recolha em tempo real iniciada por uma pessoa. Quando alguém cola uma ligação no ChatGPT e pede um resumo, o pedido vem de ChatGPT-User, não de GPTBot. Na Anthropic é Claude-User; na Perplexity, Perplexity-User. Estes bots não constroem qualquer índice nem treinam nada — servem um humano que já o pediu.
A tabela: quem é quem, e quanto custa bloquear
| User-agent | Operador | O que faz | Quanto lhe custa bloquear |
|---|---|---|---|
| GPTBot | OpenAI | Recolhe conteúdo para treino de modelos | Nenhuma perda de visibilidade. O seu conteúdo apenas fica de fora do treino. |
| ClaudeBot | Anthropic | Recolhe conteúdo para treino de modelos | Nenhuma perda de visibilidade. |
| Google-Extended | Exclusão do treino e do grounding do Gemini | Nenhum efeito no posicionamento na Pesquisa Google. | |
| OAI-SearchBot | OpenAI | Indexação para a pesquisa dentro do ChatGPT | Desaparece dos resultados e das citações do ChatGPT. |
| Claude-SearchBot | Anthropic | Indexação para a pesquisa dentro do Claude | Desaparece das citações do Claude. |
| PerplexityBot | Perplexity | Indexação para o motor de respostas | Desaparece das fontes citadas. |
| ChatGPT-User | OpenAI | Recolha em tempo real iniciada por um utilizador | Um utilizador que pediu explicitamente a sua página recebe um erro. |
| Claude-User | Anthropic | Recolha em tempo real iniciada por um utilizador | O mesmo dano, do lado do Claude. |
| Perplexity-User | Perplexity | Recolha em tempo real iniciada por um utilizador | O mesmo dano, do lado da Perplexity. |
| Googlebot | Pesquisa, AI Overviews e AI Mode em conjunto | Sai da Google por completo. Nenhuma separação é possível. |
O Googlebot é o caso que não consegue dividir
A Google não separa o rastreio que alimenta os resultados de pesquisa normais daquele que alimenta os AI Overviews e o AI Mode. Ambos passam pelo Googlebot, e ambos bebem do mesmo índice. Bloquear o Googlebot para «ficar fora da IA» significa sair da Google por inteiro. O Google-Extended governa apenas a camada separada de treino e grounding do Gemini, e não o remove da Pesquisa.
A conclusão prática é simples: no que toca à Google, a decisão já foi tomada por si. A única pergunta que fica nas suas mãos é como se lê a sua página quando um sistema gera uma resposta a partir dela — e isso é uma questão de estrutura e de substância, não de permissões. Aprofundo o tema no artigo sobre a medição da visibilidade nos motores de respostas de IA.
A Cloudflare acrescenta um número que explica porque a classificação é difícil à partida: os crawlers de uso misto, que misturam pesquisa, uso agêntico e treino sob um único user-agent, representam mais de 36% da atividade de crawlers na sua rede. Por outras palavras, mais de um terço do tráfego automatizado que lhe chega não pode ser ordenado de forma limpa por finalidade.
Quem respeita realmente o robots.txt
O robots.txt é um pedido, não um mecanismo de imposição. Um servidor que recebe um pedido de um user-agent que declarou ignorar o ficheiro serve na mesma o conteúdo. Não é um cenário teórico: a documentação da OpenAI afirma que as regras do robots.txt podem não se aplicar ao ChatGPT-User, porque o pedido segue uma ação explícita de um utilizador humano. A documentação da Perplexity diz praticamente o mesmo sobre o Perplexity-User, notando que em geral não segue o robots.txt pela mesma razão. A Anthropic declara que os seus três bots o respeitam.
O raciocínio por trás desse comportamento é que o pedido conta como ação humana e não como rastreio. Pode discutir o raciocínio, mas na prática trate-o como um facto operacional: se quer um bloqueio realmente imposto, o robots.txt não é a ferramenta. A ferramenta está ao nível da CDN ou da firewall — Cloudflare, Fastly, ou uma regra WAF baseada em user-agent e intervalo de IP.
Fácil de escapar: a 1 de julho de 2025 a Cloudflare mudou a predefinição para cada novo domínio integrado na sua rede — os crawlers de treino de IA ficam bloqueados salvo decisão em contrário do proprietário. Se mudou para a Cloudflare no último ano, pode já estar a bloquear o treino sem saber. Vale a pena verificar antes de decidir seja o que for.
Rácios rastreio/referência — porque a troca já não é simétrica
A ideia de que o rastreio se paga em tráfego de retorno é historicamente verdadeira e numericamente falsa. Na análise da Cloudflare de 28 de agosto de 2025, o rácio entre páginas rastreadas e uma única referência de retorno era de cerca de 50 000 para 1 na Anthropic, 887 para 1 na OpenAI e 118 para 1 na Perplexity. Para a Pesquisa Google tradicional o rácio fica num único dígito.
Estes números não sustentam uma conclusão única. Dizem que o antigo acordo — o utilizador fornece conteúdo, o motor envia visitantes — já não descreve o que acontece na camada de treino. Não dizem que a visibilidade nos motores de respostas não vale nada, porque as referências que chegam convertem em média melhor do que o tráfego de pesquisa habitual: o utilizador chega depois de o sistema já ter filtrado por ele e o ter recomendado pelo nome.
Três posições viáveis, e a quem serve cada uma
Abertura total. Sem bloqueios. Serve sites de marketing, serviços profissionais e B2B que vendem com base em confiança e competência. O seu conteúdo é material de apoio à venda, não o ativo em si; quantos mais modelos o conhecerem, maior a probabilidade de um o mencionar. O único custo é a largura de banda.
Separação seletiva. Bloquear o treino, permitir a resposta. Serve a maioria dos sites com conteúdo original relevante: edição, investigação, bases de conhecimento, documentação de produto. Paga pela camada que lhe devolve utilizadores e não pela que não devolve. É a posição que recomendo por omissão.
Bloqueio total. Bloquear tudo e impô-lo na CDN. Serve os casos em que o conteúdo é o produto — arquivos, bases de dados pagas, bancos de imagens — ou em que existe uma obrigação contratual ou regulamentar. Saiba à partida que está a abdicar da presença nos motores de respostas, não apenas do treino.
Um robots.txt de exemplo — separação seletiva
Disallow: /
User-agent: ClaudeBot
Disallow: /
User-agent: Google-Extended
Disallow: /
User-agent: OAI-SearchBot
Allow: /
User-agent: Claude-SearchBot
Allow: /
User-agent: PerplexityBot
Allow: /
User-agent: *
Disallow: /wp-admin/
Allow: /wp-admin/admin-ajax.php
Sitemap: https://example.com/sitemap.xml
Três notas sobre este ficheiro. Primeiro, os blocos de user-agent não se acumulam: um crawler lê apenas o bloco mais específico que lhe corresponde, pelo que as restrições sob User-agent: * não se aplicam a nenhum bot que tenha bloco próprio. Segundo, Allow: / é tecnicamente redundante — a ausência de proibição basta — mas documenta a intenção, e isso vale alguma coisa quando outra pessoa ler o ficheiro daqui a um ano. Terceiro, não há qualquer linha para o Googlebot, e isso é deliberado.
Como verificar que funciona mesmo
Os testadores de robots.txt mostram-lhe o que o ficheiro diz, não o que acontece. A única verificação que conta é o log de acessos do seu servidor. Três coisas a medir passadas duas semanas:
- Se os crawlers bloqueados pararam mesmo. Filtre o log por user-agent e conte os pedidos antes e depois. Uma queda parcial significa que a regra não está a ser aplicada.
- Que código de resposta recebem os crawlers permitidos. É aqui que se esconde a falha mais comum: uma firewall, um plugin de segurança ou uma camada de gestão de bots devolve 403 ou um desafio a bots legítimos sem que ninguém o tenha configurado. O ficheiro permite; o servidor bloqueia.
- Qual o tamanho da resposta. Um 200 que transporta 4 KB em vez de 60 KB significa que o bot recebeu uma casca HTML sem conteúdo — um problema completamente diferente, que trato à parte no artigo sobre o que um agente de IA vê quando chega ao seu site.
Um último ponto que poupa trabalho inútil: a 10 de julho de 2026 a Google atualizou a documentação oficial para afirmar explicitamente que a Pesquisa Google não usa ficheiros llms.txt e ignora-os. Se o seu plano de gestão de bots começava por criar um llms.txt, passe-o para o fim da lista. Não faz mal, mas também não faz o que a maioria dos guias promete.
Perguntas frequentes
Se bloquear o GPTBot, desapareço do ChatGPT?
Não. O GPTBot recolhe conteúdo apenas para treino de modelos. A indexação para a pesquisa dentro do ChatGPT é feita pelo OAI-SearchBot, um user-agent separado. Bloquear só o GPTBot retira-o do treino e mantém-no nas respostas.
Qual é a diferença entre o ClaudeBot e o Claude-User?
O ClaudeBot é um crawler de treino que corre em ciclos próprios. O Claude-User é enviado em tempo real quando um utilizador humano pediu explicitamente uma página concreta ou partilhou uma ligação. Bloquear o segundo significa que um utilizador que já está a tentar lê-lo recebe um erro.
O robots.txt chega para bloquear a sério?
Nem sempre. A documentação da OpenAI nota que o robots.txt pode não se aplicar ao ChatGPT-User, e a Perplexity nota que o Perplexity-User em geral não o segue, porque ambos classificam o pedido como ação do utilizador. Um bloqueio imposto exige uma regra ao nível da CDN ou da firewall.
Bloquear o Google-Extended prejudica o meu posicionamento na Google?
Não. O Google-Extended governa apenas a participação no treino e no grounding do Gemini. O rastreio para a Pesquisa é feito pelo Googlebot e não é afetado. O próprio Googlebot não pode ser dividido entre pesquisa normal e AI Overviews.
Afinal, que parte do meu tráfego vem de bots?
Segundo a Cloudflare, em julho de 2026 mais de 50% do tráfego na Internet não é humano, e 52% dos pedidos de crawlers destinam-se a treino em junho de 2026, contra 22% na primavera de 2025. Para um site individual a proporção varia muito consoante o nicho, e é por isso que vale a pena medi-la no log em vez de a assumir.
