Guia Completo do Robots.txt: Controlando Crawlers de Mecanismos de Busca
Aprenda a escrever arquivos robots.txt e gerenciar efetivamente os crawlers de mecanismos de busca.

O Papel e Limitacoes do Robots.txt
robots.txt e um arquivo de texto localizado no diretorio raiz do site que orienta os crawlers de mecanismos de busca sobre quais paginas rastrear. E parte do Robots Exclusion Protocol estabelecido em 1994, sendo usado desde os primordios da web.
https://example.com/robots.txt
Porem, um ponto importante deve ser esclarecido: robots.txt e apenas uma recomendacao. Bots de mecanismos de busca bem construidos respeitam isso, mas bots maliciosos ou web scrapers podem ignora-lo. Portanto, nao use robots.txt como ferramenta de seguranca. Dados sensiveis devem ser protegidos com autenticacao e controle de acesso.
Como os Crawlers Processam o Robots.txt
Quando um crawler de mecanismo de busca visita um site, primeiro verifica o robots.txt. A ordem de processamento e:
- Requisita
/robots.txt - Se o arquivo nao existe -> Permite rastrear todas as paginas
- Se o arquivo existe -> Rastreia conforme as regras
- Encontra o bloco User-agent correspondente
- Aplica a regra mais especifica
No matching de regras, um ponto importante e que se Allow e Disallow se aplicam ao mesmo caminho, a regra mais especifica tem prioridade. Se a especificidade for igual, Allow tem prioridade.
Guia Detalhado de Sintaxe
Diretivas Basicas
User-agent: *
Disallow: /admin/
Allow: /admin/public/
Sitemap: https://example.com/sitemap.xml
Crawl-delay: 10
| Diretiva | Descricao | Exemplo |
|---|---|---|
| User-agent | Especifica o crawler alvo (* = todos os bots) | User-agent: Googlebot |
| Disallow | Caminho proibido de rastrear | Disallow: /private/ |
| Allow | Caminho permitido (excecao ao Disallow) | Allow: /private/open/ |
| Sitemap | URL do sitemap (caminho absoluto) | Sitemap: https://... |
| Crawl-delay | Intervalo de rastreamento (segundos) - apenas alguns bots suportam | Crawl-delay: 10 |
Wildcards e Fim de Caminho
robots.txt suporta correspondencia de padroes limitada:
*- Qualquer string (0 ou mais caracteres)$- Fim do caminho
# Bloquear todos os arquivos .pdf
Disallow: /*.pdf$
# Bloquear URLs com parametros de query
Disallow: /*?
# Bloquear parametros especificos
Disallow: /*?sort=
Disallow: /*?filter=
# Bloquear URLs com ID de sessao
Disallow: /*sessionid
# Bloquear todos os arquivos PHP em diretorio especifico
Disallow: /scripts/*.php$
Atencao: Wildcards sao usados apenas para correspondencia de caminhos. Expressoes regulares nao sao suportadas.
Principais Mecanismos de Busca e Crawlers de IA
Conhecer os principais bots que visitam seu site e util:
Bots de Mecanismos de Busca
| User-agent | Servico | Descricao |
|---|---|---|
| Googlebot | Google Search | Para busca web |
| Googlebot-Image | Google Images | Para busca de imagens |
| Bingbot | Bing | Busca da Microsoft |
| DuckDuckBot | DuckDuckGo | Busca com privacidade |
| Baiduspider | Baidu | Busca chinesa |
Crawlers de IA (Crescimento apos 2024)
| User-agent | Servico | Descricao |
|---|---|---|
| GPTBot | OpenAI | Dados de treinamento do ChatGPT |
| ChatGPT-User | OpenAI | Funcao de navegacao do ChatGPT |
| CCBot | Common Crawl | Coleta de dataset aberto |
| anthropic-ai | Anthropic | Dados de treinamento do Claude |
| Claude-Web | Anthropic | Busca web do Claude |
| Google-Extended | Dados de treinamento do Gemini |
Para bloquear crawlers de treinamento de IA:
# Bloquear crawlers de treinamento de IA
User-agent: GPTBot
Disallow: /
User-agent: CCBot
Disallow: /
User-agent: Google-Extended
Disallow: /
Exemplos Praticos: Configuracoes por Situacao
Permitir Tudo (Padrao)
User-agent: *
Allow: /
Bloquear Tudo (Ambiente de Desenvolvimento/Staging)
User-agent: *
Disallow: /
Site Geral
User-agent: *
Allow: /
# Area administrativa
Disallow: /admin/
Disallow: /wp-admin/
Disallow: /dashboard/
# Area pessoal do usuario
Disallow: /account/
Disallow: /profile/
Disallow: /my-*/
# Resultados de busca (prevenir conteudo duplicado)
Disallow: /search/
Disallow: /*?q=
Disallow: /*?s=
# Arquivos temporarios/desenvolvimento
Disallow: /tmp/
Disallow: /staging/
Disallow: /_*/
# Sitemap
Sitemap: https://example.com/sitemap.xml
Site de E-commerce
User-agent: *
Allow: /
# Processo de compra (nao precisa rastrear)
Disallow: /cart/
Disallow: /checkout/
Disallow: /order/
# Conta do usuario
Disallow: /my-account/
Disallow: /wishlist/
# Listas de produtos filtradas/ordenadas (prevenir duplicacao)
Disallow: /*?sort=
Disallow: /*?filter=
Disallow: /*?color=
Disallow: /*?size=
Disallow: /*&
# Busca interna
Disallow: /search/
# Permitir bots de comparacao de precos (opcional)
User-agent: PriceSpider
Allow: /
Sitemap: https://example.com/sitemap.xml
Sitemap: https://example.com/product-sitemap.xml
Site de Blog/Midia
User-agent: *
Allow: /
# Paginas de tags/categorias (opcional - se houver preocupacao com duplicacao)
Disallow: /tag/
Disallow: /category/page/
# Arquivos de autor
Disallow: /author/
# Paginas de anexos
Disallow: /attachment/
# Permitir acesso direto a arquivos de midia
Allow: /wp-content/uploads/
Sitemap: https://example.com/sitemap.xml
Sitemap: https://example.com/news-sitemap.xml
Erros Comuns e Solucoes
1. Barra Faltando
# Errado - bloqueia todos os caminhos comecando com "admin"
Disallow: admin
# Correto - bloqueia apenas o diretorio /admin/
Disallow: /admin/
2. Erro de Maiusculas/Minusculas
Nomes de diretivas diferenciam maiusculas de minusculas:
# Errado
user-agent: *
disallow: /admin/
# Correto
User-agent: *
Disallow: /admin/
3. Problemas de Renderizacao por Bloquear CSS/JS
Desde 2015, o Google renderiza paginas para entender o conteudo. Bloquear CSS e JavaScript pode impedir o Google de entender a pagina corretamente:
# Errado - bloqueia recursos de renderizacao
Disallow: /css/
Disallow: /js/
Disallow: *.css$
Disallow: *.js$
# Correto - permite recursos estaticos
Allow: /css/
Allow: /js/
Allow: /images/
4. Bloquear Todo o Site Acidentalmente
# Muito perigoso! Bloqueia todo o site
User-agent: *
Disallow: /
Fazer deploy dessa configuracao em producao pode fazer voce desaparecer dos resultados de busca.
robots.txt vs meta robots vs X-Robots-Tag
Os tres metodos tem propositos e prioridades diferentes:
| Metodo | Localizacao | Proposito | Crawling | Indexacao |
|---|---|---|---|---|
| robots.txt | Diretorio raiz | Controle de crawling | Sim | Nao |
| meta robots | HTML head | Controle de indexacao | Nao | Sim |
| X-Robots-Tag | Header HTTP | Recursos nao-HTML | Nao | Sim |
Importante: Mesmo bloqueando com robots.txt, a pagina pode aparecer nos resultados de busca. Se outros sites linkarem, o Google sabera da URL e pode exibi-la sem conteudo, apenas a URL.
Para remover completamente dos resultados de busca:
<!-- Adicionar no head da pagina em questao -->
<meta name="robots" content="noindex, nofollow">
Como Validar o robots.txt
Google Search Console
- Acesse o Search Console
- Menu esquerdo "Configuracoes" -> "robots.txt"
- Use a funcao "Teste ao vivo" para verificar se URLs estao bloqueadas
Verificacao via Linha de Comando
# Verificar conteudo atual do robots.txt
curl https://example.com/robots.txt
# Simular perspectiva de um bot especifico (Python necessario)
pip install robotexclusionrulesparser
python -c "
import robotexclusionrulesparser as rerp
rp = rerp.RobotExclusionRulesParser()
rp.fetch('https://example.com/robots.txt')
print(rp.is_allowed('Googlebot', '/admin/'))
"
Otimizacao de Crawl Budget
Para sites grandes, o "crawl budget" (orcamento de rastreamento) e importante. E a quantidade de recursos de rastreamento que o Google aloca para o site. Bloqueando paginas desnecessarias com robots.txt, permite que paginas importantes sejam rastreadas com mais frequencia.
Paginas que desperdicam crawl budget:
- Listas de produtos filtradas/ordenadas
- URLs com ID de sessao
- Calendarios infinitos
- Resultados de busca interna
- Paginas para impressao
Toolypet Robots.txt Generator
Mesmo regras complexas sao faceis de criar:
- Selecione padroes de caminhos a bloquear
- Configure bloqueio de bots especificos
- Insira URL do sitemap
- Confirme com preview
- Baixe o arquivo completo
Com um robots.txt correto, use seu orcamento de rastreamento eficientemente e garanta que seu conteudo importante seja bem exposto nos resultados de busca.