Pular para o conteúdo
iLoveSEOCriar conta

Robots.txt: o que é, como criar e como bloquear (ou liberar) os bots de IA

Robots.txt é um arquivo de texto na raiz do site que diz aos rastreadores quais partes do site eles podem ou não visitar, e em 2026 é também onde se decide quais bots de IA entram. Ele controla rastreamento, não indexação: uma página bloqueada no robots.txt pode aparecer no Google se outro site linkar para ela.

Ilustração retrô de um porteiro com prancheta diante de um portão, com robôs de lata esperando na fila

Este guia explica o que é robots.txt, a diferença entre bloquear rastreamento e bloquear indexação, como escrever as regras, como tratar cada bot de IA, os erros que tiram um site inteiro do ar, como testar e a relação com o llms.txt.

O que é robots.txt?

O robots.txt é o primeiro arquivo que um rastreador procura ao chegar num site: https://exemplo.com.br/robots.txt. Ele lista, por rastreador, o que pode e o que não pode ser visitado. O formato existe desde 1994 e virou padrão formal em setembro de 2022, com a RFC 9309 da IETF, o Robots Exclusion Protocol, assinada por Martijn Koster (criador do formato), Gary Illyes (do Google) e outros.

Um exemplo mínimo:

1User-agent: *
2Disallow: /admin/
3Disallow: /carrinho/
4
5Sitemap: https://exemplo.com.br/sitemap.xml

Lido em voz alta: "qualquer rastreador pode visitar tudo, menos as pastas /admin/ e /carrinho/; o sitemap está neste endereço". A documentação do Google Search Central sobre como o Google interpreta o robots.txt, atualizada em agosto de 2026, lista os quatro campos que ele reconhece: user-agent, allow, disallow e sitemap. "Outros campos, como crawl-delay, não são suportados."

Duas regras de formato da documentação: o arquivo precisa estar na raiz do host (não funciona em /blog/robots.txt), com esse nome exato e codificado em UTF-8. E há um limite: o Google lê até 500 KiB, e "conteúdo depois do tamanho máximo é ignorado". É o mesmo limite mínimo que a RFC 9309 exige dos rastreadores.

Qual a diferença entre bloquear rastreamento e bloquear indexação?

É a confusão por trás dos erros descritos mais adiante, e a documentação de introdução do Google é direta: o robots.txt "não é um mecanismo para manter uma página fora do Google". Ela acrescenta: "uma página bloqueada no robots.txt ainda pode ser indexada se outros sites linkarem para ela".

O que acontece na prática:

  • Bloqueio de rastreamento (robots.txt). O Googlebot não visita a URL. Mas se ele encontra links para ela em outros sites, sabe que ela existe e pode indexá-la com o que sabe: a URL e o texto-âncora dos links. É o resultado que aparece na busca com a descrição "Não há informações disponíveis para esta página".
  • Bloqueio de indexação (noindex). O Googlebot visita a URL, lê a meta tag robots com noindex (ou o cabeçalho X-Robots-Tag) e tira a página do índice. Para isso funcionar, a página precisa ser rastreável, ou seja, não pode estar bloqueada no robots.txt.

A combinação errada é clássica: bloquear uma página no robots.txt e colocar noindex nela. O Google nunca lê o noindex, porque nunca entra, e a página pode continuar indexada por causa dos links. O guia de noindex mostra os casos certos de cada um.

Houve uma época em que dava para escrever Noindex: dentro do robots.txt. O Google nunca documentou isso e, em julho de 2019, anunciou no blog do Search Central que aposentaria o código que tratava regras não suportadas (noindex, nofollow, crawl-delay) a partir de 1º de setembro de 2019. Segundo o post, essas regras apareciam em menos de 0,001% dos arquivos. Desde então, Noindex no robots.txt é uma linha ignorada.

Como escrever as regras do robots.txt?

A sintaxe cabe em quatro campos e dois curingas:

Elemento

Função

Exemplo

User-agent:

A quem as regras seguintes se aplicam; * é todos

User-agent: Googlebot

Disallow:

Caminho que não pode ser rastreado

Disallow: /admin/

Allow:

Exceção dentro de um Disallow

Allow: /admin/publico/

Sitemap:

URL absoluta do sitemap; pode repetir

Sitemap: https://exemplo.com.br/sitemap.xml

* no caminho

Qualquer sequência de caracteres

Disallow: /*?ordenar=

$ no caminho

Fim da URL

Disallow: /*.pdf$

Fonte: Google Search Central, "Como o Google interpreta a especificação do robots.txt", atualizada em agosto de 2026.

Regras de leitura que a documentação define e que surpreendem:

  1. O grupo mais específico vence. Se existe um grupo User-agent: Googlebot e outro User-agent: *, o Googlebot segue só o primeiro e ignora o segundo. Quem quer regras gerais mais uma exceção para o Googlebot precisa repetir as gerais dentro do grupo dele.
  2. A regra mais longa vence. Entre Disallow: /blog/ e Allow: /blog/publico/, para a URL /blog/publico/post, vale o Allow, porque o caminho é mais longo (mais específico).
  3. Disallow vazio libera tudo. Disallow: sem caminho significa "nada bloqueado". E Disallow: / bloqueia o site inteiro.
  4. Caminho diferencia maiúsculas. /Admin/ e /admin/ são caminhos diferentes.

Um robots.txt de blog ou site institucional raramente precisa de mais do que isto:

1User-agent: *
2Disallow: /wp-admin/
3Allow: /wp-admin/admin-ajax.php
4Disallow: /*?s=
5Disallow: /*?utm_
6
7Sitemap: https://exemplo.com.br/sitemap.xml

Bloqueia o painel, libera o endereço que os plugins chamam para funcionar (o admin-ajax.php), evita que o rastreador gaste tempo em páginas de busca interna e URLs com parâmetro de campanha, e aponta o sitemap. O que não vai no robots.txt: CSS e JavaScript, porque o Google precisa deles para renderizar a página, e páginas que você quer fora do índice, que pedem noindex.

Como colocar o arquivo no ar. No WordPress, plugins como Yoast SEO e Rank Math criam um robots.txt virtual e oferecem um editor no painel, sem tocar em arquivo. Sem plugin, ou em site feito à mão, o arquivo robots.txt é criado num editor de texto e enviado para a pasta raiz do site pelo gerenciador de arquivos do painel da hospedagem (ou por FTP). Shopify, Wix e Webflow geram o arquivo sozinhos e permitem editar as regras nas configurações de SEO. Em todos os casos, o teste é abrir seusite.com.br/robots.txt no navegador e ver o conteúdo.

Como lidar com os bots de IA no robots.txt?

Cada empresa de IA documenta os próprios rastreadores, e a distinção que importa é entre bot de treino (coleta conteúdo para treinar modelos) e bot de busca ou de usuário (busca a página para responder uma pergunta agora, com citação). A tabela resume o que cada uma publica:

Empresa

Treino de modelo

Busca / resposta com citação

A pedido do usuário

OpenAI

GPTBot

OAI-SearchBot

ChatGPT-User (regras "podem não se aplicar")

Anthropic

ClaudeBot

Claude-SearchBot

Claude-User

Google

Google-Extended (só token; controla Gemini e Vertex)

Googlebot (busca normal)

Google-Extended não afeta a busca

Perplexity

não treina modelos próprios com rastreio

PerplexityBot

Perplexity-User ("geralmente ignora robots.txt")

Apple

Applebot-Extended (só opt-out de treino)

Applebot

não documentado

Common Crawl

CCBot (base aberta usada por vários modelos)

não se aplica

não se aplica

Fonte: documentação de bots de OpenAI, Anthropic (abril de 2026), Google (julho de 2026), Perplexity, Apple (setembro de 2026) e Common Crawl, consultadas em setembro de 2026.

Um detalhe do Google que resolve uma dúvida frequente: a documentação de rastreadores comuns diz que o Google-Extended "não impacta a inclusão de um site na Pesquisa Google nem é usado como sinal de ranqueamento". Bloqueá-lo tira o conteúdo do treino e do grounding do Gemini (o momento em que a IA consulta a página para responder), não da busca, que continua usando o Googlebot.

A decisão editorial tem três posições, e o robots.txt expressa cada uma:

Liberar tudo (a posição deste blog): nenhuma regra para bots de IA. O conteúdo pode ser treinado e citado. É a escolha de quem quer aparecer nas respostas de ChatGPT, Claude, Perplexity e Gemini, e aceita o uso em treino como custo disso. O guia de Generative Engine Optimization explica o raciocínio.

Bloquear treino, liberar busca:

1User-agent: GPTBot
2Disallow: /
3
4User-agent: ClaudeBot
5Disallow: /
6
7User-agent: Google-Extended
8Disallow: /
9
10User-agent: CCBot
11Disallow: /

Os bots de busca (OAI-SearchBot, Claude-SearchBot, PerplexityBot) continuam entrando e citando. É a posição de quem quer tráfego das respostas de IA sem alimentar o treino.

Bloquear tudo: as regras acima mais os bots de busca. Tira o site das respostas de IA. Os bots a pedido do usuário (ChatGPT-User, Perplexity-User) podem não obedecer, segundo a documentação das próprias empresas, porque agem em nome de uma pessoa que pediu aquela página.

Quantos fazem cada coisa: a Cloudflare analisou em julho de 2025 os 10 mil domínios mais acessados que passam por ela e encontrou robots.txt em 37% deles; entre os 3.816 com o arquivo, 546 (14%) tinham regras para bots de IA, e o GPTBot era o mais bloqueado, em 312 domínios. Em setembro de 2025 a Cloudflare lançou a Content Signals Policy, que acrescenta ao robots.txt uma linha como Content-Signal: search=yes, ai-input=yes, ai-train=no, com três sinais separados (busca, uso como entrada de resposta, treino), ativada em 3,8 milhões de domínios com robots.txt gerenciado. Este blog usa a linha com os três sinais liberados.

Fonte: Cloudflare, "From Googlebot to GPTBot: who's crawling your site in 2025", 1º de julho de 2025; Cloudflare, "Content Signals Policy", 24 de setembro de 2025.

Quais erros de robots.txt derrubam um site inteiro?

  • Disallow: / no site de produção. O clássico: o arquivo do ambiente de testes, que bloqueia tudo, sobe junto com o site novo. O Google para de rastrear e, em semanas, as páginas começam a cair. É o primeiro item de qualquer auditoria de SEO depois de uma migração.
  • Bloquear CSS e JavaScript. Disallow: /assets/ ou /wp-content/ impede o Google de renderizar a página como a pessoa vê. A página fica indexada, mas o Google avalia uma versão quebrada.
  • Robots.txt fora do ar. Se o arquivo responde erro 5xx, a documentação de códigos de status do Google diz que o Google trata o site como totalmente bloqueado enquanto o erro durar. Erro 404 é o oposto: nada bloqueado.
  • Bloquear e esperar noindex. Descrito acima: página bloqueada nunca tem o noindex lido.
  • Regra para * sem repetir no grupo específico. Quem cria User-agent: Googlebot para uma exceção e esquece de repetir as regras gerais libera para o Googlebot tudo o que bloqueava para os outros.
  • Bloquear parâmetros demais. Disallow: /*? bloqueia toda URL com qualquer parâmetro, inclusive páginas de produto que só existem com parâmetro em algumas plataformas.

Como testar o robots.txt?

Três ferramentas, em ordem de uso:

  1. O relatório robots.txt do Search Console. Em Configurações, o "Relatório robots.txt" mostra os arquivos dos 20 hosts principais da propriedade, a data do último rastreamento, o tamanho e os erros de sintaxe que o Google encontrou. Só aparece em propriedades de domínio. O guia do Search Console mostra onde fica.
  2. A inspeção de URL. Para saber se uma URL específica está bloqueada, a ferramenta de inspeção de URL do Search Console mostra "Rastreamento permitido? Não: bloqueado pelo robots.txt" quando é o caso. É o teste para a pergunta "por que esta página não está indexada?".
  3. Um rastreador local. O Screaming Frog SEO Spider respeita o robots.txt por padrão e marca as URLs bloqueadas na coluna "Status" como "Blocked by robots.txt". Rodar o rastreador no site inteiro mostra tudo o que o arquivo está bloqueando, inclusive o que não devia.

Um teste manual antes de subir uma mudança: abra https://seusite.com.br/robots.txt no navegador, leia linha a linha e pergunte de cada Disallow "que URLs isso alcança?". Como a regra vale para todo caminho que começa com o trecho indicado, Disallow: /a bloqueia /admin/, /artigos/ e /ajuda/.

Robots.txt e llms.txt: qual a relação?

São arquivos com funções diferentes. O robots.txt diz quem pode entrar; o llms.txt é um índice em Markdown, proposto em 2024, que diz a um modelo de IA o que o site tem e onde está o conteúdo principal. Um controla acesso; o outro facilita a leitura de quem tem acesso.

A relação prática: não faz sentido publicar um llms.txt e bloquear os bots de IA no robots.txt, porque o índice existe para quem você deixou entrar. E o contrário também: liberar os bots sem llms.txt funciona (o Googlebot e o ClaudeBot rastreiam sem ele), mas o índice ajuda modelos a achar o conteúdo relevante sem percorrer o site inteiro.

O terceiro arquivo do conjunto é o sitemap, que o robots.txt aponta: é o mapa completo de URLs para os rastreadores. Sitemap para descoberta, robots.txt para permissão, llms.txt para orientação. Os três vivem na raiz do site e são texto puro.

Conclusão

Robots.txt é o arquivo na raiz do site que controla o rastreamento, com quatro campos reconhecidos pelo Google, e não controla indexação, que é trabalho do noindex. Em 2026, é também onde o site declara a política para bots de IA, separando treino de busca, bot por bot. O próximo passo é abrir o seu robots.txt no navegador e conferir dois pontos: se nenhum Disallow alcança CSS, JavaScript ou páginas que você quer no Google, e se a política para GPTBot, ClaudeBot e Google-Extended é a que você escolheu, e não a que veio por padrão.

Perguntas frequentes

Robots.txt esconde uma página do Google?

Não, e o jeito de reconhecer o caso é pelo resultado: uma URL bloqueada que foi indexada por links de fora aparece na busca sem descrição, com a mensagem "Não há informações disponíveis para esta página". Para esconder de verdade há duas opções: noindex (com a página liberada no robots.txt, senão o Google não lê a instrução) ou senha, a opção que também impede pessoas de ver.

Todo site precisa de robots.txt?

Não. Sem o arquivo, o Google trata o site como totalmente liberado, que é o comportamento certo para um site sem área restrita. Ele passa a ser necessário quando há áreas a bloquear (painel, carrinho, busca interna) ou quando você quer expressar uma política para bots de IA.

Bloquear o GPTBot tira meu site do ChatGPT?

Tira do treino dos modelos da OpenAI, mas não das respostas com busca: a documentação da OpenAI separa o GPTBot (treino) do OAI-SearchBot (busca do ChatGPT). Para sair também das respostas com citação, é preciso bloquear o OAI-SearchBot. O ChatGPT-User, que busca a pedido de uma pessoa, pode não respeitar as regras, segundo a mesma documentação.

Crawl-delay funciona no robots.txt?

Não para o Google: a documentação diz que campos como crawl-delay "não são suportados". A velocidade de rastreamento do Googlebot se ajusta sozinha à capacidade do servidor. Outros rastreadores, como o ClaudeBot da Anthropic, documentam que aceitam a diretiva.

Bloquear o Google-Extended prejudica meu ranqueamento?

Não, e há uma particularidade que o diferencia dos outros bots de IA: o Google-Extended não é um rastreador, é só um nome que funciona dentro do robots.txt. Não existe um "Google-Extended" visitando o site; quem visita é o Googlebot, e a regra diz ao Google o que ele pode fazer com o que já rastreou no Gemini e no Vertex AI. Por isso bloqueá-lo não muda nada no rastreamento nem na busca.

Voltar para o blog