Primafonte

Como o Índice de Citabilidade é calculado

O Índice de Citabilidade é uma pontuação de 0 a 100 que mede se um site pode ser lido, entendido e citado por um modelo generativo.

O Índice de Citabilidade é calculado com 33 verificações agrupadas em quatro camadas ponderadas. Esta página documenta cada uma: o que verifica, como verifica, a partir de qual limiar é aprovada, quanto pesa e por que isso importa para um modelo.

Que versão é esta e o que isso significa?

Versão 0.15.0 · limiares provisórios, publicada em 2026-09-05. As mudanças de metodologia ficam registradas abaixo e as pontuações anteriores não são recalculadas: cada relatório informa com qual versão foi gerado.

Como os 100 pontos são repartidos?

O índice reparte 100 pontos entre quatro camadas, e não em partes iguais. O que impede de vez um modelo de ler você pesa mais do que o que apenas matiza como ele descreve você: acessibilidade e estrutura ficam com 30 pontos cada, descobribilidade com 25 e autoridade de entidade com 15. Ao lado de cada camada está quantas verificações ela agrupa.

Descobribilidade
25 · 7
Acessibilidade do conteúdo
30 · 7
Estrutura semântica
30 · 12
Autoridade de entidade
15 · 7

O que as 33 verificações olham?

Cada verificação é documentada do mesmo jeito: o que olha, como olha, a partir de que limiar é aprovada, quanto pesa e por que isso importa para um modelo generativo. Essa última parte é o que separa esta metodologia do SEO clássico, e uma verificação que não consiga explicá-la sobra e é retirada.

Descobribilidade

robots.txt acessível e legível

robots_exists

O que verifica
Verifica se /robots.txt existe, responde 200 e traz diretivas reconhecíveis.
Como verifica
Baixa-se https://seudominio/robots.txt e procuram-se linhas no formato campo: valor. Um 200 que devolve HTML não vale como robots.txt.
Limiar de aprovação
Aprovado com 200 e ao menos uma diretiva válida. Um 404, um erro de servidor ou HTML servido com 200 reprovam.
Peso
2 (Descobribilidade)
Por que isso importa para um modelo
O robots.txt é o primeiro arquivo que todo rastreador pede. Sem ele, cada agente decide sozinho o que fazer com o seu site, e quem publica o site não tem voz nessa decisão.

Uma posição declarada diante dos rastreadores que citam você

robots_ai_rules

O que verifica
Verifica se o robots.txt declara uma regra própria para cada rastreador de resposta: OAI-SearchBot, ChatGPT-User, Claude-SearchBot, Claude-User, PerplexityBot e Perplexity-User.
Como verifica
Procura-se um bloco User-agent para cada agente. Permitir e bloquear valem igual: o que se mede é que uma decisão tenha sido declarada, não qual. Regras para rastreadores de treinamento não são necessárias — são muitos e mudam com frequência.
Limiar de aprovação
Aprovado se os 6 estiverem declarados. Parcial de 1 em diante, sem ter todos. Reprovado em 0, e igualmente sem robots.txt, porque aí nenhuma regra está declarada. Sem conclusão apenas se o arquivo não puder ser baixado.
Peso
3 (Descobribilidade)
Por que isso importa para um modelo
Um Allow explícito comunica intenção; uma regra ausente comunica descuido. Vários operadores desses modelos tratam de forma diferente os sites que nomeiam os seus agentes, porque nomear mostra que alguém pensou no assunto em vez de herdar um arquivo.

Os rastreadores que citam você não estão bloqueados

robots_not_blocking

O que verifica
Verifica que nenhum rastreador de resposta — aqueles que buscam a página enquanto redigem uma resposta e a citam — esteja barrado na raiz.
Como verifica
O robots.txt é avaliado para OAI-SearchBot, ChatGPT-User, Claude-SearchBot, Claude-User, PerplexityBot e Perplexity-User, pela regra de sempre: o padrão mais longo ganha e, no empate, ganha o Allow. Os rastreadores de treinamento (GPTBot, ClaudeBot, CCBot, Google-Extended, Bytespider) NÃO contam aqui: bloqueá-los não impede ninguém de citar você.
Limiar de aprovação
Aprovado se nenhum rastreador de resposta estiver barrado em /, e igualmente sem robots.txt, porque aí ninguém está bloqueado. Bloquear todos vale parcial; bloquear só alguns reprova. Sem conclusão apenas se o arquivo não puder ser baixado.
Peso
3 (Descobribilidade)
Por que isso importa para um modelo
Um modelo não consegue citar o que não consegue buscar na hora de responder. É a distinção mais confundida de todas: fechar a porta para o treinamento e deixá-la aberta para a resposta é uma posição totalmente coerente, e só a segunda metade decide se você será citado.

Rastreadores de treinamento: a sua posição, um a um

training_crawlers

O que verifica
Mostra, para cada rastreador que coleta conteúdo para treinar modelos, se o seu robots.txt permite ou bloqueia. Puramente informativo: não soma nem subtrai pontos.
Como verifica
O robots.txt é avaliado para GPTBot, ClaudeBot, CCBot, Google-Extended, Bytespider, Applebot-Extended e meta-externalagent, e o estado de cada um é listado.
Limiar de aprovação
Sem limiar, e não há aprovação nem reprovação: os 7 rastreadores de treinamento são listados com o seu estado, e permitir ou bloquear não move o Índice de Citabilidade nem um ponto. Sem robots.txt, informa-se que nenhum está bloqueado.
Peso
0 (Descobribilidade)
Por que isso importa para um modelo
Bloquear o treinamento não impede um modelo de citar você: são coisas diferentes, feitas por agentes diferentes. É uma decisão sobre como o seu trabalho é usado, legítima nos dois sentidos, e por isso é relatada sem nota. Se manter o seu conteúdo fora do treinamento importa para você, confira aqui se as suas regras dizem o que você acha que dizem.

Sitemap declarado e acessível

sitemap_declared

O que verifica
Verifica se existe um sitemap XML válido e se o robots.txt o anuncia.
Como verifica
Lê-se a diretiva Sitemap do robots.txt e, na falta dela, tenta-se /sitemap.xml. O arquivo precisa responder 200 e conter um urlset ou um sitemapindex.
Limiar de aprovação
Aprovado se o sitemap for válido e estiver declarado no robots.txt. Parcial se estiver acessível mas não anunciado. Reprovado se faltar ou não for XML válido.
Peso
2 (Descobribilidade)
Por que isso importa para um modelo
O sitemap é a lista completa do que um site considera importante. Sem ele, um rastreador só encontra o que estiver ligado a partir da sua página de entrada, e as páginas mais profundas correm o risco de nunca serem descobertas.

Datas de modificação no sitemap

sitemap_fresh

O que verifica
Verifica que fração dos endereços do sitemap declara uma data lastmod recente.
Como verifica
Contam-se os elementos loc e os elementos lastmod interpretáveis, e daí calcula-se a fração com data dos últimos doze meses.
Limiar de aprovação
Aprovado acima de 50 % dos endereços com lastmod recente. Parcial se houver alguns. Reprovado sem nenhuma data.
Peso
1 (Descobribilidade)
Por que isso importa para um modelo
Um rastreador com orçamento limitado usa o lastmod para decidir o que reler. Um sitemap sem datas o obriga a tratar tudo igual — o que mudou ontem vai ser relido um dia, e não quando importa.

Arquivo llms.txt

llms_txt

O que verifica
Verifica se existe um /llms.txt em Markdown, com título e links.
Como verifica
Baixa-se https://seudominio/llms.txt e confere-se que não seja HTML, que tenha ao menos um título H1 em Markdown e ao menos um link.
Limiar de aprovação
Aprovado com H1 e links. Parcial com só um dos dois. Reprovado se faltar ou se devolver uma página HTML.
Peso
2 (Descobribilidade)
Por que isso importa para um modelo
O llms.txt é um índice em Markdown feito para um agente entender do que o site trata e por onde começar, sem ter que deduzir isso do menu de navegação. É barato de manter e ainda é raro.

Cabeçalhos Link de descoberta

link_headers

O que verifica
Verifica se a página inicial envia um cabeçalho HTTP Link com rel canonical ou alternate.
Como verifica
Examina-se o cabeçalho Link da resposta da página inicial em busca de rel="canonical" ou rel="alternate".
Limiar de aprovação
Aprovado se um dos dois estiver presente. Reprovado sem cabeçalho Link.
Peso
1 (Descobribilidade)
Por que isso importa para um modelo
Um rastreador que lê só os cabeçalhos, sem interpretar o HTML, já fica sabendo a versão canônica e as alternativas da página antes de baixar o corpo dela. Para um agente que percorre milhares de endereços, esse sinal resolve duplicatas sem custar uma requisição a mais.

Acessibilidade do conteúdo

Razão de renderização

render_ratio

O que verifica
Mede que fração do texto visível já está no HTML original, antes de o JavaScript rodar.
Como verifica
O texto é extraído do HTML bruto e da página depois de carregada num navegador de verdade até networkidle; os dois são limpos de espaços e depois divididos.
Limiar de aprovação
Aprovado a partir de uma razão de 0,80. Parcial entre 0,50 e 0,79. Reprovado abaixo de 0,50.
Peso
4 (Acessibilidade do conteúdo)
Por que isso importa para um modelo
A maioria dos rastreadores de IA não executa JavaScript. Eles veem a página como ela sai do servidor, e se o conteúdo só é inserido depois, encontram um documento quase vazio e não têm o que citar. É a verificação que mais sites reprovam.

Conteúdo principal sem JavaScript

main_content_in_html

O que verifica
Verifica se o H1 e um parágrafo de conteúdo estão presentes no HTML bruto.
Como verifica
Percorre-se o HTML baixado, sem executar nada, em busca de um H1 com texto e de pelo menos um parágrafo de doze palavras ou mais.
Limiar de aprovação
Aprovado com H1 e parágrafo. Parcial com H1 mas sem parágrafo. Reprovado sem H1.
Peso
3 (Acessibilidade do conteúdo)
Por que isso importa para um modelo
É pelo H1 e pelo primeiro parágrafo que um modelo decide do que a página trata. Se eles chegam vazios, o resto do conteúdo dá no mesmo: a página não aparece na resposta, porque ninguém sabe do que ela fala.

Negociação de conteúdo para Markdown

markdown_negotiation

O que verifica
Verifica se o servidor devolve Markdown quando o cliente pede.
Como verifica
A página inicial é buscada com o cabeçalho Accept: text/markdown e confere-se que a resposta seja 200 com content-type text/markdown.
Limiar de aprovação
Aprovado com 200 e content-type text/markdown. Caso contrário, reprovado.
Peso
1 (Acessibilidade do conteúdo)
Por que isso importa para um modelo
Um agente que recebe Markdown poupa a interpretação do HTML e não arrasta menus, rodapés nem avisos de cookies para dentro do trecho que cita. Uma vantagem barata e ainda rara.

Cadeia de redirecionamentos limpa

status_and_redirects

O que verifica
Verifica que o caminho até a página inicial não passe por vários saltos e que o destino seja https.
Como verifica
Os redirecionamentos são seguidos um a um anotando todos os endereços; os laços são detectados comparando o caminho já percorrido.
Limiar de aprovação
Aprovado com um salto ou nenhum e destino em https. Parcial com dois saltos. Reprovado acima de dois, com um laço, ou se o destino não for https.
Peso
2 (Acessibilidade do conteúdo)
Por que isso importa para um modelo
Cada salto é mais uma requisição e mais uma chance de perder cabeçalhos, cookies ou o próprio rastreador. Alguns clientes não seguem a cadeia até o fim, e para eles o site simplesmente não responde.

Tempo até o primeiro byte

ttfb

O que verifica
Mede quanto o servidor demora para começar a responder.
Como verifica
Medido do envio da requisição até a chegada dos primeiros cabeçalhos de resposta da página inicial.
Limiar de aprovação
Aprovado abaixo de 800 ms. Parcial entre 800 e 1600 ms. Reprovado acima de 1600 ms.
Peso
1 (Acessibilidade do conteúdo)
Por que isso importa para um modelo
O tempo de resposta ajuda a determinar quantas páginas um agente busca por visita. Um servidor lento não impede que uma página seja citada, mas reduz quantas páginas chegam a ser lidas.

Mesmo conteúdo para bots e para pessoas

bot_parity

O que verifica
Compara o texto servido a um navegador com o servido a um rastreador.
Como verifica
A página inicial é buscada duas vezes, uma com User-agent de navegador e outra com o do PrimafonteBot, e compara-se o comprimento do texto visível das duas respostas.
Limiar de aprovação
Aprovado abaixo de 10 % de diferença. Parcial abaixo de 30 %. Acima disso, reprovado.
Peso
3 (Acessibilidade do conteúdo)
Por que isso importa para um modelo
Servir a um bot uma versão diferente da página é cloaking, saiba ou não quem configurou o cache. O modelo registra o que recebe, não o que uma pessoa vê, e da diferença nascem citações erradas ou nenhuma citação.

O rastreador não é bloqueado

waf_block

O que verifica
Verifica que o site não responda a um User-agent de bot com um bloqueio ou um captcha.
Como verifica
A página inicial é buscada com o User-agent do PrimafonteBot; o código de status e o corpo da resposta são examinados em busca de sinais de verificação de navegador.
Limiar de aprovação
Aprovado com 200 e sem captcha. Parcial com outro código, não bloqueante. Reprovado com 401, 403, 429 ou um captcha servido com 200.
Peso
3 (Acessibilidade do conteúdo)
Por que isso importa para um modelo
Um firewall que bloqueia bots por princípio bloqueia também os rastreadores de IA. Um 200 que serve um captcha bloqueia com a mesma eficácia de um 403 — e ainda engana quem só olha o código de status.

Estrutura semântica

Dados estruturados presentes e válidos

jsonld_present

O que verifica
Verifica se há dados estruturados em JSON-LD e se eles funcionam: se o JSON é interpretável e se cada tipo traz os campos que o schema.org marca como obrigatórios.
Como verifica
Contam-se os blocos declarados e os interpretados com sucesso. Depois conferem-se os campos obrigatórios em cada tipo interpretado.
Limiar de aprovação
Aprovado com dados estruturados válidos e completos. Parcial com um ou dois campos obrigatórios faltando. Reprovado sem dados estruturados, com um bloco que não é interpretável, ou com mais de dois campos faltando.
Peso
4 (Estrutura semântica)
Por que isso importa para um modelo
Os dados estruturados são como um modelo confirma quem você é sem ter que deduzir isso do texto corrido. Não tê-los deixa essa dedução ao acaso, e tê-los quebrados é pior do que não ter: para o modelo o bloco não existe, enquanto quem escreveu acha que existe.

Tipo de entidade e de negócio declarados

jsonld_entity_types

O que verifica
Verifica se o site declara quem o publica e o que ele oferece.
Como verifica
Entre os tipos declarados procura-se um tipo de entidade como Organization ou Person, e um que descreva a oferta como SoftwareApplication, Product, Service ou Article.
Limiar de aprovação
Aprovado com os dois. Parcial com apenas um. Reprovado sem nenhum dos dois.
Peso
2 (Estrutura semântica)
Por que isso importa para um modelo
Um modelo precisa resolver duas perguntas separadas: quem são essas pessoas e o que elas vendem. Declarar só uma deixa metade da resposta à interpretação, e é daí que saem as descrições erradas.

Hierarquia de títulos

heading_hierarchy

O que verifica
Verifica se há um único H1 e se nenhum nível é pulado.
Como verifica
Todos os títulos são extraídos na ordem do documento, os H1 são contados e os pulos detectados, como ir de H2 para H4 sem H3.
Limiar de aprovação
Aprovado com exatamente um H1 e sem pulos. Parcial com dois H1 ou até dois pulos. Reprovado sem H1, com mais de dois, ou com vários pulos.
Peso
2 (Estrutura semântica)
Por que isso importa para um modelo
Os títulos são o esqueleto do documento. Um nível pulado deixa um bloco pendurado em nada, e é justamente nessa estrutura que um modelo se apoia para fatiar a página em trechos citáveis.

Respostas diretas depois de cada título

direct_answers

O que verifica
Verifica se o primeiro parágrafo depois de cada H2 responde àquele título. É medido numa página interna de conteúdo — um artigo, um guia, a documentação — e não na página inicial.
Como verifica
Escolhe-se uma página interna a partir do sitemap ou dos links da página inicial, sempre a mesma para um dado site. Para cada H2 pega-se o primeiro parágrafo seguinte e ele é pontuado: a faixa de 40 a 80 palavras vale um ponto, a de 25 a 120 vale meio, e começar com um conectivo que depende do parágrafo anterior vale zero. Se o site não tiver página interna legível, a página inicial é medida no lugar e o relatório avisa.
Limiar de aprovação
Aprovado a partir de uma média de 60 %. Parcial a partir de 30 %. Abaixo disso, reprovado.
Peso
3 (Estrutura semântica)
Por que isso importa para um modelo
Um modelo não cita páginas, cita trechos. Um título seguido de um parágrafo que o responde produz um fragmento que se sustenta sozinho; seguido de uma transição ou de uma imagem, não produz nada citável. A página inicial de um site comercial é uma vitrine feita de linhas de cinco a dez palavras: ela mede o quanto vende bem, não o quanto dá para citar.

Títulos em forma de pergunta

question_headings

O que verifica
Verifica que fração dos títulos H2 e H3 está escrita como pergunta.
Como verifica
Medido na mesma página interna das respostas diretas. Um título conta como pergunta se termina com ponto de interrogação, se começa com o ponto de interrogação invertido do espanhol, ou se abre com uma palavra interrogativa — como, o que, por que, quando, onde, qual ou quem, além dos equivalentes acentuados em espanhol.
Limiar de aprovação
Aprovado a partir de 30 % de títulos em forma de pergunta. Parcial com pelo menos dois. Abaixo disso, reprovado.
Peso
2 (Estrutura semântica)
Por que isso importa para um modelo
Um modelo busca trechos procurando aquele que responde à consulta que recebeu, e essa consulta costuma ter a forma de uma pergunta. Um título escrito como a pergunta que alguém realmente digita, seguido de uma resposta que se sustenta sozinha, produz exatamente o par que esses sistemas preferem: o título funciona como índice e o parágrafo como conteúdo. Um título como «Nossos serviços» não se parece com consulta nenhuma.

Parágrafos que se sustentam fora do contexto

chunk_independence

O que verifica
Verifica que fração dos parágrafos faz sentido sem ter lido o anterior.
Como verifica
Pegam-se os parágrafos de vinte palavras ou mais e examina-se a primeira frase em busca de um pronome ou de um demonstrativo sem antecedente, como ele, isso, aqui ou o acima.
Limiar de aprovação
Aprovado a partir de 50 % de parágrafos independentes. Parcial a partir de 25 %. Abaixo disso, reprovado.
Peso
3 (Estrutura semântica)
Por que isso importa para um modelo
Um trecho só é citável se fizer sentido sozinho. Um parágrafo que abre com «isso se resolve» obriga o modelo a arrastar o parágrafo anterior junto, e assim que o fragmento é recortado ele perde o sentido e deixa de servir como fonte.

Tamanho do título e da meta description

title_meta

O que verifica
Verifica se o título e a meta description cabem no espaço que recebem.
Como verifica
Mede-se o tamanho em caracteres do título da página inicial e do atributo content da meta description.
Limiar de aprovação
Aprovado com título de 30 a 60 caracteres e descrição de 110 a 160. Parcial se só um estiver na faixa. Reprovado se nenhum estiver, ou se faltarem.
Peso
2 (Estrutura semântica)
Por que isso importa para um modelo
O título e a meta description são o resumo que um site escreve sobre si mesmo, e tanto buscadores quanto modelos reaproveitam eles palavra por palavra ao apresentar o site. Um título cortado ou uma descrição ausente entregam esse resumo a quem for ler.

Perguntas frequentes estruturadas

faq_markup

O que verifica
Verifica se existe um bloco de perguntas e respostas marcado como FAQPage.
Como verifica
Procura-se um bloco JSON-LD do tipo FAQPage. Também são detectados títulos em forma de pergunta e menções a perguntas frequentes, para separar um site que tem o conteúdo mas não marcou de um que não tem nada.
Limiar de aprovação
Aprovado com um bloco FAQPage. Parcial quando há perguntas visíveis sem marcação. Reprovado quando não há nem uma coisa nem outra.
Peso
2 (Estrutura semântica)
Por que isso importa para um modelo
O bloco de FAQ é a parte mais citada de um site, porque cada pergunta já é um fragmento autônomo com a resposta ao lado. Não ter não é neutro: é abrir mão do formato que os modelos citam com mais facilidade. Isso é medido do ponto de vista dos modelos e dos agentes, não do ranking clássico.

Texto de link descritivo

internal_links

O que verifica
Verifica que fração dos links internos usa um texto que não diz nada sobre o destino.
Como verifica
Recolhem-se os links internos da página inicial e compara-se o texto deles com uma lista de âncoras genéricas como leia mais, aqui ou clique aqui.
Limiar de aprovação
Aprovado abaixo de 10 % de âncoras genéricas. Parcial abaixo de 25 %. Acima disso, reprovado. Com menos de cinco links internos a verificação não pontua.
Peso
2 (Estrutura semântica)
Por que isso importa para um modelo
O texto do link é um dos sinais que um modelo usa para entender do que a página de destino trata antes de visitá-la. Um «leia mais» não contribui em nada e desperdiça o link como sinal.

Links para fontes externas

external_sources

O que verifica
Verifica para quantos domínios de fora o conteúdo aponta.
Como verifica
Contam-se os domínios distintos ligados a partir da página interna de conteúdo, excluindo links do rodapé e da navegação, links para o próprio site ou seus subdomínios, e perfis de redes sociais, que são identidade e não respaldo.
Limiar de aprovação
Aprovado a partir de três domínios distintos. Parcial com um ou dois. Reprovado sem nenhum.
Peso
3 (Estrutura semântica)
Por que isso importa para um modelo
É uma das poucas coisas com efeito medido: o estudo original sobre otimização para motores generativos constatou que citar fontes, acrescentar citações e fornecer dados pode aumentar a visibilidade nas respostas em até 40 %. Um conteúdo que aponta para o que afirma dá ao modelo com o que conferir, e um modelo cita antes o que pode verificar do que o que só pode acreditar.

Dados no conteúdo

data_points

O que verifica
Verifica que fração dos parágrafos traz um número concreto.
Como verifica
Os parágrafos de vinte palavras ou mais da página interna de conteúdo são examinados em busca de uma porcentagem, um valor, uma grandeza com unidade — inclusive tempo — ou um número grande com separador de milhar. Números soltos de um ou dois dígitos não contam: num site costumam ser tamanhos, passos ou numeração de lista.
Limiar de aprovação
Aprovado quando 25 % ou mais dos parágrafos trazem um número. Parcial com pelo menos um. Reprovado sem nenhum.
Peso
2 (Estrutura semântica)
Por que isso importa para um modelo
É uma das poucas coisas com efeito medido: o estudo original sobre otimização para motores generativos constatou que fornecer dados, junto com citar fontes e acrescentar citações, pode aumentar a visibilidade nas respostas em até 40 %. Uma afirmação com um número dentro é mais fácil de recuperar e de atribuir do que uma sem, porque o dado ancora o trecho em algo conferível.

Listas e tabelas

scannable_formats

O que verifica
Verifica se o conteúdo usa listas e tabelas em vez de só texto corrido.
Como verifica
Contam-se as listas de três itens ou mais e as tabelas da página interna de conteúdo. Uma tabela conta como duas listas. As do rodapé e da navegação ficam de fora, embora essa exclusão dependa de o site usar tags semânticas: um menu montado com divs não dá para distinguir de uma lista de conteúdo.
Limiar de aprovação
Aprovado em três pontos, contando cada lista como um e cada tabela como dois. Parcial com pelo menos um. Reprovado sem nenhum.
Peso
2 (Estrutura semântica)
Por que isso importa para um modelo
Uma lista e uma tabela já vêm fatiadas de fábrica: cada item se sustenta sozinho e um modelo consegue pegar um sem arrastar o resto. Um parágrafo com as mesmas seis coisas separadas por vírgula diz o mesmo e não dá para extrair em partes. A tabela ainda acrescenta os próprios cabeçalhos, que é contexto viajando junto com a linha.

Autoridade de entidade

Consistência do nome da marca

name_consistency

O que verifica
Verifica se a marca está escrita da mesma forma no JSON-LD, no Open Graph e no título.
Como verifica
O nome declarado no JSON-LD serve de referência e é comparado com og:site_name e com os segmentos do título, ignorando maiúsculas, acentos e pontuação.
Limiar de aprovação
Aprovado se todas as fontes disponíveis coincidirem. Parcial se uma divergir. Reprovado se todas divergirem. Com uma única fonte a verificação não pontua.
Peso
3 (Autoridade de entidade)
Por que isso importa para um modelo
Um modelo precisa resolver a marca numa entidade só. Três variantes do nome na mesma página produzem três candidatos, e a autoridade que deveria se acumular numa se reparte entre as três.

Consistência da descrição

description_consistency

O que verifica
Verifica se a meta description, a do Open Graph e a do JSON-LD dizem a mesma coisa.
Como verifica
São comparadas duas a duas pelo coeficiente de Dice sobre palavras, ignorando maiúsculas e acentos; o pior par decide.
Limiar de aprovação
Aprovado a partir de uma semelhança de 0,80. Parcial a partir de 0,50. Abaixo disso, reprovado. Com uma única descrição a verificação não pontua.
Peso
3 (Autoridade de entidade)
Por que isso importa para um modelo
A descrição é a frase que um modelo vai usar para apresentar o site quando citar ele. Duas versões diferentes forçam uma escolha, e a escolhida nem sempre é a que quem publica queria.

Página de empresa ou autor identificável

about_page

O que verifica
Verifica se existe uma página explicando quem está por trás do site.
Como verifica
Procuram-se links cujo destino ou texto apontem para uma página de sobre, quem somos, empresa ou time; na falta disso, uma entidade declarada em JSON-LD com url ou @id.
Limiar de aprovação
Aprovado com um link para a página. Parcial só com a entidade declarada em JSON-LD. Reprovado sem nenhum dos dois.
Peso
2 (Autoridade de entidade)
Por que isso importa para um modelo
A página «quem somos» é onde um modelo confirma que há uma entidade real por trás do site. A ausência dela não impede a citação, mas reduz a confiança num conteúdo que não dá para atribuir a ninguém.

Contato legível

contact_verifiable

O que verifica
Verifica se há um e-mail ou um telefone que uma máquina consiga ler.
Como verifica
Procura-se um e-mail ou telefone no texto visível e nos links mailto e tel; na falta disso, nos campos email e telephone do JSON-LD.
Limiar de aprovação
Aprovado com contato no texto visível ou num link. Parcial se só estiver declarado no JSON-LD, ou se o telefone aparecer sem link. Reprovado sem nenhum dos dois.
Peso
2 (Autoridade de entidade)
Por que isso importa para um modelo
Um modelo não preenche formulários. Um contato que só existe atrás de um formulário, dentro de uma imagem ou ofuscado em JavaScript não dá para citar nem verificar, e é um dos sinais que distinguem um negócio de verdade.

Perfis externos declarados com sameAs

sameas_links

O que verifica
Verifica quantos perfis externos o site declara pela propriedade sameAs.
Como verifica
Recolhem-se todos os valores sameAs dos blocos JSON-LD. Se não houver nenhum, confere-se o HTML em busca de links para perfis conhecidos.
Limiar de aprovação
Aprovado a partir de duas entradas sameAs. Parcial com uma, ou com dois perfis ligados mas não declarados. Reprovado sem nenhuma.
Peso
3 (Autoridade de entidade)
Por que isso importa para um modelo
O sameAs é o que permite a um modelo ligar o site a todos os outros rastros da mesma entidade: LinkedIn, GitHub, uma junta comercial. Sem esse elo, cada rastro é resolvido como uma entidade separada e nenhum acumula sinal suficiente para ser citado.

Data de publicação e de revisão

content_freshness

O que verifica
Verifica se o conteúdo informa quando foi escrito ou revisado pela última vez.
Como verifica
Procuram-se datePublished e dateModified nos dados estruturados da página interna de conteúdo, pegando a mais recente. Só se usam datas declaradas: reconhecer as visíveis em vários idiomas e vinte formatos é frágil, e uma verificação que erra tira mais do que acrescenta.
Limiar de aprovação
Aprovado com data de menos de doze meses. Parcial até trinta e seis. Reprovado se for mais antiga, ou se não houver nenhuma.
Peso
2 (Autoridade de entidade)
Por que isso importa para um modelo
Um modelo que responde sobre algo mutável prefere a fonte que consegue datar. Sem data declarada não há como saber se o conteúdo continua valendo, e na dúvida cita-se antes o que dá para situar no tempo. O limiar é folgado de propósito: há conteúdo que não vence, e penalizar por não mexer nele premiaria o retoque cosmético.

Autoria declarada

author_declared

O que verifica
Verifica se o conteúdo informa quem escreveu.
Como verifica
Procura-se o campo author nos dados estruturados da página interna de conteúdo, e ele precisa trazer um nome. Um author vazio, ou sem nome, conta como marcação decorativa.
Limiar de aprovação
Aprovado com autor nomeado. Parcial com o campo presente mas sem nome. Reprovado sem author.
Peso
1 (Autoridade de entidade)
Por que isso importa para um modelo
Sem assinatura, um modelo não tem a quem atribuir o que cita, e atribuir faz parte de citar. A evidência de que isso influencia as citações vem de casos observados e não de medição, então esta verificação pesa pouco: é plausível e barata de corrigir, mas não está demonstrada como estão os dados e as fontes.

O que este índice não mede?

O Índice de Citabilidade não mede a qualidade do seu conteúdo, a sua reputação, os seus links de entrada nem se um modelo menciona você hoje. Ele mede se existe a possibilidade técnica e estrutural de você ser citado.

Que limitações ele tem?

Publicar os limites de uma medição parece que tira e faz o contrário: é o que separa uma metodologia de um folheto. Estes cinco são os que conhecemos, e estão escritos para que qualquer pessoa possa decidir quanta confiança dar a um número específico no seu caso.

  • Os motores generativos não publicam os pesos internos com que selecionam as suas fontes. O Índice de Citabilidade mede sinais observáveis e fundamentados, não uma fórmula reconstruída a partir de algum modelo específico.
  • O resultado varia de motor para motor. Um site pode ser perfeitamente legível para um rastreador e ficar fora das respostas de outro, por critérios de seleção que não são técnicos.
  • Vários dos padrões verificados ainda estão em definição. O caso mais claro é o llms.txt: existe uma convenção de fato, não uma especificação fechada, e o seu peso pode mudar.
  • As verificações são feitas sobre a página inicial e os recursos que ela declara, além de uma página interna de conteúdo. Um site pode ter seções internas com comportamento diferente do da sua página inicial.
  • A razão de renderização é medida com um navegador que de fato executa JavaScript, enquanto cada rastreador de IA decide por conta própria se executa e até onde. A razão indica risco, não o comportamento exato de um motor específico.
  • As verificações de conteúdo não tratam todos os idiomas igual. As palavras são contadas direito em qualquer escrita, inclusive nas que não as separam com espaços, mas as listas de conectivos e de dêiticos usadas para identificar um parágrafo que não se sustenta sozinho existem só em espanhol e inglês. Nos demais idiomas essas marcas não são reconhecidas e o parágrafo passa. O viés vai sempre na mesma direção: na dúvida, não se penaliza.

Em que a metodologia se apoia?

As verificações não saem de uma opinião sobre como a web deveria ser. Cada uma implementa uma norma publicada ou um achado medido, e estas são as quatro referências que o motor aplica ao pé da letra, não leituras recomendadas.

  • GEO: Generative Engine Optimization

    O estudo que mediu o efeito de citar fontes, fornecer dados e acrescentar citações: até 40 % mais visibilidade nas respostas. É dele que vem o peso das duas verificações de conteúdo.

  • schema.org

    O vocabulário contra o qual os dados estruturados são validados: que tipos existem e que campos cada um marca como obrigatórios. As duas verificações de JSON-LD o aplicam.

  • RFC 9309

    A norma que define como um robots.txt é lido, incluindo a regra de que o padrão mais longo ganha e de que no empate ganha o Allow. As três verificações de rastreadores a aplicam.

  • llms.txt

    A proposta de arquivo índice em Markdown para agentes. É convenção de fato e não especificação fechada, e por isso o seu peso pode mudar.

O que mudou, e quando?

Cada versão diz o que se moveu e por quê, quase sempre com o número que motivou aquilo na frente. As pontuações antigas nunca são recalculadas: um relatório descreve como aquele site estava no dia em que foi medido, com os critérios daquele dia, e por isso cada um leva a sua versão impressa.

  1. 0.15.0 · 2026-09-05

    O motor confundia duas coisas que não se parecem: não ter conseguido ler um arquivo e tê-lo lido e constatado que não existe. Um 404 é um fato do qual se deduz algo —se não há robots.txt, ninguém está bloqueado— e aí a verificação deve decidir. Um 401, um 403 ou um 429 dizem o contrário: o arquivo existe e não nos deixam vê-lo. Esse caso ficava junto do 404 por causa de uma comparação com duzentos que engolia a diferença, e produzia as duas mentiras ao mesmo tempo. A um site protegido por um firewall de aplicação dizia-se que não tem um robots.txt legível, que seu sitemap não está declarado, que não publica um llms.txt e que não responde à negociação Markdown: quatro afirmações sobre arquivos que existem e funcionam. E ao mesmo tempo aprovava-se que seu robots.txt não bloqueia nenhum rastreador de resposta, uma aprovação sobre um arquivo que nunca foi lido. Na amostra de calibração isso acontece com cinquenta de duzentos e noventa e nove sites, um em cada seis. A partir desta versão esses três códigos deixam sem conclusão as cinco verificações afetadas, e quem informa o bloqueio continua sendo a verificação que existe para isso. Corrige-se também o título da cadeia de redirecionamentos, que falava sempre de saltos: um site bloqueado lia «chegar à página inicial exige 0 redirecionamentos», o ótimo apresentado como defeito. Os ramos que não são sobre saltos —o status da resposta e um destino que termina em http— passam a ter texto próprio. As pontuações anteriores não são recalculadas.

  2. 0.14.0 · 2026-08-19

    Duas verificações deixam de penalizar o chinês, o japonês e o coreano por escreverem mais denso. A primeira: os títulos escritos como pergunta não eram reconhecidos, porque essas línguas fecham com «?», o sinal de largura total, e só se procurava o do teclado latino. Na nossa própria página de metodologia em chinês davam zero de quarenta e um, com todos os títulos de seção escritos como pergunta. A segunda: as faixas de comprimento do título e da descrição estão calibradas no alfabeto latino, trinta a sessenta caracteres e cento e dez a cento e sessenta, e existem porque os buscadores cortam pela largura. Um caractere chinês ocupa o dobro de uma letra latina e diz bastante mais: o título dessa mesma página tem vinte e dois caracteres e transmite o mesmo que cinquenta em espanhol, então reprovava por dizer aquilo em menos espaço. Nessas escritas as faixas passam à metade. Fora delas não muda absolutamente nada, e a calibração sobre a amostra de 299 domínios europeus e americanos foi executada justamente para conferir isso. As pontuações anteriores não são recalculadas.

  3. 0.13.0 · 2026-08-18

    Duas correções na escolha da página interna, da qual dependem cinco verificações ao mesmo tempo. A primeira: «www.exemplo.com» e «exemplo.com» são o mesmo site, e o motor os tratava como origens distintas. Em ruanyifeng.com, um blog técnico chinês, os dezoito links para artigos do próprio índice apontam para «http://www.ruanyifeng.com/blog/...»; ao analisar o domínio sem «www», os dezoito eram descartados, não sobrava nenhum artigo entre os candidatos e as verificações de conteúdo acabavam medindo uma lista de manchetes. A segunda: se a página escolhida for um índice de seção, o motor agora desce uma única vez até o primeiro artigo dela. Um salto e não vários, porque esse download é sequencial e sai do mesmo orçamento de tempo do resto da análise; se o salto não trouxer nada melhor, o índice é mantido, porque medir algo pior é melhor do que não medir nada. A escolha continua determinística: o mesmo site dá sempre a mesma página, senão a pontuação deixaria de ser reproduzível. Segue sem solução o caso em que a página escolhida está num idioma diferente do resto do site. As pontuações anteriores não são recalculadas.

  4. 0.12.0 · 2026-08-18

    A verificação dos parágrafos que se sustentam fora do contexto reprovava quase todo site em espanhol. Ela detectava a dependência do parágrafo anterior procurando pronomes e dêiticos, mas a lista incluía «la», «los» e «las», que são artigos e não dêiticos, e os procurava em qualquer posição da primeira frase em vez do começo dela. Com isso, «Los umbrales se calibraron midiendo una muestra propia» saía marcado como dependente. Um dêitico no meio da frase costuma ter o antecedente dentro dessa mesma frase, então está preso; o que deixa um parágrafo no ar é o que abre. Agora só conta a abertura, e só as formas inequivocamente pronominais: «esto», «eso», «ello», «it», «lo anterior» e as anáforas explícitas. «Este» e «this» ficam de fora de propósito, porque valem tanto como pronome quanto como determinante e não dá para separar sem análise morfológica: na dúvida, não se penaliza, que é a regra declarada desta camada. A correção publicada já descrevia esse comportamento; o código não. As pontuações anteriores não são recalculadas, então o número desta verificação no estudo de calibração segue o critério antigo.

  5. 0.11.0 · 2026-08-18

    O motor agora conta palavras direito em chinês, japonês e coreano. Essas línguas não separam as palavras com espaços, e o motor contava quebrando nos espaços: em cinco artigos reais de um blog técnico chinês, de 1.579 parágrafos passavam o filtro de vinte palavras exatamente 2. Contando direito, 560. Isso deixava qualquer site chinês, japonês ou coreano sem nada para medir, nem nos parágrafos que se sustentam fora do contexto nem nos dados no conteúdo, e reprovava as respostas diretas mesmo quando elas respondiam ao título perfeitamente. O cabeçalho do próprio módulo dizia que o viés de idioma vai sempre na mesma direção, sem penalizar na dúvida; ali ia exatamente na contrária. A contagem agora usa o segmentador de palavras do sistema, que segmenta essas línguas de verdade, em vez de uma constante de conversão inventada. Fora dessas escritas a contagem é idêntica à anterior, caractere por caractere: a pontuação de um site em espanhol, inglês, alemão, francês, italiano ou português não muda um ponto, e um teste confere isso contra todo o texto publicado do site. As pontuações anteriores não são recalculadas.

  6. 0.10.0 · 2026-08-06

    Cinco verificações novas e uma mudança na página que é medida. Duas das cinco vêm da única coisa medida com rigor nesta área: o estudo original sobre otimização para motores generativos constatou que citar fontes, fornecer dados e acrescentar citações pode aumentar a visibilidade nas respostas em até 40 %. Daí os links para fontes externas, que contam para quantos domínios de fora o conteúdo aponta, e os dados no conteúdo, que olham que fração dos parágrafos traz um número concreto. As outras três vêm de recomendações publicadas: listas e tabelas, que são fragmentos que já chegam fatiados; a data de publicação e revisão declarada nos dados estruturados; e a autoria, que pesa pouco de propósito porque a evidência dela vem de casos observados e não de medição. A escolha da página interna também muda: um artigo passa a ter prioridade sobre uma página institucional. Isso saiu de descobrir que na Xataka estávamos medindo a página do time, feita de biografias, onde as verificações de conteúdo davam zero em sessenta e nove parágrafos. A Xataka não escrevia mal; nós é que olhávamos a página errada. As verificações que pontuam vão de 28 para 33. As pontuações anteriores não são recalculadas.

  7. 0.9.0 · 2026-08-06

    A verificação de consistência da descrição deixa de comparar a descrição do editor com a da página. Uma Organization descreve o editor, por definição do schema.org, e numa empresa com várias linhas de negócio ela não tem por que se parecer com a página: comparar as duas forçava uma descrição falsa numa delas — ou a empresa descrita como se fosse o produto, ou o contrário. Agora a comparação é com a descrição da entidade que diz o que o site oferece — SoftwareApplication, Product, Service, Article e afins — e só recorre à do editor quando não existe nenhuma: o caso de um site institucional sem produto, onde a descrição da empresa é mesmo a da página. A correção não é anistia: uma descrição de produto que contradiz a página continua reprovando, assim como duas meta descriptions que divergem entre si, que era o caso que a verificação já pegava bem. As pontuações anteriores não são recalculadas.

  8. 0.8.0 · 2026-08-05

    Uma verificação nova: se os títulos estão escritos como pergunta. Já se conferia que cada título fosse seguido de uma resposta autônoma de 40 a 80 palavras, mas não que o título em si parecesse algo que uma pessoa digitaria. A unidade que esses sistemas de recuperação preferem é o par completo — uma pergunta reconhecível em cima, uma resposta que se sustenta sozinha embaixo — e só metade desse par estava sendo medida. É medido na mesma página interna das respostas diretas, porque medir em páginas diferentes descreveria dois lugares e par nenhum. Um título conta como pergunta se traz ponto de interrogação, e também se abre com um interrogativo acentuado, porque em espanhol é justamente o acento que separa o interrogativo do relativo. Os limiares são um ponto de partida e serão revistos contra a amostra de calibração. As verificações que pontuam vão de 27 para 28. As pontuações anteriores não são recalculadas.

  9. 0.7.0 · 2026-08-04

    Títulos dentro do rodapé, da navegação e das barras laterais deixam de contar como conteúdo. Medir uma amostra de sites reais mostrou que 43 % dos títulos ficavam dentro de <footer> ou <nav> — 81 % na HubSpot, 53 % na Mailchimp — e todos eles eram contados. Um <h2>Serviços</h2> num rodapé não tem parágrafo embaixo porque não deve ter, então a presença dele reprovava na verificação de respostas diretas qualquer site com rodapé normal: só 5 % passavam, e a causa não era como as pessoas escrevem e sim como nós contávamos. Afeta as respostas diretas, a hierarquia de títulos e a detecção de FAQ, e as três ganham precisão. O H1 do cabeçalho continua contando: muitos sites colocam ele ali. As pontuações anteriores não são recalculadas.

  10. 0.6.0 · 2026-08-04

    Primeira versão calibrada contra uma amostra grande: 299 sites da Espanha, Reino Unido, Estados Unidos e resto da Europa, entre marcas, serviços e empresas de médio porte. Desses dados saem três mudanças. As duas verificações de dados estruturados viram uma só: a de validade era aprovada por 95 % dos que chegavam a ela e não se aplicava aos outros 26 %, porque JSON-LD quase nunca é escrito à mão e o que um plugin gera raramente está quebrado; agora uma única verificação separa não ter, ter quebrado e ter certo, com o mesmo peso. Os parágrafos que se sustentam sozinhos passam a ser medidos numa página interna, como as respostas diretas já eram: a página inicial não tinha três parágrafos de vinte palavras em 78 dos 215 sites medidos por inteiro, e sem uma página legível com conteúdo a verificação agora reprova em vez de se calar. E o selo para download cai de 80 para 70 pontos: em 80 ele era alcançado por 6 de 215 sites, e um selo que quase ninguém consegue exibir não circula. As verificações que pontuam vão de 28 para 27. As pontuações anteriores não são recalculadas.

  11. 0.5.0 · 2026-08-04

    Duas verificações deixam de se declarar incapazes de decidir onde na verdade conseguem. Não ter um bloco de perguntas e respostas marcado como FAQPage agora REPROVA em vez de não se aplicar: é o que os modelos generativos mais citam, então um site sem isso está pior preparado para ser citado do que um site com isso, e redistribuir o peso dele nas outras afirmava o contrário. Ter as perguntas na tela sem marcar vale parcial, porque isso se resolve em dez minutos e escrever do zero não. E um site sem sitemap acessível agora reprova na verificação de atualidade em vez de voltar sem conclusão — inclusive o caso de um servidor que responde /sitemap.xml com 200 e a página inicial em HTML, que é o que os frameworks de página única fazem. «Sem conclusão» fica só onde é de fato desconhecido: uma falha de rede, ou um servidor que existe e não deixa a gente olhar. Numa amostra de 24 sites, essas duas não pontuavam em 67 % e 42 % dos casos. O sufixo «rascunho» sai do identificador de versão e vai para o texto, traduzido por idioma. As pontuações anteriores não são recalculadas.

  12. 0.4.0 · 2026-08-04

    As respostas diretas passam a ser medidas numa página interna de conteúdo, não na página inicial. Uma calibração em 24 sites reais mostrou que os 24 reprovavam, Stripe e Cloudflare inclusive: a página inicial de um site comercial é uma vitrine, e os parágrafos depois dos títulos dela têm de cinco a dezessete palavras, porque são escritos para serem captados de relance e não para serem citados. Uma verificação que todo mundo reprova não distingue ninguém, por mais verdadeira que seja. Agora escolhe-se uma página interna a partir do sitemap ou dos links da página inicial — sempre a mesma para um dado site, para a pontuação seguir reproduzível — e mede-se lá; se o site não tiver página interna legível, usa-se a página inicial, e o relatório informa qual foi medida. As pontuações anteriores não são recalculadas.

  13. 0.3.0 · 2026-08-03

    As verificações que dependem do robots.txt deixam de se declarar incapazes de decidir quando o arquivo não existe. Um site não ter robots.txt não é desconhecimento, é um fato com consequências: se não há arquivo, ninguém está bloqueado, então a verificação de bloqueio agora APROVA e a de regras declaradas REPROVA, porque não há nenhuma. Antes as duas ficavam sem conclusão junto com a verificação informativa de treinamento, e essas três sozinhas empurravam qualquer site sem robots.txt para o limiar do relatório parcial, deixando ele fora das estatísticas. «Sem conclusão» fica só quando o arquivo não pode ser baixado, onde de fato não sabemos. As pontuações anteriores não são recalculadas.

  14. 0.2.0 · 2026-08-03

    Os rastreadores de IA passam a ser divididos em duas famílias. Bloquear os de treinamento (GPTBot, ClaudeBot, CCBot, Google-Extended, Bytespider) deixa de custar pontos: é uma decisão legítima sobre como o seu trabalho é usado e não impede um modelo de citar você. Só o bloqueio dos rastreadores de resposta (OAI-SearchBot, ChatGPT-User, Claude-SearchBot, Claude-User, PerplexityBot, Perplexity-User) é penalizado, já que são eles que buscam a página enquanto respondem. Antes eram contados juntos, o que reprovava como erro crítico a política mais defensável que existe hoje. As pontuações anteriores não são recalculadas.

  15. 0.1.0 · 2026-08-02

    Primeira versão pública da metodologia. Os limiares são provisórios e serão congelados na versão 1.0, depois da calibração contra uma amostra de 200 sites. Até lá, as pontuações podem variar entre uma análise e outra.

Metodologia do Índice de Citabilidade — Primafonte