GEO-Score
ServiçosSobreAprenderRankingRelatóriosPreçosBlog

GEO-Score

A Melhor Ferramenta de Análise GEO

Teste seu conteúdo para buscadores com IA como ChatGPT, Perplexity e Claude. Receba insights acionáveis para melhorar sua visibilidade.

Receba dicas de conteúdo GEO

Recursos

  • Base de Conhecimento
  • O que é GEO?
  • Blog GEO
  • Verificador GEO Score
  • Ranking
  • Glossário de IA
  • Estudos de Caso
  • GEO Insights
  • Relatórios

Ferramentas GEO

  • Auditoria Completa de Site para GEO
  • Análise GEO
  • Verificador de Visibilidade em IA
  • Calculadora de ROI
  • Validador de Schema
  • Verificador de SEO para Perplexity
  • Verificador de SEO para ChatGPT
  • Verificador do Modo IA do Google
  • Verificador de crawlers de IA
  • Verificador de agent readiness
  • Gerador de llms.txt
  • Ferramenta de query fan-out
  • AI Bot Log Analyzer
  • Comparação com Concorrentes
  • Serviços Profissionais
  • Todas as Ferramentas

Analise Seus

  • Posts de Blog
  • Páginas de Produto
  • Landing Pages
  • Páginas Iniciais
  • Páginas de Serviços

GEO-Score

  • Sobre
  • Política de Privacidade
  • Termos e Condições
  • Contato
  • White Label
  • Construa Seu Sucesso

Siga o GEO-Score

Guias de Busca com IA

Otimização para Busca com IAPerplexity SEOChatGPT SEOLLM SEOVerificador de Visibilidade em IATodos os guias →
Compatível com GDPRDados Hospedados na UEFeito nos Países Baixos
KVK: 61855111BTW: NL004509498B76© 2026 GEO-score.onlineGEO-Score faz parte da Be-Found.
Potencialize seu blog com a Bloffee
  1. Início
  2. Guias
  3. Bots de IA nos logs

GEO técnico

Encontre bots de IA nos logs do servidor (e confirme se são reais)

Seu analytics não vê rastreadores de IA. Os logs do seu servidor veem. Aqui estão comandos para copiar, as listas oficiais de IP e um checklist de privacidade.

Atualizado e verificado em 19 de outubro de 2026

Prefere não usar a linha de comando?

Cole seu log no nosso AI Bot Log Analyzer gratuito. Ele roda no seu navegador, então seu log nunca é enviado.

Abrir o AI Bot Log Analyzer

Por que seu analytics não mostra bots de IA

Ferramentas como o Google Analytics contam visitas com um pequeno script que roda no navegador. Um rastreador que só baixa o seu HTML nunca executa esse script, então nunca aparece.

Seu servidor web registra cada requisição, de pessoas e de bots. Esse registro é o seu log de acesso.

Os logs respondem a três perguntas: quais bots visitam, quais páginas eles buscam e se recebem a página ou um erro.

Onde encontrar seus logs

  • nginx: o formato padrão “combined” já tem tudo o que você precisa. No Debian e no Ubuntu, o arquivo costuma ficar em /var/log/nginx/access.log.
  • Apache: use também o formato combined. O formato “common” não tem user agent, então com ele você não vê bots. Adicione %{User-agent}i ao seu LogFormat.
  • Está atrás de uma CDN ou proxy? Então o primeiro campo pode mostrar o IP do proxy em toda requisição. Configure primeiro a opção de IP real do servidor (ou registre o IP do cliente repassado); senão, todas as verificações de IP abaixo vão falhar.
  • Sem acesso aos logs brutos? Veja o painel da sua hospedagem ou coloque uma CDN na frente do site. Mais sobre isso abaixo.

Fontes

  • Documentação do módulo de logs do nginx (abre em uma nova aba)
  • Documentação de logs do Apache (abre em uma nova aba)

Leia uma linha do log

Aqui está uma linha no formato combined, com um IP inventado. Cada parte responde a uma pergunta.

Exemplo de linha de log (formato combined)
203.0.113.7 - - [19/Oct/2026:08:01:02 +0000] "GET /pricing HTTP/1.1" 200 5123 "-" "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; GPTBot/1.4; +https://openai.com/gptbot"
  • Endereço IP: de onde veio a requisição. É ele que você vai comparar com as listas oficiais.
  • Horário: quando aconteceu.
  • Requisição: o método e a página. Aqui, GET /pricing.
  • Código de status: 200 é entregue, 301/302 redirecionada, 403 bloqueada, 404 não encontrada, 5xx erro do servidor.
  • Bytes: quanto foi devolvido.
  • User agent: quem o visitante diz ser. Aqui, GPTBot. Qualquer um pode digitar isso, então sozinho não prova nada.

Os bots de IA para procurar

Esta lista vem da documentação de cada empresa, verificada em 19 de outubro de 2026.

Rastreadores e fetchers de IA, com suas listas oficiais de IP
User agentEmpresaO que fazSegue o robots.txtLista de IP
OAI-SearchBotOpenAIÍndice de buscaSimOAI-SearchBot JSON (abre em uma nova aba)
GPTBotOpenAITreinamentoSimGPTBot JSON (abre em uma nova aba)
ChatGPT-UserOpenAIPedido de usuárioEm parteChatGPT-User JSON (abre em uma nova aba)
Claude-SearchBotAnthropicÍndice de buscaSimClaude-SearchBot JSON (abre em uma nova aba)
ClaudeBotAnthropicTreinamentoSimClaudeBot JSON (abre em uma nova aba)
Claude-UserAnthropicPedido de usuárioSimClaude-User JSON (abre em uma nova aba)
PerplexityBotPerplexityÍndice de buscaSimPerplexityBot JSON (abre em uma nova aba)
Perplexity-UserPerplexityPedido de usuárioNãoPerplexity-User JSON (abre em uma nova aba)
GooglebotGoogleBuscadorSimGooglebot JSON (abre em uma nova aba)
Google-AgentGooglePedido de usuárioNãoGoogle-Agent JSON (abre em uma nova aba)Google-Agent JSON (abre em uma nova aba)Google-Agent JSON (abre em uma nova aba)
bingbotMicrosoftBuscadorSimbingbot JSON (abre em uma nova aba)
ApplebotAppleBuscadorSimApplebot JSON (abre em uma nova aba)
meta-externalagentMetaTreinamentoSimNão publicada
meta-webindexerMetaÍndice de buscaSimNão publicada
meta-externalfetcherMetaPedido de usuárioEm parteNão publicada
AmazonbotAmazonTreinamentoSimNão publicada
Amzn-SearchBotAmazonÍndice de buscaSimNão publicada
Amzn-UserAmazonPedido de usuárioEm parteNão publicada
DuckAssistBotDuckDuckGoÍndice de buscaSimDuckAssistBot JSON (abre em uma nova aba)
MistralAI-UserMistral AIPedido de usuárioSimNão publicada
MistralAI-IndexMistral AIÍndice de buscaNão informadoNão publicada
MistralAI-TrainingMistral AITreinamentoSimNão publicada
CCBotCommon CrawlTreinamentoSimCCBot JSON (abre em uma nova aba)

Google-Extended e Applebot-Extended são tokens de robots.txt, não rastreadores. Eles nunca aparecem num log.

A Anthropic não publica strings de user agent completas. Nos logs, elas aparecem como “compatible; Claude-User/1.0; +claudebot@anthropic.com”.

Comandos para copiar

Funcionam com um log no formato combined. Testamos em 19 de outubro de 2026 com grep e awk no macOS. Troque access.log pelo seu arquivo.

Contar requisições por bot de IA
grep -oE 'GPTBot|OAI-SearchBot|ChatGPT-User|ClaudeBot|Claude-User|Claude-SearchBot|PerplexityBot|Perplexity-User|meta-externalagent|Amazonbot|Applebot|DuckAssistBot|MistralAI-User|CCBot' access.log | sort | uniq -c | sort -rn
Códigos de status por bot
awk -F'"' '{ split($3,a," "); if (match($6,/GPTBot|OAI-SearchBot|ChatGPT-User|ClaudeBot|Claude-User|Claude-SearchBot|PerplexityBot|Perplexity-User/)) print substr($6,RSTART,RLENGTH), a[1] }' access.log | sort | uniq -c
Páginas mais buscadas por um bot
grep 'OAI-SearchBot' access.log | awk '{print $7}' | sort | uniq -c | sort -rn | head
Só erros (4xx e 5xx) de bots de IA
awk -F'"' '$6 ~ /GPTBot|OAI-SearchBot|ChatGPT-User|ClaudeBot|Claude-User|Claude-SearchBot|PerplexityBot|Perplexity-User/ { split($3,a," "); if (a[1] >= 400) print a[1], $2 }' access.log
Buscar em logs antigos compactados
zgrep -c 'GPTBot' /var/log/nginx/access.log.*.gz

Verifique cada IP de bot com Python

Este script baixa as listas oficiais de IP e imprime VERIFIED ou NOT IN LIST para cada linha de bot. Ele só usa a biblioteca padrão do Python.

verify_bots.py
# Usage: python3 verify_bots.py access.log
import ipaddress, json, re, sys, urllib.request

LISTS = {
    "GPTBot": "https://openai.com/gptbot.json",
    "OAI-SearchBot": "https://openai.com/searchbot.json",
    "ChatGPT-User": "https://openai.com/chatgpt-user.json",
    "ClaudeBot": "https://claude.com/crawling/bots.json",
    "Claude-User": "https://claude.com/crawling/bots.json",
    "Claude-SearchBot": "https://claude.com/crawling/bots.json",
    "PerplexityBot": "https://www.perplexity.com/perplexitybot.json",
    "Perplexity-User": "https://www.perplexity.com/perplexity-user.json",
    "Googlebot": "https://developers.google.com/static/crawling/ipranges/common-crawlers.json",
    "bingbot": "https://www.bing.com/toolbox/bingbot.json",
}
cache = {}

def networks(url):
    if url not in cache:
        req = urllib.request.Request(url, headers={"User-Agent": "log-check/1.0"})
        data = json.load(urllib.request.urlopen(req, timeout=20))
        cache[url] = [ipaddress.ip_network(p.get("ipv4Prefix") or p.get("ipv6Prefix"))
                      for p in data["prefixes"]]
    return cache[url]

bot = re.compile("|".join(sorted(map(re.escape, LISTS), key=len, reverse=True)))
for line in open(sys.argv[1], errors="replace"):
    ua = line.split('"')[5] if line.count('"') >= 6 else line
    match = bot.search(ua)
    if not match:
        continue
    try:
        ip = ipaddress.ip_address(line.split()[0])
    except ValueError:
        continue
    ok = any(ip in net for net in networks(LISTS[match.group(0)]))
    print("VERIFIED   " if ok else "NOT IN LIST", match.group(0), ip)

É mesmo o GPTBot? Verifique o IP

Um user agent é só texto. Qualquer um pode enviar “GPTBot”. A própria Perplexity recomenda combinar o user agent com a verificação de IP.

Opção 1: as listas oficiais de IP

OpenAI, Anthropic, Perplexity, Google, Microsoft (Bing), Apple, DuckDuckGo e Common Crawl publicam listas JSON com as faixas de IP dos seus bots. Se o IP está na lista, a requisição veio da rede daquela empresa. Os links estão na tabela acima.

Opção 2: DNS reverso

Google: consulte o nome de host do IP. Ele precisa terminar em googlebot.com, google.com ou googleusercontent.com, e consultar esse nome precisa devolver o mesmo IP. No Bing funciona igual, com nomes terminados em search.msn.com.

Verificação de DNS reverso para o Googlebot
host 66.249.66.1
# 1.66.249.66.in-addr.arpa domain name pointer crawl-66-249-66-1.googlebot.com.
host crawl-66-249-66-1.googlebot.com
# crawl-66-249-66-1.googlebot.com has address 66.249.66.1  ← same IP: real Googlebot

“Fora da lista” nem sempre quer dizer falso. As listas mudam, e o arquivo JSON do Bing foi gerado pela última vez em janeiro de 2024. Trate como “verificar”, não como prova.

A Anthropic avisa que bloquear por IP pode não funcionar direito nem garantir uma exclusão duradoura. Use o robots.txt para sair.

Fontes

  • Google: verificar o Googlebot (abre em uma nova aba)
  • Bing: verificar o bingbot (abre em uma nova aba)
  • Perplexity: bots (abre em uma nova aba)

O que os números dizem

  • Treinamento, busca e pedidos de usuário são coisas diferentes. GPTBot e ClaudeBot coletam dados de treinamento. OAI-SearchBot, Claude-SearchBot e PerplexityBot montam índices de busca. ChatGPT-User, Claude-User e Perplexity-User buscam uma página porque alguém está perguntando sobre ela agora.
  • Muitas respostas 403 ou 5xx significam que você está bloqueando ou quebrando o acesso da IA. Confira seu firewall, as configurações de bots da sua CDN e seu robots.txt.
  • Requisições ao robots.txt e ao llms.txt mostram quais bots leem suas regras. A OpenAI diz que o OAI-SearchBot e o GPTBot podem acrescentar uma marca de robots.txt ao user agent quando buscam esse arquivo.
  • Pedidos de usuário podem pular o robots.txt. Segundo a OpenAI, as regras do robots.txt podem não valer para o ChatGPT-User, e segundo a Perplexity, o Perplexity-User costuma ignorá-las.
  • Uma visita não é uma citação. Significa que um bot leu sua página, não que alguma resposta de IA vá citá-la.
  • Configure o robots.txt para rastreadores de IA
  • Como fazer a IA citar suas páginas

Sem acesso ao servidor? Use sua CDN

O AI Crawl Control da Cloudflare (antes AI Audit) mostra quais serviços de IA rastreiam seu site e quais rastreadores ignoram suas regras. Segundo a Cloudflare, ele está disponível em todos os planos.

O Cloudflare Logpush pode exportar logs de requisições com campos como ClientIP, ClientRequestUserAgent, ClientRequestPath e EdgeResponseStatus. Nosso analisador também lê essas linhas JSON.

Fontes

  • Cloudflare AI Crawl Control (abre em uma nova aba)
  • Campos do Cloudflare Logpush (abre em uma nova aba)

Logs e privacidade (RGPD)

Endereços IP podem ser dados pessoais. O Tribunal de Justiça da UE disse isso sobre IPs dinâmicos no caso Breyer (C-582/14, 19 de outubro de 2016), e o considerando 30 do RGPD cita endereços IP como identificadores por via eletrónica.

Os IPs dos bots pertencem a empresas, mas o mesmo log também guarda os IPs dos seus visitantes. Uma abordagem prática:

  • Separe primeiro as linhas de bots e trabalhe com elas.
  • Guarde os logs brutos só pelo tempo necessário, por exemplo para segurança. O RGPD não fixa um número de dias; diz para não guardar dados pessoais por mais tempo do que o necessário.
  • Guarde totais (bot, dia, página, status, verificado ou não) em vez de IPs.
  • Encurte ou aplique hash ao IP depois de verificá-lo.
  • Não envie logs brutos a uma ferramenta externa sem um contrato de subcontratação. Nosso analisador roda no seu navegador, então nada é enviado.

Isto é informação geral, não aconselhamento jurídico.

Fontes

  • TJUE, processo C-582/14 (Breyer) (abre em uma nova aba)
  • RGPD, considerando 30 (abre em uma nova aba)

Perguntas frequentes

Como sei se o ChatGPT visita meu site?

Procure no seu log de acesso por OAI-SearchBot (busca do ChatGPT), ChatGPT-User (pedido de um usuário) e GPTBot (treinamento). Depois compare os IPs com as listas da OpenAI.

Por que o Google Analytics não mostra o GPTBot?

O Google Analytics conta visitas por um script no navegador. Rastreadores que só baixam o seu HTML não o executam.

Como sei se uma requisição do GPTBot é real?

Compare o IP com openai.com/gptbot.json. Se não estiver na lista, trate a requisição como não verificada.

Quais bots ignoram o robots.txt?

Segundo a própria documentação: bots que buscam uma página porque um usuário pediu. A OpenAI diz que o robots.txt pode não valer para o ChatGPT-User, a Perplexity diz que o Perplexity-User costuma ignorá-lo, e o Google diz o mesmo dos seus fetchers acionados por usuários.

O que significam erros 403 para bots de IA?

Seu servidor, firewall ou CDN recusou a requisição. Se você quer ser encontrado na busca com IA, encontre a regra que bloqueia o bot e mude-a.

Posso registrar endereços IP?

Em geral sim, para uma finalidade clara como segurança, mas IPs podem ser dados pessoais. Guarde logs por pouco tempo, armazene totais em vez de IPs e mencione o registro na sua política de privacidade. Isto não é aconselhamento jurídico.

Continue aprendendo

  • AI Bot Log Analyzer gratuito (roda no seu navegador)
  • Configure o robots.txt para rastreadores de IA
  • Referência: user agents de bots de IA
  • O guia de llms.txt
  • Gerador de robots.txt para bots de IA
  • Acompanhe visitas de ferramentas de IA

Garanta que os bots encontrem algo que valha a pena

Rastreado não é citado. Veja como as ferramentas de IA leem sua página, em 22 pontos.

Analisar minha página