Como instrumentar um site para saber se a IA está lendo (e o Analytics não mostra)

Robô não executa JavaScript, então nunca aparece no Analytics. Dá para medir leitura por IP verificado e testar índice direto, com o que você já paga. Quatro números bastam.

Como instrumentar um site para saber se a IA está lendo (e o Analytics não mostra)
Neste artigo
  1. Por que o Analytics não mostra robô?
  2. Como medir a leitura de forma confiável?
  3. Qual robô olhar primeiro?
  4. Como saber se estou no índice, então?
  5. Que números colocar no painel?
  6. Quanto isso custa para montar?
  7. Perguntas frequentes

Dá para saber quantos robôs de IA leram o seu site, quais páginas eles leram e se o ChatGPT tem as suas URLs no índice. Nenhuma dessas três coisas aparece no Google Analytics ou no Search Console, e as três são mensuráveis com o que você já paga.

O que não funciona é contar por user-agent. User-agent é texto livre: qualquer pessoa consegue bater no seu site dizendo que é o GPTBot, e o seu log vai registrar como se fosse.

Por que o Analytics não mostra robô?

Por desenho. O Google Analytics roda JavaScript no navegador do visitante, e robô não executa JavaScript. Ele nunca vai aparecer ali.

O GA4 tem desde maio de 2026 um canal padrão chamado “AI Assistant”, mas ele mede outra coisa: a sessão de quem clicou na resposta e veio parar no seu site. E mede por baixo, porque clique vindo de IA sem referrer cai em Direct. Trate como piso, nunca como total.

Leitura e clique são métricas diferentes, e a leitura vem antes.

Como medir a leitura de forma confiável?

Classificando por IP, não por texto. A Cloudflare mantém uma lista de bots verificados e confere a origem da requisição contra os blocos declarados por cada empresa. O campo é verifiedBotCategory, e a categoria é "AI Crawler".

Requisição que se diz GPTBot mas vem de IP residencial não recebe a categoria. Testamos exatamente isso: uma requisição forjada apareceu no log bruto e não apareceu na consulta filtrada.

A consulta sai pela Analytics GraphQL, com token de permissão de leitura de analytics da zona. Duas limitações que mudam o desenho do painel:

A retenção é curta, pouco mais de sete dias no plano gratuito. Pedir trinta dias devolve erro de quota. Se você quer série histórica, precisa guardar por conta própria.

O user-agent vem inteiro, então precisa normalizar para o nome do robô antes de agregar, senão o mesmo bot aparece em várias linhas por causa de versão.

Qual robô olhar primeiro?

Não é o mais óbvio. A ordem por utilidade real:

Robô O que significa
ChatGPT-User Alguém perguntou e o modelo abriu a sua página. Página aberta vira citação em 74% das vezes, contra 7% da apenas recuperada.
PerplexityBot Rastreio do Perplexity, historicamente o primeiro a achar site novo.
OAI-SearchBot Pode passar meses sem aparecer sem que isso signifique problema.
ClaudeBot, GPTBot Rastreio de treino, que na prática também alimenta busca.

Aquele terceiro item merece destaque porque engana muita gente. A OpenAI documenta que pode usar o resultado de um único rastreio para os dois bots quando ambos estão liberados. Ausência do OAI-SearchBot no log não é evidência de estar fora do índice.

Como saber se estou no índice, então?

Perguntando ao próprio modelo, com o acesso externo desligado. O parâmetro external_web_access: false proíbe o ChatGPT de abrir a URL na hora: se ainda assim ele resume a página, o conteúdo veio do índice interno.

É a única medição direta que existe hoje, e ela é binária. Rode contra um punhado de URLs representativas uma vez por mês, sempre incluindo uma página publicada ontem como controle negativo. Se a página nova responder que está indexada, o teste não está discriminando e o resultado não vale.

Que números colocar no painel?

Quatro, e nessa ordem de importância:

  1. URLs distintas lidas por IA. Cobertura vale mais que volume: 200 acessos numa página só é pior que 40 acessos em 40 páginas.
  2. Hits do ChatGPT-User, que é o sinal de leitura de verdade.
  3. Quantas URLs estão no índice, pelo teste direto, medido mensalmente.
  4. Sessões do canal AI Assistant no GA4, com a ressalva de que subconta.

O que não serve como métrica de exposição é filtrar por utm_source=chatgpt.com. Esse parâmetro marca clique de saída, e as páginas que o modelo abre sozinho no modo thinking, justamente as de 74% de citação, não carregam UTM nenhum. Filtrar por ele conta os cliques e perde as leituras.

Quanto isso custa para montar?

A leitura de crawler sai de graça se você já usa Cloudflare, porque a Analytics GraphQL está no plano gratuito. O teste de índice custa centavos por URL, porque é chamada de API.

O custo real é de engenharia, e é pequeno: uma consulta GraphQL, uma normalização de user-agent e um lugar para guardar o resultado antes da retenção expirar. Cabe em um bloco novo de um painel que já exista, do jeito que a gente trata monitoramento em geral: instrumentar primeiro, decidir depois.

Perguntas frequentes

Dá para fazer sem Cloudflare?

Dá, com log bruto do servidor e conferência reversa de IP contra as faixas publicadas pela OpenAI em openai.com/searchbot.json e nos arquivos equivalentes. Dá mais trabalho e chega no mesmo lugar.

Com que frequência devo olhar?

Semanal para leitura de crawler, mensal para índice. Movimento diário é ruído: o rastreio é irregular por natureza e responde a demanda de usuário, não a calendário.

Vocês montam esse painel?

Montamos, normalmente como bloco dentro do painel que o cliente já tem, não como ferramenta separada. Peça um diagnóstico e a gente diz o que já dá para medir com o que você tem hoje.

WA in X

Escrito por

Thales Gomes

Fundador da SyntaxLab. Constroi e mantem software em producao com Claude Code e Codex, de SaaS multi-tenant a agentes de IA integrados a operacao de empresa.