Robots.txt é um arquivo de texto simples na raiz de um site (por exemplo, example.com/robots.txt) que diz a programas automatizados quais partes do site eles podem e não podem buscar. Esses programas são chamados de rastreadores ou bots: softwares que solicitam páginas uma após a outra para coletar seu conteúdo. Um rastreador bem-comportado baixa o robots.txt primeiro e segue suas regras antes de solicitar qualquer outra coisa.
O arquivo segue uma convenção chamada Robots Exclusion Protocol. Ela existe desde o início da web e hoje está documentada como um padrão da internet, então os mecanismos de busca e a maioria das grandes empresas de IA a leem da mesma forma.
Como o robots.txt funciona?
Quando um rastreador chega a um host, ele solicita /robots.txt desse host e protocolo exatos. O arquivo em https://example.com/robots.txt se aplica apenas a https://example.com. Um subdomínio como shop.example.com precisa do seu próprio arquivo.
Em seguida, o rastreador procura o grupo de regras direcionado a ele. Cada rastreador se identifica com um user agent, um nome que ele envia em cada solicitação, como Googlebot ou GPTBot. Se o arquivo tiver um grupo para esse nome, o rastreador segue esse grupo. Caso contrário, ele recorre ao grupo para todos os bots, escrito como um asterisco. Dentro de um grupo, vence a regra correspondente mais específica, o que na prática significa a regra com o caminho correspondente mais longo.
O código de status do arquivo também importa:
- Se o robots.txt retornar uma página normal, o rastreador aplica suas regras.
- Se retornar "não encontrado", a maioria dos rastreadores trata o site inteiro como permitido.
- Se o servidor retornar um erro, muitos rastreadores pausam o rastreamento até que o arquivo possa ser lido, porque não conseguem saber o que é permitido.
Os rastreadores costumam manter o arquivo em cache por um tempo, então uma alteração não entra em vigor já na próxima solicitação.
Como são as regras de um arquivo robots.txt?
Um arquivo robots.txt é uma lista de grupos. Cada grupo começa com uma ou mais linhas de user agent, seguidas pelas regras para esses agentes.
User-agent: *
Disallow: /cart/
Disallow: /search
Allow: /search/help
User-agent: GPTBot
Disallow: /
Sitemap: https://example.com/sitemap.xmlNesse arquivo, todos os bots podem rastrear o site, exceto as páginas do carrinho e da busca interna, com uma exceção para a página de ajuda da busca. O GPTBot está bloqueado no site inteiro. A linha de sitemap indica a todos os bots uma lista de URLs que o proprietário quer que sejam rastreadas.
| Diretiva | O que ela faz |
|---|---|
| User-agent | Nomeia o rastreador ao qual as regras seguintes se aplicam. Um asterisco significa qualquer rastreador. |
| Disallow | Lista um caminho que o rastreador não deve buscar. "Disallow: /" bloqueia o site inteiro. Um valor vazio não bloqueia nada. |
| Allow | Lista um caminho que o rastreador pode buscar, usado para criar uma exceção dentro de uma pasta bloqueada. |
| Sitemap | Informa a URL completa de um sitemap XML. Aplica-se a todos os rastreadores, independentemente do grupo. |
Os caminhos são comparados a partir do início do caminho da URL e diferenciam maiúsculas de minúsculas. Os principais rastreadores também aceitam dois curingas: um asterisco corresponde a qualquer sequência de caracteres, e um cifrão marca o fim de uma URL, então "Disallow: /*.pdf$" bloqueia todas as URLs que terminam em .pdf. Alguns rastreadores aceitam linhas extras como Crawl-delay, mas o suporte varia e o Google a ignora.
O que o robots.txt não consegue fazer?
O robots.txt controla o rastreamento, que é o ato de buscar uma página. A indexação, o ato de armazenar uma página para que ela possa aparecer nos resultados, é uma etapa separada. Um mecanismo de busca ainda pode listar uma URL bloqueada se outros sites apontarem links para ela, geralmente mostrando o endereço sem descrição, porque nunca leu o conteúdo.
Para manter uma página fora dos resultados de busca, a página precisa de uma instrução noindex, seja em uma meta tag robots, seja em um cabeçalho HTTP. Essa instrução só funciona se o rastreador tiver permissão para buscar a página e vê-la. Se uma página estiver bloqueada no robots.txt e também tiver noindex, o noindex nunca é lido.
O robots.txt também é um pedido sem nenhuma imposição. Rastreadores confiáveis o respeitam, enquanto scrapers e bots maliciosos podem ignorá-lo. Como o arquivo é público, listar nele uma pasta privada mostra a qualquer pessoa onde essa pasta está. Conteúdo que precisa permanecer privado exige autenticação ou regras de acesso no servidor.
Como o robots.txt se aplica aos rastreadores de IA?
Os rastreadores de IA leem o robots.txt da mesma forma que os rastreadores de mecanismos de busca, e a maioria das empresas de IA opera vários bots com user agents diferentes para tarefas diferentes. A OpenAI, por exemplo, usa o GPTBot para coletar dados de treinamento, o OAI-SearchBot para seu índice de busca e o ChatGPT-User para buscas que uma pessoa aciona dentro de uma conversa. A Anthropic usa o ClaudeBot e a Perplexity usa o PerplexityBot.
Como cada bot tem seu próprio nome, um site pode fazer escolhas separadas:
- Permitir bots de busca e bloquear bots de treinamento, para que as páginas possam receber citação nas respostas sem serem adicionadas aos dados de treinamento.
- Bloquear todos os bots de IA, o que remove o site das fontes ao vivo que esses produtos leem.
- Permitir tudo, que é o padrão quando nenhuma regra os nomeia.
Algumas empresas usam um token de controle em vez de um rastreador separado. Google-Extended é um nome de user agent que determina se o conteúdo coletado pelo Googlebot pode ser usado nos modelos Gemini. Bloqueá-lo não muda como as páginas aparecem no Google Search ou nos AI Overviews, porque eles continuam dependendo do Googlebot.
O que o robots.txt significa para a visibilidade em IA de um site?
A busca com IA escreve respostas a partir das páginas que consegue recuperar. Se o bot de busca de um determinado produto estiver bloqueado, esse produto não consegue buscar as páginas do site, e a resposta é construída com outras fontes. O processo descrito em como a busca com IA escolhe quais fontes citar não tem nada para avaliar em uma página que nunca foi buscada.
Os bloqueios muitas vezes acontecem por acidente. Uma regra antiga escrita para todos os bots pode causar isso, assim como um arquivo de homologação copiado para produção ou um plugin de segurança que adiciona user agents de IA a uma lista de bloqueio, e o site some das respostas de IA sem que ninguém perceba. O firewall ou a rede de distribuição de conteúdo na frente de um site também pode bloquear bots antes mesmo que eles cheguem ao robots.txt, então as duas camadas precisam ser verificadas.
Quando o proprietário de um site percebe uma queda em menções ou citações, o robots.txt é um dos primeiros arquivos a ler. Comparar suas regras com os user agents de cada plataforma de IA mostra quais produtos conseguem ler o site. Acompanhar a visibilidade em IA ao longo do tempo mostra, então, se uma alteração no arquivo foi seguida por uma mudança na frequência com que o site recebe citações.