Referência de regras
Cada regra que a Loomaly verifica, com gravidade, dimensão da pontuação, ID, o que significa e como corrigir.
Todo problema que a Loomaly informa vem de uma das 81 regras desta página, e cada regra é emitida por exatamente uma parte da varredura. As explicações e os prompts de correção vêm de templates fixos, então o mesmo problema recebe o mesmo ID de regra e o mesmo texto em toda varredura. É assim que a Loomaly sabe se um problema é novo, ainda está presente ou já foi corrigido. Para trabalhar os problemas, veja Problemas.
Como as regras afetam a sua pontuação de saúde
Cada regra tem uma gravidade (Erro, Alerta ou Aviso) e uma dimensão: a parte da saúde na busca que ela mede. Em uma página, um erro zera a dimensão, um alerta custa 25 pontos e um aviso custa 5 (no máximo 10 somados dos avisos). A pontuação do site é uma média ponderada das cinco dimensões. Como funciona a pontuação de saúde traz os detalhes e um exemplo calculado.
Como as regras são verificadas
A última coluna de cada tabela diz qual parte de uma varredura pode informar a regra. Veja Como uma varredura funciona para saber quando cada parte roda.
| Verificado por | O que significa | Grupo do achado |
|---|---|---|
| Verificação de regras | O código verifica o HTML da página, sempre do mesmo jeito, em cada página que a Loomaly encontra. | Estrutural |
| Julgamento de IA | Um modelo de IA responde a uma pergunta fixa sobre a página (por exemplo, se ela oferece um próximo passo claro), em cada página. Só as respostas em que ele confia viram problemas, e o código decide quais perguntas valem para cada tipo de página. | Semântica |
| Teste de desempenho | Medido com o Google PageSpeed Insights no celular, com dados reais de usuários do Chrome quando existem, nas páginas representativas de cada template. | Desempenho |
| Julgamento de página | A IA julga as páginas que o código marcou como suspeitas (quase duplicadas, páginas que parecem vazias ou removidas) depois de uma varredura do site. | Julgamentos de página |
| Verificação do site | O código verifica robots.txt e o sitemap uma vez por varredura e compara o sitemap com o que as páginas declaram. Aparece como um problema do site inteiro e conta uma vez, não por página. | Estrutural |
Quando uma página está com noindex, só o próprio noindex é informado, e páginas que redirecionam para outro site não são verificadas.
Meta tags
| Regra | Gravidade | Dimensão | Verificado por |
|---|---|---|---|
Tag <title> ausente | Erro | Fundamentos da página | Verificação de regras |
| O título é curto demais | Alerta | Fundamentos da página | Verificação de regras |
| O título é longo demais | Alerta | Fundamentos da página | Verificação de regras |
| Meta description ausente | Alerta | Fundamentos da página | Verificação de regras |
| Título compartilhado com outras páginas | Alerta | Fundamentos da página | Julgamento de página |
| Meta description compartilhada com outras páginas | Aviso | Fundamentos da página | Julgamento de página |
| A meta description é curta demais | Aviso | Fundamentos da página | Verificação de regras |
| A meta description é longa demais | Aviso | Fundamentos da página | Verificação de regras |
| Link canonical ausente | Aviso | Indexabilidade | Verificação de regras |
| O canonical aponta para uma URL diferente | Alerta | Indexabilidade | Verificação de regras |
| Meta viewport ausente | Alerta | Fundamentos da página | Verificação de regras |
| Página de login ou do app pode ser indexada | Alerta | Indexabilidade | Verificação de regras |
| A página está definida como noindex | Erro | Indexabilidade | Verificação de regras |
| A página está definida como nofollow | Alerta | Indexabilidade | Verificação de regras |
| O título não corresponde à página | Alerta | Conteúdo e legibilidade para IA | Julgamento de IA |
| Tags Open Graph ausentes | Aviso | Fundamentos da página | Verificação de regras |
| Imagem Open Graph ausente | Aviso | Fundamentos da página | Verificação de regras |
Tag <title> ausente
Gravidade: Erro · Dimensão: Fundamentos da página · ID da regra: missing-title · Verificado por: Verificação de regras · Esforço: pequeno
O que significa: A página não tem <title>, ou está vazio. O título é a manchete que os mecanismos de busca mostram no seu resultado e a pista mais forte na página sobre o que ela cobre.
Como corrigir: Adicione um <title> único e descritivo no <head> da página: o assunto da página primeiro, a sua marca por último, de 20 a 70 caracteres.
Orientação oficial: developers.google.com/search/docs/appearance/title-link
O título é curto demais
Gravidade: Alerta · Dimensão: Fundamentos da página · ID da regra: title-too-short · Verificado por: Verificação de regras · Esforço: pequeno
Boa prática, não uma exigência do Google: sozinha, ela não decide o posicionamento.
O que significa: O título tem menos de 20 caracteres, curto demais para dizer a quem busca o que a página oferece. Um caractere chinês, japonês ou coreano conta como dois, porque ocupa o dobro da largura.
Como corrigir: Amplie com o assunto ou produto principal da página mais um detalhe que a diferencie. Mire de 20 a 70 caracteres.
Orientação oficial: developers.google.com/search/docs/appearance/title-link
O título é longo demais
Gravidade: Alerta · Dimensão: Fundamentos da página · ID da regra: title-too-long · Verificado por: Verificação de regras · Esforço: pequeno
Boa prática, não uma exigência do Google: sozinha, ela não decide o posicionamento.
O que significa: O título tem mais de 70 caracteres, então os resultados de busca o cortam. Um caractere chinês, japonês ou coreano conta como dois, porque ocupa o dobro da largura.
Como corrigir: Coloque as palavras mais importantes primeiro e corte enchimento ou nomes de marca repetidos até caber em 70 caracteres.
Orientação oficial: developers.google.com/search/docs/appearance/title-link
Meta description ausente
Gravidade: Alerta · Dimensão: Fundamentos da página · ID da regra: missing-meta-description · Verificado por: Verificação de regras · Esforço: pequeno
O que significa: A página não tem meta description, ou ela está vazia. Os mecanismos de busca então escrevem o próprio snippet a partir do texto da página, e você perde o controle do que quem busca lê antes de clicar.
Como corrigir: Adicione <meta name="description" content="..."> com um resumo de 70 a 160 caracteres que diga o que o visitante ganha e por que clicar.
Orientação oficial: developers.google.com/search/docs/appearance/snippet
Título compartilhado com outras páginas
Gravidade: Alerta · Dimensão: Fundamentos da página · ID da regra: duplicate-title · Verificado por: Julgamento de página · Esforço: médio
O que significa: Outras páginas do site usam exatamente o mesmo <title>; o problema diz quantas e cita uma. Os mecanismos de busca precisam escolher uma página para a consulta, e quem busca não distingue os resultados.
Como corrigir: Dê a cada página um título que diga do que ela trata: o produto, o assunto do artigo ou o nome da categoria primeiro, a marca por último. Se as páginas forem de fato a mesma, mantenha uma e aponte as outras para ela com um canonical ou um redirecionamento.
Orientação oficial: developers.google.com/search/docs/appearance/title-link
Meta description compartilhada com outras páginas
Gravidade: Aviso · Dimensão: Fundamentos da página · ID da regra: duplicate-meta-description · Verificado por: Julgamento de página · Esforço: médio
O que significa: Outras páginas do site usam a mesma meta description, então os snippets de busca ficam iguais.
Como corrigir: Escreva uma descrição para cada página a partir do conteúdo dela, ou deixe vazia nas páginas em que você não tem nada específico a dizer: o Google escreve uma a partir da página.
Orientação oficial: developers.google.com/search/docs/appearance/snippet
A meta description é curta demais
Gravidade: Aviso · Dimensão: Fundamentos da página · ID da regra: meta-description-too-short · Verificado por: Verificação de regras · Esforço: pequeno
Boa prática, não uma exigência do Google: sozinha, ela não decide o posicionamento.
O que significa: A meta description tem menos de 70 caracteres, o que deixa a maior parte do espaço do snippet sem uso. Um caractere chinês, japonês ou coreano conta como dois, porque ocupa o dobro da largura.
Como corrigir: Amplie para 70 a 160 caracteres com um benefício concreto, um detalhe ou uma chamada para ação.
Orientação oficial: developers.google.com/search/docs/appearance/snippet
A meta description é longa demais
Gravidade: Aviso · Dimensão: Fundamentos da página · ID da regra: meta-description-too-long · Verificado por: Verificação de regras · Esforço: pequeno
Boa prática, não uma exigência do Google: sozinha, ela não decide o posicionamento.
O que significa: A meta description tem mais de 160 caracteres, então os resultados de busca a cortam. Um caractere chinês, japonês ou coreano conta como dois, porque ocupa o dobro da largura.
Como corrigir: Mantenha a mensagem principal nos primeiros 160 caracteres e descarte o resto.
Orientação oficial: developers.google.com/search/docs/appearance/snippet
Link canonical ausente
Gravidade: Aviso · Dimensão: Indexabilidade · ID da regra: missing-canonical · Verificado por: Verificação de regras · Esforço: pequeno
O que significa: A página não declara um <link rel="canonical">. Os mecanismos de busca então decidem sozinhos qual variante da URL (com parâmetros, com ou sem barra no final) é a principal.
Como corrigir: Adicione um link canonical que aponte para a URL preferida da própria página. A maioria dos frameworks e plugins de SEO consegue gerar um canonical autorreferente em cada página.
Orientação oficial: developers.google.com/search/docs/crawling-indexing/consolidate-duplicate-urls
O canonical aponta para uma URL diferente
Gravidade: Alerta · Dimensão: Indexabilidade · ID da regra: canonical-mismatch · Verificado por: Verificação de regras · Esforço: médio
O que significa: O link canonical aponta para uma URL diferente da própria página (comparado depois dos redirecionamentos; uma barra no final ou um host em maiúsculas não conta como diferente). Os mecanismos de busca podem indexar essa outra URL em vez desta.
Como corrigir: Se esta página deve ranquear por conta própria, aponte o canonical para a URL dela. Se for uma duplicata proposital que deve passar os sinais para outra página, deixe assim e ignore o problema com um motivo.
Orientação oficial: developers.google.com/search/docs/crawling-indexing/consolidate-duplicate-urls
Meta viewport ausente
Gravidade: Alerta · Dimensão: Fundamentos da página · ID da regra: missing-viewport · Verificado por: Verificação de regras · Esforço: pequeno
O que significa: A página não tem <meta name="viewport">, então os celulares a renderizam como uma página de desktop reduzida. O Google indexa a versão para celular do seu site.
Como corrigir: Adicione <meta name="viewport" content="width=device-width, initial-scale=1"> ao <head>.
Orientação oficial: developers.google.com/search/docs/crawling-indexing/mobile/mobile-sites-mobile-first-indexing
Página de login ou do app pode ser indexada
Gravidade: Alerta · Dimensão: Indexabilidade · ID da regra: indexable-app-page · Verificado por: Verificação de regras · Esforço: pequeno
O que significa: Este endereço parece login, conta ou aplicativo e responde 200 sem noindex. A busca pode listar uma tela de entrada.
Como corrigir: Adicione noindex na meta robots ou no cabeçalho X-Robots-Tag. Não escreva título nem descrição para essas páginas.
Orientação oficial: developers.google.com/search/docs/crawling-indexing/robots-meta-tag
A página está definida como noindex
Gravidade: Erro · Dimensão: Indexabilidade · ID da regra: robots-noindex · Verificado por: Verificação de regras · Esforço: pequeno
O que significa: A página diz aos mecanismos de busca para não indexá-la, então ela não aparece nos resultados de busca. O Loomaly não reporta isso em páginas que em geral ficam de fora da busca de propósito, como login, conta, carrinho, checkout e páginas legais.
Como corrigir: Se a página deve aparecer na busca, remova noindex da meta tag robots (e de qualquer cabeçalho X-Robots-Tag). Se for intencional, ignore o problema com um motivo.
Orientação oficial: developers.google.com/search/docs/crawling-indexing/block-indexing
A página está definida como nofollow
Gravidade: Alerta · Dimensão: Indexabilidade · ID da regra: robots-nofollow · Verificado por: Verificação de regras · Esforço: pequeno
O que significa: A configuração robots da página diz nofollow, então os mecanismos de busca não seguem nenhum link da página. As páginas para as quais ela aponta não recebem descoberta nem crédito a partir dela.
Como corrigir: Remova nofollow da meta tag robots da página. Para impedir que links individuais passem crédito, coloque rel="nofollow" nesses links.
Orientação oficial: developers.google.com/search/docs/crawling-indexing/robots-meta-tag
O título não corresponde à página
Gravidade: Alerta · Dimensão: Conteúdo e legibilidade para IA · ID da regra: title-content-mismatch · Verificado por: Julgamento de IA · Esforço: pequeno
O que significa: O <title> promete algo que os headings e o texto da página não entregam. Quem busca e clica sai rápido, e o Google pode reescrever o título nos resultados.
Como corrigir: Reescreva o título para descrever o que a página de fato oferece, usando as palavras do heading principal, ou mude a página para ela entregar o que o título promete.
Orientação oficial: developers.google.com/search/docs/appearance/title-link
Tags Open Graph ausentes
Gravidade: Aviso · Dimensão: Fundamentos da página · ID da regra: missing-og-tags · Verificado por: Verificação de regras · Esforço: pequeno
Boa prática, não uma exigência do Google: sozinha, ela não decide o posicionamento.
O que significa: A página não tem og:title, og:description nem og:image. Redes sociais, apps de chat e assistentes de IA usam estas tags Open Graph para montar a prévia quando alguém compartilha o link.
Como corrigir: Adicione pelo menos og:title, og:description e og:image (e, de preferência, og:url) ao <head>. A maioria dos plugins de SEO e frameworks consegue gerá-las a partir do título e da descrição da página.
Orientação oficial: ogp.me
Imagem Open Graph ausente
Gravidade: Aviso · Dimensão: Fundamentos da página · ID da regra: missing-og-image · Verificado por: Verificação de regras · Esforço: médio
Boa prática, não uma exigência do Google: sozinha, ela não decide o posicionamento.
O que significa: A página tem tags Open Graph, mas não tem og:image, então links compartilhados aparecem sem imagem de prévia ou com uma imagem aleatória.
Como corrigir: Adicione og:image com uma URL absoluta de uma imagem representativa. 1200 x 630 pixels é o tamanho comum.
Orientação oficial: ogp.me
Cabeçalhos
| Regra | Gravidade | Dimensão | Verificado por |
|---|---|---|---|
| H1 ausente | Alerta | Fundamentos da página | Verificação de regras |
| Várias tags H1 | Alerta | Fundamentos da página | Verificação de regras |
| Níveis de heading pulados | Aviso | Fundamentos da página | Verificação de regras |
H1 ausente
Gravidade: Alerta · Dimensão: Fundamentos da página · ID da regra: missing-h1 · Verificado por: Verificação de regras · Esforço: pequeno
Boa prática, não uma exigência do Google: sozinha, ela não decide o posicionamento.
O que significa: A página não tem <h1>. O H1 é o heading visível principal da página e um sinal forte do assunto dela.
Como corrigir: Adicione exatamente um H1 que diga o assunto principal da página. Ele pode coincidir com o título ou ecoá-lo de perto.
Orientação oficial: developers.google.com/search/docs/fundamentals/seo-starter-guide
Várias tags H1
Gravidade: Alerta · Dimensão: Fundamentos da página · ID da regra: multiple-h1 · Verificado por: Verificação de regras · Esforço: pequeno
Boa prática, não uma exigência do Google: sozinha, ela não decide o posicionamento.
O que significa: A página tem mais de um <h1>, o que embaralha qual assunto é o principal. Uma causa comum é um tema que marca o logo ou os títulos de seção como H1.
Como corrigir: Mantenha um H1 para o assunto principal da página e mude os outros para H2 ou H3.
Orientação oficial: developers.google.com/search/docs/fundamentals/seo-starter-guide
Níveis de heading pulados
Gravidade: Aviso · Dimensão: Fundamentos da página · ID da regra: heading-skip-level · Verificado por: Verificação de regras · Esforço: médio
Boa prática, não uma exigência do Google: sozinha, ela não decide o posicionamento.
O que significa: Os níveis de heading pulam, por exemplo de H1 direto para H3. Leitores de tela e rastreadores usam os headings como o sumário da página, e as lacunas dificultam acompanhar.
Como corrigir: Use os níveis de heading em ordem (H1, depois H2, depois H3) conforme a estrutura, e defina o tamanho com CSS em vez de escolher outro nível.
Orientação oficial: developer.mozilla.org/en-US/docs/Web/HTML/Reference/Elements/Heading_Elements
Conteúdo
| Regra | Gravidade | Dimensão | Verificado por |
|---|---|---|---|
| Compete com outra página pela mesma busca | Alerta | Conteúdo e legibilidade para IA | Julgamento de página |
| Item indisponível ainda indexável | Alerta | Conteúdo e legibilidade para IA | Julgamento de página |
| Página provisória sem conteúdo real | Alerta | Conteúdo e legibilidade para IA | Julgamento de página |
| Nenhum próximo passo claro para o visitante | Alerta | Conteúdo e legibilidade para IA | Julgamento de IA |
| Conteúdo fino | Alerta | Conteúdo e legibilidade para IA | Julgamento de IA |
| Poucas palavras | Aviso | Conteúdo e legibilidade para IA | Verificação de regras |
| Possível enchimento de palavras-chave | Alerta | Conteúdo e legibilidade para IA | Julgamento de IA |
| Frase-alvo ausente no título | Alerta | Conteúdo e legibilidade para IA | Verificação de palavras-chave |
| Frase-alvo ausente no H1 | Aviso | Conteúdo e legibilidade para IA | Verificação de palavras-chave |
| Frase-alvo ausente na meta description | Aviso | Conteúdo e legibilidade para IA | Verificação de palavras-chave |
| Frase-alvo ausente na abertura | Aviso | Conteúdo e legibilidade para IA | Verificação de palavras-chave |
| Uma frase buscada está ausente no título | Alerta | Conteúdo e legibilidade para IA | Verificação de palavras-chave |
| A frase-alvo não está no início do título | Aviso | Conteúdo e legibilidade para IA | Verificação de palavras-chave |
| O site não tem llms.txt | Aviso | Conteúdo e legibilidade para IA | Verificação do site |
| llms.txt não é um mapa de páginas utilizável | Aviso | Conteúdo e legibilidade para IA | Verificação do site |
| llms.txt aponta para páginas que falham | Alerta | Conteúdo e legibilidade para IA | Verificação do site |
| Página não otimizada para citação por IA | Aviso | Conteúdo e legibilidade para IA | Julgamento de IA |
| Assinatura do autor ausente | Aviso | Conteúdo e legibilidade para IA | Julgamento de IA |
| Data de publicação ausente | Aviso | Conteúdo e legibilidade para IA | Julgamento de IA |
Compete com outra página pela mesma busca
Gravidade: Alerta · Dimensão: Conteúdo e legibilidade para IA · ID da regra: duplicate-intent · Verificado por: Julgamento de página · Esforço: grande
O que significa: Outra página do seu site atende à mesma busca, e o problema a nomeia. Os mecanismos de busca em geral escolhem uma das duas e a outra perde. Páginas que já se declaram como canonical ou como versões de idioma não são sinalizadas.
Como corrigir: Una as duas em uma página e redirecione a URL mais fraca, aponte uma para a outra com um canonical, ou deixe-as claramente diferentes (público, produto ou pergunta diferentes).
Orientação oficial: developers.google.com/search/docs/crawling-indexing/consolidate-duplicate-urls
Item indisponível ainda indexável
Gravidade: Alerta · Dimensão: Conteúdo e legibilidade para IA · ID da regra: unavailable-item · Verificado por: Julgamento de página · Esforço: médio
O que significa: A página é de algo que não está mais disponível (esgotado, descontinuado, um evento que acabou), mas ainda pode ser encontrada na busca.
Como corrigir: Mantenha só se ela ajudar o visitante a seguir, por exemplo com alternativas ou uma data de reposição. Caso contrário, redirecione para a alternativa mais próxima ou marque como noindex.
Orientação oficial: developers.google.com/crawling/docs/troubleshooting/http-status-codes
Página provisória sem conteúdo real
Gravidade: Alerta · Dimensão: Conteúdo e legibilidade para IA · ID da regra: placeholder-page · Verificado por: Julgamento de página · Esforço: grande
O que significa: A página é uma casca de modelo ou um rascunho sem nada para o visitante, como texto provisório, uma categoria vazia ou uma página de em breve.
Como corrigir: Preencha com conteúdo real, ou mantenha fora da busca (noindex, ou despublique) até ter algum.
Orientação oficial: developers.google.com/search/docs/fundamentals/creating-helpful-content
Nenhum próximo passo claro para o visitante
Gravidade: Alerta · Dimensão: Conteúdo e legibilidade para IA · ID da regra: missing-next-step · Verificado por: Julgamento de IA · Esforço: médio
Boa prática, não uma exigência do Google: sozinha, ela não decide o posicionamento.
O que significa: Uma página inicial, de landing ou de produto não dá ao visitante um próximo passo claro: cadastrar, comprar, reservar, falar com você ou continuar lendo. A página pode ranquear e ainda perder os visitantes que conquista. O julgamento de IA vê os botões e os links de chamada para ação da página, e isso só é verificado nas páginas em que o Loomaly os registrou.
Como corrigir: Adicione uma chamada para ação principal perto do topo e de novo depois do conteúdo principal, com um verbo que diga o que acontece ("Começar teste grátis", "Agendar uma conversa"). Deixe os links secundários visualmente mais discretos.
Orientação oficial: developers.google.com/search/docs/fundamentals/creating-helpful-content
Conteúdo fino
Gravidade: Alerta · Dimensão: Conteúdo e legibilidade para IA · ID da regra: thin-content · Verificado por: Julgamento de IA · Esforço: grande
O que significa: Para o que a página se propõe (um produto, um artigo, uma landing page), ela não dá substância suficiente ao visitante: pouco além de um heading e algumas linhas. Os mecanismos de busca tratam páginas assim como de baixo valor.
Como corrigir: Adicione conteúdo que responda ao que um visitante desta página de fato precisa. Se a página não tem propósito próprio, una a uma página relacionada ou mantenha fora da busca.
Orientação oficial: developers.google.com/search/docs/fundamentals/creating-helpful-content
Poucas palavras
Gravidade: Aviso · Dimensão: Conteúdo e legibilidade para IA · ID da regra: low-word-count · Verificado por: Verificação de regras · Esforço: grande
Boa prática, não uma exigência do Google: sozinha, ela não decide o posicionamento.
O que significa: A página tem menos texto do que o assunto em geral precisa para ranquear.
Como corrigir: Amplie com detalhe útil, como especificações, respostas a perguntas comuns ou exemplos, não enchimento.
Orientação oficial: developers.google.com/search/docs/fundamentals/creating-helpful-content
Possível enchimento de palavras-chave
Gravidade: Alerta · Dimensão: Conteúdo e legibilidade para IA · ID da regra: keyword-stuffing · Verificado por: Julgamento de IA · Esforço: médio
O que significa: O texto não parece uma pessoa escrevendo para outras pessoas: termos de busca se repetem bem mais do que uma escrita natural faria. A leitura fica ruim e há risco de penalidade de busca.
Como corrigir: Reescreva os trechos afetados de forma natural, use sinônimos e corte a repetição em headings, texto alt e rodapés.
Orientação oficial: developers.google.com/search/docs/essentials/spam-policies#keyword-stuffing
Frase-alvo ausente no título
Gravidade: Alerta · Dimensão: Conteúdo e legibilidade para IA · ID da regra: keyword-missing-title · Verificado por: Verificação de palavras-chave · Esforço: pequeno
O que significa: A frase pela qual esta página deveria ranquear não está na parte do <title> que o Google mostra. Uma correspondência só na segunda metade do título é cortada nos resultados de busca.
Como corrigir: Coloque essa frase na primeira metade do <title>, antes do nome da marca.
Orientação oficial: developers.google.com/search/docs/appearance/title-link
Frase-alvo ausente no H1
Gravidade: Aviso · Dimensão: Conteúdo e legibilidade para IA · ID da regra: keyword-missing-h1 · Verificado por: Verificação de palavras-chave · Esforço: pequeno
Boa prática, não uma exigência do Google: sozinha, ela não decide o posicionamento.
O que significa: A frase pela qual esta página deveria ranquear não está em nenhum H1, então o heading que o visitante vê primeiro não diz para que a página serve.
Como corrigir: Use a frase no H1 da página, com as palavras que quem busca usaria.
Orientação oficial: developers.google.com/search/docs/fundamentals/seo-starter-guide
Frase-alvo ausente na meta description
Gravidade: Aviso · Dimensão: Conteúdo e legibilidade para IA · ID da regra: keyword-missing-description · Verificado por: Verificação de palavras-chave · Esforço: pequeno
Boa prática, não uma exigência do Google: sozinha, ela não decide o posicionamento.
O que significa: A frase pela qual esta página deveria ranquear não está na meta description, então o snippet abaixo do resultado não a menciona.
Como corrigir: Inclua a frase uma vez na meta description, em uma frase sobre o que o visitante ganha.
Orientação oficial: developers.google.com/search/docs/appearance/snippet
Frase-alvo ausente na abertura
Gravidade: Aviso · Dimensão: Conteúdo e legibilidade para IA · ID da regra: keyword-missing-intro · Verificado por: Verificação de palavras-chave · Esforço: pequeno
Boa prática, não uma exigência do Google: sozinha, ela não decide o posicionamento.
O que significa: A frase pela qual esta página deveria ranquear não aparece na abertura da página, então a primeira tela não confirma que o visitante está no lugar certo.
Como corrigir: Use a frase no primeiro parágrafo, ou na primeira linha de uma página escrita em chinês, japonês, coreano ou tailandês.
Orientação oficial: developers.google.com/search/docs/fundamentals/creating-helpful-content
Uma frase buscada está ausente no título
Gravidade: Alerta · Dimensão: Conteúdo e legibilidade para IA · ID da regra: gsc-query-title-gap · Verificado por: Verificação de palavras-chave · Esforço: pequeno
O que significa: O Google já mostra esta página para uma consulta com demanda real, e essa consulta não está no título nem no H1. O título ignora uma busca que a página já conquista.
Como corrigir: Inclua a consulta no título ou no H1, se a página de fato a responde. Deixe de fora quando a página for sobre outra coisa.
Orientação oficial: developers.google.com/search/docs/appearance/title-link
A frase-alvo não está no início do título
Gravidade: Aviso · Dimensão: Conteúdo e legibilidade para IA · ID da regra: keyword-not-title-start · Verificado por: Verificação de palavras-chave · Esforço: pequeno
O que significa: A frase pela qual esta página deveria ranquear está no título, mas não no início (o primeiro terço da largura, ou as primeiras palavras). Quem pesquisa vê primeiro o começo do título.
Como corrigir: Mova essa frase para o início do título, antes do nome da marca.
Orientação oficial: developers.google.com/search/docs/appearance/title-link
O site não tem llms.txt
Gravidade: Aviso · Dimensão: Conteúdo e legibilidade para IA · ID da regra: llms-txt-missing · Verificado por: Verificação do site · Esforço: pequeno
Boa prática, não uma exigência do Google: sozinha, ela não decide o posicionamento.
O que significa: /llms.txt não existe, ou esse endereço responde com uma página web. Uma página HTML genérica conta como ausência. Alguns produtos leem esse arquivo para achar páginas, e ele precisa ser texto puro.
Como corrigir: Publique /llms.txt na raiz do domínio como text/plain: um título #, um resumo opcional de uma linha e links Markdown para páginas reais. Next.js: public/llms.txt ou app/llms.txt/route.ts. Astro e TanStack Start: public/llms.txt. Fumadocs: gere a partir da fonte da documentação. Docusaurus e outros sites estáticos: static/llms.txt ou a pasta pública do host.
Orientação oficial: llmstxt.org
llms.txt não é um mapa de páginas utilizável
Gravidade: Aviso · Dimensão: Conteúdo e legibilidade para IA · ID da regra: llms-txt-invalid · Verificado por: Verificação do site · Esforço: pequeno
Boa prática, não uma exigência do Google: sozinha, ela não decide o posicionamento.
O que significa: /llms.txt é publicado como texto puro, mas não é um mapa utilizável: precisa de um título (# …) e de pelo menos um link Markdown para uma página. Alguns produtos leem esse arquivo para achar páginas. Um arquivo ausente, ou uma página HTML nesse endereço, é outra verificação.
Como corrigir: Dê a /llms.txt um título #, um resumo opcional e uma lista de links Markdown para as páginas que você quer que sejam lidas, por exemplo - [Preços](https://example.com/pricing): planos e preços. Sirva como text/plain. Next.js pode usar public/llms.txt ou app/llms.txt/route.ts; Astro e TanStack Start usam public/llms.txt; Fumadocs pode gerar a partir da documentação; Docusaurus e outros sites estáticos usam static/llms.txt.
Orientação oficial: llmstxt.org
llms.txt aponta para páginas que falham
Gravidade: Alerta · Dimensão: Conteúdo e legibilidade para IA · ID da regra: llms-txt-broken-links · Verificado por: Verificação do site · Esforço: pequeno
Boa prática, não uma exigência do Google: sozinha, ela não decide o posicionamento.
O que significa: /llms.txt aponta para páginas deste site que respondem com erro. O problema lista as que foram verificadas. Quem segue o arquivo cai numa página que não abre.
Como corrigir: Aponte cada link para uma página que responda 200, ou remova a linha. O aviso lista os primeiros que falham. O arquivo costuma ser public/llms.txt ou a rota que o serve.
Orientação oficial: llmstxt.org
Página não otimizada para citação por IA
Gravidade: Aviso · Dimensão: Conteúdo e legibilidade para IA · ID da regra: page-not-citable-by-llm · Verificado por: Julgamento de IA · Esforço: grande
Boa prática, não uma exigência do Google: sozinha, ela não decide o posicionamento.
O que significa: As seções da página não abrem com uma resposta direta, ou não se entendem sozinhas. Respostas de IA e featured snippets citam trechos que dizem o ponto logo no início; não há atalho de marcação para isso.
Como corrigir: Comece cada seção com uma frase que responda ao heading diretamente e depois acrescente o detalhe. Use headings que combinem com o jeito que as pessoas perguntam e declare fatos e números específicos.
Orientação oficial: developers.google.com/search/docs/appearance/ai-features
Assinatura do autor ausente
Gravidade: Aviso · Dimensão: Conteúdo e legibilidade para IA · ID da regra: missing-author-byline · Verificado por: Julgamento de IA · Esforço: médio
Boa prática, não uma exigência do Google: sozinha, ela não decide o posicionamento.
O que significa: O artigo não diz quem escreveu, na página nem nos dados estruturados. Um autor identificado ajuda leitores a julgar o conteúdo e faz parte do que as diretrizes de qualidade do Google procuram.
Como corrigir: Mostre o nome do autor com um link para uma bio curta ou página de autor, e adicione o autor ao JSON-LD Article da página.
Orientação oficial: developers.google.com/search/docs/fundamentals/creating-helpful-content
Data de publicação ausente
Gravidade: Aviso · Dimensão: Conteúdo e legibilidade para IA · ID da regra: missing-publish-date · Verificado por: Julgamento de IA · Esforço: pequeno
Boa prática, não uma exigência do Google: sozinha, ela não decide o posicionamento.
O que significa: O artigo não mostra quando foi publicado ou atualizado, na página nem nos dados estruturados, então os leitores não sabem se está atual.
Como corrigir: Mostre a data de publicação (e de atualização) na página e adicione datePublished e dateModified ao JSON-LD da página.
Orientação oficial: developers.google.com/search/docs/appearance/publication-dates
Imagens
| Regra | Gravidade | Dimensão | Verificado por |
|---|---|---|---|
| Imagens sem texto alt | Alerta | Fundamentos da página | Verificação de regras |
| Imagens sem lazy loading | Aviso | Desempenho | Verificação de regras |
Imagens sem texto alt
Gravidade: Alerta · Dimensão: Fundamentos da página · ID da regra: image-missing-alt · Verificado por: Verificação de regras · Esforço: médio
O que significa: Um ou mais elementos <img> não têm o atributo alt, e o problema diz quantas imagens da página são afetadas. Leitores de tela não conseguem descrevê-las e o Google Images tem menos com o que trabalhar.
Como corrigir: Dê a cada imagem com significado um alt curto que a descreva. Imagens só decorativas devem receber um alt="" vazio.
Orientação oficial: developers.google.com/search/docs/appearance/google-images
Imagens sem lazy loading
Gravidade: Aviso · Dimensão: Desempenho · ID da regra: image-no-lazy-loading · Verificado por: Verificação de regras · Esforço: pequeno
Boa prática, não uma exigência do Google: sozinha, ela não decide o posicionamento.
O que significa: Imagens mais abaixo na página carregam junto com ela e disputam banda com o que o visitante vê primeiro.
Como corrigir: Adicione loading="lazy" às imagens abaixo da dobra. Não faça lazy load da imagem principal no topo da página, porque isso atrasa o Largest Contentful Paint.
Orientação oficial: web.dev/articles/browser-level-image-lazy-loading
Links
| Regra | Gravidade | Dimensão | Verificado por |
|---|---|---|---|
| Nenhum link interno | Alerta | Fundamentos da página | Verificação de regras |
| Poucos links internos | Aviso | Fundamentos da página | Verificação de regras |
| Links externos em excesso | Aviso | Fundamentos da página | Verificação de regras |
| Nenhum link interno usa a frase-alvo | Aviso | Conteúdo e legibilidade para IA | Verificação de palavras-chave |
| A página de foco tem poucos links internos | Alerta | Conteúdo e legibilidade para IA | Verificação de palavras-chave |
| Links internos para páginas que respondem com erro | Alerta | Fundamentos da página | Verificação do site |
| Páginas do sitemap para as quais nenhuma outra página aponta | Alerta | Fundamentos da página | Verificação do site |
Nenhum link interno
Gravidade: Alerta · Dimensão: Fundamentos da página · ID da regra: no-internal-links · Verificado por: Verificação de regras · Esforço: médio
O que significa: A página não aponta para nenhuma outra página do seu site. Ela não passa valor para o resto do site, e os rastreadores descobrem menos a partir dela.
Como corrigir: Adicione links para páginas relacionadas no conteúdo, além de navegação ou breadcrumbs. Garanta que os links sejam elementos <a href> de verdade, não handlers de clique.
Orientação oficial: developers.google.com/search/docs/crawling-indexing/links-crawlable
Poucos links internos
Gravidade: Aviso · Dimensão: Fundamentos da página · ID da regra: too-few-internal-links · Verificado por: Verificação de regras · Esforço: médio
Boa prática, não uma exigência do Google: sozinha, ela não decide o posicionamento.
O que significa: A página tem bem poucos links para outras páginas do seu site, então pode ser subvalorizada e pouco ajuda o visitante a seguir.
Como corrigir: Aponte para produtos, artigos ou categorias relacionados onde isso ajudar o leitor.
Orientação oficial: developers.google.com/search/docs/crawling-indexing/links-crawlable
Links externos em excesso
Gravidade: Aviso · Dimensão: Fundamentos da página · ID da regra: excessive-external-links · Verificado por: Verificação de regras · Esforço: médio
Boa prática, não uma exigência do Google: sozinha, ela não decide o posicionamento.
O que significa: A página aponta para muitos domínios externos. Cada link de saída deveria estar ali pelo leitor.
Como corrigir: Remova links sem justificativa editorial. Marque links pagos ou de afiliado com rel="sponsored" e links enviados por usuários com rel="ugc".
Orientação oficial: developers.google.com/search/docs/fundamentals/seo-starter-guide
Nenhum link interno usa a frase-alvo
Gravidade: Aviso · Dimensão: Conteúdo e legibilidade para IA · ID da regra: keyword-anchor-missing · Verificado por: Verificação de palavras-chave · Esforço: pequeno
Boa prática, não uma exigência do Google: sozinha, ela não decide o posicionamento.
O que significa: Outras páginas do site apontam para cá, e nenhum desses links usa a frase pela qual esta página deveria ranquear. O texto âncora é a pista que esses links passam adiante.
Como corrigir: Em pelo menos um link interno para esta página, use a frase como o texto visível do link.
Orientação oficial: developers.google.com/search/docs/crawling-indexing/links-crawlable
A página de foco tem poucos links internos
Gravidade: Alerta · Dimensão: Conteúdo e legibilidade para IA · ID da regra: focus-page-few-inlinks · Verificado por: Verificação de palavras-chave · Esforço: pequeno
Boa prática, não uma exigência do Google: sozinha, ela não decide o posicionamento.
O que significa: Menos de cinco páginas apontam para a página de foco, ou esses links usam menos de cinco textos âncora diferentes. A página recebe pouca atenção interna do site.
Como corrigir: Adicione links internos a partir de páginas relacionadas. Em um assistente, chame link_suggestions e aprove os que fizerem sentido.
Orientação oficial: developers.google.com/search/docs/crawling-indexing/links-crawlable
Links internos para páginas que respondem com erro
Gravidade: Alerta · Dimensão: Fundamentos da página · ID da regra: internal-links-to-errors · Verificado por: Verificação do site · Esforço: médio
O que significa: Páginas do seu site apontam para outras páginas do seu site que respondem com erro (4xx ou 5xx). O problema diz quantas páginas apontam para quantas mortas, com exemplos. Visitantes que seguem esses links caem em um beco sem saída, e os rastreadores gastam a visita neles.
Como corrigir: Aponte cada link para o endereço atual da página, ou remova. Se a página mudou de lugar, redirecione o endereço antigo para o novo para os links de fora também continuarem funcionando.
Orientação oficial: developers.google.com/crawling/docs/troubleshooting/http-status-codes
Páginas do sitemap para as quais nenhuma outra página aponta
Gravidade: Alerta · Dimensão: Fundamentos da página · ID da regra: orphan-pages · Verificado por: Verificação do site · Esforço: médio
O que significa: O seu sitemap lista páginas para as quais nenhuma página do seu site aponta. O problema diz quantas e dá exemplos; cada uma foi verificada e carrega. Visitantes só chegam a elas de fora, e os mecanismos de busca dão pouco peso a páginas para as quais ninguém aponta. Às vezes são páginas que não deveriam estar no sitemap (um modelo, um arquivo de verificação, uma campanha antiga).
Como corrigir: Aponte para cada página que importa a partir de uma página relacionada, um hub ou a navegação. Tire do sitemap as que não deveriam ser públicas.
Orientação oficial: developers.google.com/search/docs/crawling-indexing/links-crawlable
Dados estruturados
| Regra | Gravidade | Dimensão | Verificado por |
|---|---|---|---|
| Sem dados estruturados JSON-LD | Aviso | Dados estruturados | Verificação de regras |
| Página de produto sem dados estruturados Product | Alerta | Dados estruturados | Verificação de regras |
| Dados estruturados inválidos | Alerta | Dados estruturados | Verificação de regras |
| Schema Organization ausente | Aviso | Dados estruturados | Verificação de regras |
| Schema de breadcrumb ausente | Aviso | Dados estruturados | Verificação de regras |
Sem dados estruturados JSON-LD
Gravidade: Aviso · Dimensão: Dados estruturados · ID da regra: missing-structured-data · Verificado por: Verificação de regras · Esforço: médio
Boa prática, não uma exigência do Google: sozinha, ela não decide o posicionamento.
O que significa: A página não tem bloco JSON-LD. Dados estruturados descrevem a página (um produto, um artigo, o seu negócio) de um jeito que os mecanismos de busca leem direto, e muitos resultados avançados exigem isso.
Como corrigir: Adicione um bloco <script type="application/ld+json"> do tipo Schema.org correspondente. Peça ao assistente (problem) um bloco pronto para colar, escolhido para o tipo do seu site; troque os placeholders antes de publicar.
Orientação oficial: developers.google.com/search/docs/appearance/structured-data/intro-structured-data
Página de produto sem dados estruturados Product
Gravidade: Alerta · Dimensão: Dados estruturados · ID da regra: missing-product-schema · Verificado por: Verificação de regras · Esforço: médio
O que significa: Esta é uma página de produto, mas não tem dados estruturados Product. O Google Shopping, os resultados avançados e os assistentes de IA leem nome, preço, moeda e disponibilidade do produto nessa marcação; sem ela, precisam adivinhar pela página, se é que conseguem vê-la.
Como corrigir: Adicione um bloco JSON-LD Product com name, image, description e um objeto offers (price, priceCurrency, availability, url), gerado a partir dos mesmos dados que a página mostra. Em um site que renderiza no navegador, isso precisa estar no HTML que o servidor envia.
Orientação oficial: developers.google.com/search/docs/appearance/structured-data/product-snippet
Dados estruturados inválidos
Gravidade: Alerta · Dimensão: Dados estruturados · ID da regra: invalid-structured-data · Verificado por: Verificação de regras · Esforço: pequeno
O que significa: O JSON-LD da página tem erros em relação às regras do Schema.org. O Loomaly verifica isso com o próprio validador, não com IA, e o problema mostra o caminho do primeiro erro e quantos mais existem. Só erros são reportados, não avisos.
Como corrigir: Corrija a propriedade no caminho reportado. Peça ao assistente (problem) uma cópia reparada da sua marcação, o que mudou e o que ainda precisa de um fato só você tem. Depois teste a página no Teste de resultados rich do Google.
Orientação oficial: developers.google.com/search/docs/appearance/structured-data/sd-policies
Schema Organization ausente
Gravidade: Aviso · Dimensão: Dados estruturados · ID da regra: missing-organization-schema · Verificado por: Verificação de regras · Esforço: pequeno
Boa prática, não uma exigência do Google: sozinha, ela não decide o posicionamento.
O que significa: A página inicial não tem JSON-LD Organization (ou LocalBusiness), que diz aos mecanismos de busca o seu nome, logo e perfis e torna você elegível a um painel de conhecimento.
Como corrigir: Adicione JSON-LD Organization à página inicial com name, url, logo e links sameAs para os seus perfis. Negócios locais devem usar LocalBusiness com endereço e horário. Peça ao assistente (problem) um modelo para preencher.
Orientação oficial: developers.google.com/search/docs/appearance/structured-data/organization
Schema de breadcrumb ausente
Gravidade: Aviso · Dimensão: Dados estruturados · ID da regra: missing-breadcrumb-schema · Verificado por: Verificação de regras · Esforço: médio
Boa prática, não uma exigência do Google: sozinha, ela não decide o posicionamento.
O que significa: A página não tem JSON-LD BreadcrumbList, que permite ao Google mostrar o lugar da página no seu site em vez de uma URL crua.
Como corrigir: Adicione JSON-LD BreadcrumbList que combine com a posição da página na sua navegação. A maioria das plataformas e plugins de SEO consegue gerar a partir das migalhas. Peça ao assistente (problem) um modelo.
Orientação oficial: developers.google.com/search/docs/appearance/structured-data/breadcrumb
Técnico
Página de erro servida como página normal
Gravidade: Erro · Dimensão: Indexabilidade · ID da regra: soft-404 · Verificado por: Julgamento de página · Esforço: médio
O que significa: A página diz que não foi encontrada ou que está quebrada, mas responde com HTTP 200, então os mecanismos de busca a mantêm indexada como página real.
Como corrigir: Retorne um status 404 ou 410 de verdade para páginas que não existem mais, ou redirecione (301) para a página certa.
Orientação oficial: developers.google.com/crawling/docs/troubleshooting/http-status-codes
Rastreadores que não executam JavaScript veem uma página vazia
Gravidade: Erro · Dimensão: Indexabilidade · ID da regra: client-rendered-without-ssr · Verificado por: Verificação de regras · Esforço: grande
O que significa: Buscada sem executar JavaScript, a página é um documento grande (20 KB de HTML ou mais) com menos de 150 caracteres de texto: o conteúdo só aparece depois que o JavaScript roda. É isso que veem os rastreadores que não executam JavaScript, inclusive a maioria dos rastreadores de IA (ChatGPT, Perplexity, Claude) e as prévias de link. Alguns sites enviam uma página renderizada só ao Googlebot; o Google então vê o conteúdo e os rastreadores de IA continuam sem ver. Páginas assim estão vazias demais para julgar, então recebem este problema em vez do julgamento de IA.
Como corrigir: Renderize a página no servidor ou pré-renderize na hora do build, para o HTML já conter o conteúdo. A maioria dos frameworks oferece renderização no servidor ou geração estática.
Orientação oficial: developers.google.com/search/docs/crawling-indexing/javascript/javascript-seo-basics
Só os mecanismos de busca recebem a página renderizada; os rastreadores de IA a veem vazia
Gravidade: Alerta · Dimensão: Conteúdo e legibilidade para IA · ID da regra: prerendered-for-search-engines-only · Verificado por: Verificação de regras · Esforço: grande
O que significa: Buscada como um visitante normal, a página é uma casca vazia que o JavaScript preenche depois; buscada como Googlebot, ela chega totalmente renderizada. O site pré-renderiza páginas só para mecanismos de busca. Google e Bing portanto veem o conteúdo e podem ranqueá-lo, mas os rastreadores de IA (ChatGPT, Perplexity, Claude e outros) não executam JavaScript e não estão na lista de pré-renderização, então veem a página vazia e não conseguem citar preços, estoque ou detalhes nas respostas.
Como corrigir: Adicione os principais rastreadores de IA (GPTBot, OAI-SearchBot, PerplexityBot, ClaudeBot e similares) à lista de pré-renderização, o que em geral é uma mudança de uma linha no serviço de pré-renderização ou na regra da CDN. No longo prazo, renderize o conteúdo no servidor para todo mundo.
Orientação oficial: developers.google.com/search/docs/crawling-indexing/javascript/dynamic-rendering
Página servida por HTTP
Gravidade: Erro · Dimensão: Indexabilidade · ID da regra: non-https · Verificado por: Verificação de regras · Esforço: médio
O que significa: A página é servida em HTTP puro. HTTPS é um fator de ranqueamento confirmado do Google, e os navegadores marcam páginas HTTP como não seguras.
Como corrigir: Instale um certificado TLS, redirecione cada URL HTTP para a versão HTTPS com um 301 e atualize links internos e canonicals para HTTPS.
Orientação oficial: developers.google.com/search/docs/appearance/page-experience
O robots.txt não é um arquivo robots válido
Gravidade: Alerta · Dimensão: Indexabilidade · ID da regra: robots-txt-invalid · Verificado por: Verificação do site · Esforço: pequeno
O que significa: /robots.txt na raiz do seu domínio responde com uma página web ou um erro de servidor em vez de regras em texto puro. Os rastreadores não encontram regras nem sitemap nele, e um erro de servidor ali faz o Google pausar o rastreamento do site.
Como corrigir: Sirva /robots.txt como text/plain a partir da raiz do domínio, com as suas regras User-agent e uma linha Sitemap:. Garanta que a rota catch-all do app ou um redirecionamento para a página inicial não responda por ele.
Orientação oficial: developers.google.com/crawling/docs/robots-txt/create-robots-txt
O robots.txt não aponta para um sitemap
Gravidade: Aviso · Dimensão: Indexabilidade · ID da regra: robots-txt-no-sitemap · Verificado por: Verificação do site · Esforço: pequeno
Boa prática, não uma exigência do Google: sozinha, ela não decide o posicionamento.
O que significa: robots.txt não tem linha Sitemap:, ou o site não tem robots.txt. Os mecanismos de busca para os quais você enviou o sitemap ainda o têm; Bing, rastreadores de IA e outros precisam encontrá-lo sozinhos.
Como corrigir: Adicione Sitemap: https://your-domain/sitemap.xml (a URL completa de cada sitemap) ao /robots.txt. Se o site não tem robots.txt (a evidência diz no robots.txt), crie um: essa linha sozinha é um arquivo válido e não bloqueia nada.
Orientação oficial: developers.google.com/search/docs/crawling-indexing/sitemaps/build-sitemap#addsitemap
robots.txt só tem comentários
Gravidade: Aviso · Dimensão: Indexabilidade · ID da regra: robots-only-comments · Verificado por: Verificação do site · Esforço: pequeno
Boa prática, não uma exigência do Google: sozinha, ela não decide o posicionamento.
O que significa: robots.txt não tem regras nem uma linha Sitemap, só comentários. Um host como a Cloudflare publica um arquivo assim e o gerencia, então a cópia no projeto pode não ser a que os rastreadores leem.
Como corrigir: Adicione uma linha Sitemap nas configurações de robots.txt do host. Se você controla o arquivo, troque os comentários por regras reais e uma linha Sitemap.
Orientação oficial: developers.google.com/search/docs/crawling-indexing/sitemaps/build-sitemap#addsitemap
O robots.txt bloqueia os rastreadores por trás das respostas de busca com IA
Gravidade: Alerta · Dimensão: Conteúdo e legibilidade para IA · ID da regra: ai-search-crawlers-blocked · Verificado por: Verificação do site · Esforço: pequeno
O que significa: robots.txt bloqueia um ou mais dos rastreadores que buscam páginas para respostas de IA com busca: OAI-SearchBot (busca do ChatGPT), Claude-SearchBot (Claude) e PerplexityBot (Perplexity). O problema diz quais. Esses produtos não conseguem ler o site, então não podem citá-lo nem apontar para ele. Isso é diferente dos rastreadores de treino (GPTBot, ClaudeBot, Google-Extended): bloquear esses só deixa as suas páginas fora do treino futuro de modelos, e muitos sites bloqueiam os dois grupos de uma vez sem querer. Bloqueios feitos na CDN, como um interruptor de bloqueio de bots, não estão no robots.txt e não são verificados aqui.
Como corrigir: Se você quer aparecer nas respostas de IA, remova as linhas Disallow dos rastreadores citados, ou dê a cada um o próprio grupo com Allow: /, por exemplo User-agent: OAI-SearchBot seguido de Allow: /. Você pode continuar bloqueando GPTBot, ClaudeBot e Google-Extended se não quiser o conteúdo usado em treino. Se o bloqueio for de propósito, ignore este problema.
Orientação oficial: developers.openai.com/api/docs/bots
robots.txt bloqueia rastreadores de IA
Gravidade: Alerta · Dimensão: Conteúdo e legibilidade para IA · ID da regra: ai-crawler-blocked · Verificado por: Verificação do site · Esforço: pequeno
O que significa: robots.txt impede que um ou mais rastreadores de IA leiam a página inicial. Os de busca e resposta (OAI-SearchBot, Claude-SearchBot, PerplexityBot) são um aviso importante: esses produtos não conseguem ler o site. Os de treinamento (GPTBot, ClaudeBot, Google-Extended e similares, como Applebot-Extended e CCBot) são só um aviso: bloqueá-los deixa as páginas fora do treinamento futuro e, sozinho, não tira o site das respostas de IA. O aviso diz quais. Uma recusa por Content-Signal é outra verificação. Bloqueios no CDN não estão no robots.txt e não são verificados aqui.
Como corrigir: Se você quer o site nas respostas de IA, remova o Disallow dos rastreadores de busca que o aviso cita, ou dê a cada um um grupo com Allow: /. Você pode continuar bloqueando os de treinamento; isso continua um aviso. Se o bloqueio é de propósito, ignore este aviso.
Orientação oficial: developers.openai.com/api/docs/bots
O site pede aos mecanismos de resposta de IA para não usarem as páginas
Gravidade: Alerta · Dimensão: Conteúdo e legibilidade para IA · ID da regra: content-signal-blocks-ai-answers · Verificado por: Verificação do site · Esforço: pequeno
Boa prática, não uma exigência do Google: sozinha, ela não decide o posicionamento.
O que significa: robots.txt define Content-Signal de modo que o uso para busca ou como entrada de IA está desligado (search=no ou ai-input=no) para os rastreadores que buscam páginas para respostas de IA: OAI-SearchBot, Claude-SearchBot e PerplexityBot. Esses produtos são orientados a não usar as páginas nas respostas. Bloquear só o treinamento (ai-train=no) não gera este problema.
Como corrigir: Na linha Content-Signal que vale para * ou para esses rastreadores, defina ai-input=yes e search=yes se quiser permitir o uso das páginas. Você pode manter ai-train=no. Se a recusa for de propósito, ignore este problema.
Orientação oficial: contentsignals.org
Sitemap não encontrado
Gravidade: Alerta · Dimensão: Indexabilidade · ID da regra: sitemap-missing · Verificado por: Verificação do site · Esforço: pequeno
O que significa: sitemap.xml não responde e o robots.txt não indica um. Com tantas páginas, os rastreadores precisam achar cada URL pelos links.
Como corrigir: Gere um sitemap XML a partir das rotas ou do conteúdo e acrescente uma linha Sitemap ao robots.txt. Depois envie pelo Loomaly. Você não precisa abrir o Search Console.
Orientação oficial: developers.google.com/search/docs/crawling-indexing/sitemaps/build-sitemap
O sitemap deixa de fora páginas indexáveis
Gravidade: Alerta · Dimensão: Indexabilidade · ID da regra: sitemap-stale · Verificado por: Verificação do site · Esforço: médio
O que significa: O site tem sitemap e páginas indexáveis encontradas no rastreio não estão nele. Barra final, www ou query não são outra página.
Como corrigir: Gere o sitemap da mesma fonte das rotas ou do conteúdo para as páginas novas entrarem sozinhas. Não acrescente URLs à mão. Deixe de fora login e app.
Orientação oficial: developers.google.com/search/docs/crawling-indexing/sitemaps/build-sitemap
O sitemap não é XML válido
Gravidade: Alerta · Dimensão: Indexabilidade · ID da regra: sitemap-invalid · Verificado por: Verificação do site · Esforço: médio
O que significa: Um endereço de sitemap responde com algo que não é um sitemap: em geral a própria página do site, servida por uma rota catch-all, ou um 404 onde o robots.txt diz que há um sitemap. Os rastreadores não recebem uma lista de URLs.
Como corrigir: Sirva o sitemap como XML (<urlset> ou <sitemapindex>) com tipo de conteúdo XML, e aponte o robots.txt só para URLs de sitemap que existem.
Orientação oficial: developers.google.com/search/docs/crawling-indexing/sitemaps/build-sitemap
O sitemap lista páginas que não são a versão a indexar
Gravidade: Alerta · Dimensão: Indexabilidade · ID da regra: sitemap-lists-non-canonical · Verificado por: Verificação do site · Esforço: médio
O que significa: O sitemap lista URLs que não são a versão que o Google deve indexar: elas declaram outra URL como canonical, redirecionam para outra página ou respondem com erro. O problema diz quantas, com exemplos (um redirecionamento mostra para onde vai). O Google confia menos em um sitemap quando ele discorda das páginas.
Como corrigir: Gere o sitemap a partir da mesma fonte das tags canonical, liste só URLs que respondem 200 sem redirecionar e apontam o canonical para si mesmas, e substitua caminhos antigos pelos endereços para os quais redirecionam.
Orientação oficial: developers.google.com/search/docs/crawling-indexing/sitemaps/build-sitemap
Canonicals apontam para endereços que redirecionam ou falham
Gravidade: Alerta · Dimensão: Indexabilidade · ID da regra: canonical-target-broken · Verificado por: Verificação do site · Esforço: médio
O que significa: Algumas páginas nomeiam uma URL canonical (a versão que os mecanismos de busca devem indexar) que ela mesma redireciona ou responde com erro. O problema lista cada endereço assim e o que ele respondeu, e quantas páginas o nomeiam. Os mecanismos de busca são enviados a um desvio ou a um beco sem saída, e podem ignorar o canonical ou descartar a página.
Como corrigir: Aponte cada canonical para o endereço final que responde 200: em geral a própria página, ou o lugar para o qual o endereço antigo agora redireciona. Canonicals em geral são definidos em um modelo compartilhado ou na configuração de um plugin de SEO.
Orientação oficial: developers.google.com/search/docs/crawling-indexing/consolidate-duplicate-urls
Site mobile separado sem rel="alternate"
Gravidade: Alerta · Dimensão: Indexabilidade · ID da regra: mobile-site-not-annotated · Verificado por: Verificação do site · Esforço: médio
O que significa: Celulares, inclusive o rastreador de smartphone do Googlebot, são redirecionados para um site mobile separado em outro host (o problema o nomeia). O Google pede que o par seja declarado nos dois sentidos: o canonical da página mobile aponta para a página desktop, e a página desktop tem um link rel="alternate" com um atributo media apontando para a página mobile. A página desktop não tem esse link.
Como corrigir: Em cada página desktop, adicione <link rel="alternate" media="only screen and (max-width: 640px)" href="https://m.your-site/..."> para a URL mobile dela, e mantenha o canonical da página mobile apontando de volta. Ou sirva um único site responsivo em um endereço.
Orientação oficial: developers.google.com/search/docs/crawling-indexing/mobile/mobile-sites-mobile-first-indexing
Outras versões do endereço não redirecionam de forma permanente
Gravidade: Alerta · Dimensão: Indexabilidade · ID da regra: host-variants-not-redirected · Verificado por: Verificação do site · Esforço: pequeno
O que significa: O seu site responde em mais de um endereço: a versão http://, ou a versão com ou sem www., ou mostra o próprio site ou encaminha os visitantes com um redirecionamento temporário (302 ou 307). O problema lista cada endereço e o que ele respondeu. Os mecanismos de busca então podem tratá-los como sites separados e dividir links e sinais entre eles.
Como corrigir: Faça cada outra versão responder com um redirecionamento permanente (301 ou 308) direto para o seu endereço principal, por exemplo nas configurações de domínio do host ou da CDN (na Cloudflare: Always Use HTTPS e uma regra de redirecionamento para o outro host).
Orientação oficial: developers.google.com/search/docs/crawling-indexing/301-redirects
Favicon ausente
Gravidade: Aviso · Dimensão: Fundamentos da página · ID da regra: missing-favicon · Verificado por: Verificação de regras · Esforço: pequeno
O que significa: A página não declara um favicon. O Google o mostra ao lado do seu resultado, e os navegadores o mostram em abas e favoritos.
Como corrigir: Adicione <link rel="icon" href="/favicon.ico"> (ou um ícone PNG ou SVG) ao <head>.
Orientação oficial: developers.google.com/search/docs/appearance/favicon-in-search
A página retornou status diferente de 200
Gravidade: Erro · Dimensão: Indexabilidade · ID da regra: non-200-status · Verificado por: Verificação de regras · Esforço: médio
O que significa: A página responde com um status de erro (depois de seguir quaisquer redirecionamentos), o que a tira da indexação normal. O problema mostra o código de status.
Como corrigir: Se a página deve existir, corrija o erro de servidor ou restaure a página. Se foi removida de propósito, redirecione para uma substituta, ou remova os links para ela e tire-a do sitemap.
Orientação oficial: developers.google.com/crawling/docs/troubleshooting/http-status-codes
Desempenho
| Regra | Gravidade | Dimensão | Verificado por |
|---|---|---|---|
| Largest Contentful Paint acima de 2.5s | Alerta | Desempenho | Teste de desempenho |
| Interaction to Next Paint acima de 200ms | Alerta | Desempenho | Teste de desempenho |
| Cumulative Layout Shift acima de 0.1 | Alerta | Desempenho | Teste de desempenho |
| Time to First Byte acima de 800ms | Alerta | Desempenho | Teste de desempenho |
| Pontuação de Performance do Lighthouse abaixo de 50 | Alerta | Desempenho | Teste de desempenho |
| Imagem do LCP sem carregamento prioritário | Alerta | Desempenho | Teste de desempenho |
Largest Contentful Paint acima de 2.5s
Gravidade: Alerta · Dimensão: Desempenho · ID da regra: cwv-lcp-poor · Verificado por: Teste de desempenho · Esforço: grande
O que significa: O Largest Contentful Paint, o tempo até o conteúdo principal ficar visível, passa de 2.5 segundos no celular. O Loomaly usa dados reais de usuários do Chrome quando a página tem tráfego suficiente e, caso contrário, uma medição de laboratório.
Como corrigir: Encontre o elemento que o Lighthouse mede como LCP e para onde o tempo vai. Para texto, remova CSS e JavaScript que bloqueiam a renderização, faça preload da fonte web e use font-display, e renderize no servidor. Para uma imagem, faça ela carregar primeiro (fetchpriority="high", sem lazy loading, no HTML inicial) e sirva em um formato moderno no tamanho certo. Uma resposta lenta do servidor atrasa os dois.
Orientação oficial: web.dev/articles/lcp
Interaction to Next Paint acima de 200ms
Gravidade: Alerta · Dimensão: Desempenho · ID da regra: cwv-inp-poor · Verificado por: Teste de desempenho · Esforço: grande
O que significa: O Interaction to Next Paint, a rapidez com que a página reage a toques e cliques, passa de 200 ms no celular. Isso só é reportado a partir de dados de usuários reais, então aparece em páginas com tráfego suficiente no Chrome.
Como corrigir: Quebre tarefas longas de JavaScript, adie scripts que não são necessários na hora e reduza ou atrase scripts de terceiros.
Orientação oficial: web.dev/articles/inp
Cumulative Layout Shift acima de 0.1
Gravidade: Alerta · Dimensão: Desempenho · ID da regra: cwv-cls-poor · Verificado por: Teste de desempenho · Esforço: médio
O que significa: O Cumulative Layout Shift, o quanto a página pula enquanto carrega, passa de 0.1 no celular.
Como corrigir: Defina width e height em imagens e embeds, reserve espaço para anúncios e banners e evite inserir conteúdo acima do que já está na tela.
Orientação oficial: web.dev/articles/cls
Time to First Byte acima de 800ms
Gravidade: Alerta · Dimensão: Desempenho · ID da regra: cwv-ttfb-slow · Verificado por: Teste de desempenho · Esforço: grande
O que significa: O Time to First Byte, o tempo que o servidor leva para começar a responder, passa de 800 ms. Todo o resto da página espera por ele.
Como corrigir: Coloque as páginas em cache na borda com uma CDN, acelere o servidor ou a hospedagem, ative compressão e evite redirecionamentos antes da página.
Orientação oficial: web.dev/articles/ttfb
Pontuação de Performance do Lighthouse abaixo de 50
Gravidade: Alerta · Dimensão: Desempenho · ID da regra: lighthouse-perf-low · Verificado por: Teste de desempenho · Esforço: grande
Boa prática, não uma exigência do Google: sozinha, ela não decide o posicionamento.
O que significa: A pontuação de performance do Lighthouse no celular, do Google PageSpeed Insights, está abaixo de 50. Isso em geral significa vários gargalos ao mesmo tempo.
Como corrigir: Resolva primeiro os problemas de performance específicos reportados para a mesma página; o relatório do PageSpeed Insights da URL lista mais oportunidades.
Orientação oficial: developer.chrome.com/docs/lighthouse/performance/performance-scoring
Imagem do LCP sem carregamento prioritário
Gravidade: Alerta · Dimensão: Desempenho · ID da regra: lcp-image-no-fetchpriority · Verificado por: Teste de desempenho · Esforço: pequeno
Boa prática, não uma exigência do Google: sozinha, ela não decide o posicionamento.
O que significa: O PageSpeed Insights encontrou que o maior elemento da página é uma imagem que o navegador não busca primeiro. Em um <img>, isso significa ausência de fetchpriority="high", lazy loading, ou uma imagem que só aparece depois que um script roda. Em um fundo CSS o elemento não é um <img>, então fetchpriority nele não faz nada. Corrigir a requisição muitas vezes tira de 200 a 500 ms do LCP.
Como corrigir: Se o elemento for um <img>, dê a ele fetchpriority="high", remova loading="lazy" e coloque-o no HTML que o servidor envia. Se for um fundo CSS em outro elemento, não adicione fetchpriority a esse elemento: faça preload da imagem com <link rel="preload" as="image" fetchpriority="high">, ou renderize como um <img>.
Orientação oficial: web.dev/articles/fetch-priority
Internacional
| Regra | Gravidade | Dimensão | Verificado por |
|---|---|---|---|
| Hreflang sem autorreferência | Alerta | Fundamentos da página | Verificação de regras |
| hreflang x-default ausente | Aviso | Fundamentos da página | Verificação de regras |
Hreflang sem autorreferência
Gravidade: Alerta · Dimensão: Fundamentos da página · ID da regra: hreflang-self-referential-missing · Verificado por: Verificação de regras · Esforço: médio
O que significa: A página lista as outras versões de idioma em hreflang, mas não a si mesma. Cada conjunto de hreflang precisa incluir a URL da própria página.
Como corrigir: Adicione uma entrada hreflang para o idioma da própria página que aponte para a URL dela.
Orientação oficial: developers.google.com/search/docs/specialty/international/localized-versions
hreflang x-default ausente
Gravidade: Aviso · Dimensão: Fundamentos da página · ID da regra: hreflang-x-default-missing · Verificado por: Verificação de regras · Esforço: pequeno
O que significa: O conjunto de hreflang não tem x-default, a versão de reserva para visitantes cujo idioma você não oferece.
Como corrigir: Adicione hreflang="x-default" apontando para o seletor de idioma ou a versão padrão.
Orientação oficial: developers.google.com/search/docs/specialty/international/localized-versions
Acessibilidade
| Regra | Gravidade | Dimensão | Verificado por |
|---|---|---|---|
Atributo lang ausente em <html> | Alerta | Fundamentos da página | Verificação de regras |
Atributo lang ausente em <html>
Gravidade: Alerta · Dimensão: Fundamentos da página · ID da regra: missing-html-lang · Verificado por: Verificação de regras · Esforço: pequeno
Boa prática, não uma exigência do Google: sozinha, ela não decide o posicionamento.
O que significa: O elemento <html> não tem o atributo lang, então leitores de tela e ferramentas de tradução não sabem em que idioma a página está.
Como corrigir: Defina o código de idioma da página, por exemplo <html lang="en">, lang="de" ou lang="zh-CN".
Orientação oficial: developer.mozilla.org/en-US/docs/Web/HTML/Reference/Global_attributes/lang