rochasolutions
SEO

Dados Estruturados: Como Implementar Schema.org no Site

Danilo Rocha6 min de leitura

O que são dados estruturados

Dados estruturados são um bloco de código, quase sempre em formato JSON-LD, que descreve o conteúdo de uma página numa linguagem que o buscador e a IA generativa leem sem precisar interpretar o HTML visual. Eles não mudam o que aparece na tela para quem visita o site: mudam o que a máquina entende sobre aquilo que já está lá.

O vocabulário mais usado para escrever esse bloco é o Schema.org, um padrão mantido em conjunto por Google, Bing e outras empresas de busca. Um artigo de blog, por exemplo, pode declarar o tipo BlogPosting e preencher campos como headline, datePublished e author. O trecho abaixo mostra o formato básico:

{
  "@context": "https://schema.org",
  "@type": "BlogPosting",
  "headline": "Dados Estruturados: Como Implementar Schema.org no Site",
  "datePublished": "2026-09-23",
  "author": {
    "@type": "Person",
    "name": "Danilo Rocha"
  },
  "inLanguage": "pt-BR"
}

Esse bloco entra dentro de uma tag <script type="application/ld+json"> no <head> da página. Ele não substitui o conteúdo visível, é uma camada a mais em cima dele.

Por que dados estruturados importam para SEO e para GEO

Dados estruturados importam porque decidem se a página ganha um rich snippet no resultado de busca e se um assistente de IA consegue citar a informação com segurança, em vez de adivinhar o que cada trecho da página significa. Sem essa marcação, o buscador ainda lê o texto, mas trata tudo como parágrafo comum.

Com a marcação certa, um artigo pode ganhar estrela de avaliação, um produto pode mostrar preço e disponibilidade direto no resultado, e uma página de perguntas frequentes pode aparecer com o dropdown de respostas já expandido na busca. Cada um desses elementos aumenta a taxa de clique porque entrega informação antes mesmo do usuário abrir a página.

O mesmo dado que ajuda o Google também ajuda um assistente como ChatGPT ou Perplexity a confirmar quem escreveu o conteúdo, quando foi publicado e qual é o assunto central, sem depender de inferência sobre o layout da página. Essa é a mesma lógica que discutimos em GEO: como otimizar conteúdo para ser citado por IA: a IA extrai trechos, não a página inteira, e dado estruturado reduz a chance de extração errada.

Quais tipos de Schema.org usar em cada página

O tipo certo depende do que a página já mostra, nunca do que você gostaria que ela mostrasse. Usar um tipo que não corresponde ao conteúdo visível é o motivo mais comum de penalização manual por marcação enganosa.

Os tipos que cobrem a maior parte de um site institucional ou de conteúdo:

  • Article ou BlogPosting: para post de blog ou notícia, com headline, datePublished e author.
  • Product: para página de produto, com preço, moeda e disponibilidade em estoque.
  • FAQPage: para uma seção de perguntas e respostas que já aparece por extenso na página, nunca perguntas inventadas só para ganhar o snippet.
  • Organization: dado fixo da empresa, como nome, logo e perfis de rede social, útil em praticamente toda página do site.
  • BreadcrumbList: a trilha de navegação, quando o site já exibe esse caminho na interface.

Uma página pode combinar mais de um tipo. Um artigo de blog com uma seção de perguntas no fim, por exemplo, declara BlogPosting e FAQPage no mesmo <script>, desde que as duas coisas existam de fato no conteúdo visível.

Como implementar dados estruturados passo a passo

Implementar em um projeto que nunca teve essa marcação segue uma sequência simples, que evita o erro mais comum: publicar um bloco que descreve algo que a página não mostra.

  1. Escolha o tipo de Schema.org que corresponde exatamente ao que a página já exibe. Consulte a lista de tipos em schema.org antes de decidir.
  2. Liste os campos obrigatórios e recomendados daquele tipo, e preencha só com dado que existe de verdade na página. Campo vazio é melhor que campo inventado.
  3. Monte o JSON-LD e insira via <script type="application/ld+json">. Em um projeto Next.js com App Router, isso entra direto no componente de layout ou de página, sem precisar de biblioteca externa para o caso mais simples.
  4. Rode o Rich Results Test do Google colando a URL da página publicada, antes de considerar o trabalho pronto.
  5. Publique e acompanhe o relatório de aprimoramentos no Search Console nas semanas seguintes, porque a validação sintática não garante que o Google vai efetivamente exibir o rich snippet.

O mesmo raciocínio de medir com dado real, em vez de confiar só na ferramenta de validação, aparece em SEO técnico: o que é e como implementar no site: a ferramenta confirma que o formato está correto, não que o resultado apareceu na busca.

Como validar dados estruturados sem quebrar o rich snippet

Validar dados estruturados significa confirmar dois níveis: se o JSON-LD está com sintaxe correta e se o Google efetivamente reconhece aquele bloco como elegível para rich snippet. Os dois níveis usam ferramentas diferentes.

O Rich Results Test verifica sintaxe e mostra uma prévia de como o snippet apareceria na busca, direto a partir da URL pública da página. Já o relatório de aprimoramentos dentro do Search Console mostra o que o Google realmente indexou ao longo do tempo, incluindo erros de campo ausente que só aparecem depois de várias páginas rastreadas.

Um erro de sintaxe faz o Google ignorar o bloco inteiro, não só o campo com problema. Por isso vale testar antes de publicar, e testar de novo sempre que o template da página mudar, porque uma alteração no componente que gera o HTML pode quebrar o script sem nenhum aviso visual na página.

Erros comuns que fazem o Google ignorar a marcação

O erro mais caro é declarar um dado que não está visível na página para o usuário comum, como uma nota de avaliação que não aparece em lugar nenhum do conteúdo. O Google trata isso como marcação enganosa, e a penalização manual para esse tipo de caso costuma remover o rich snippet do domínio inteiro, não só da página específica.

Outros dois erros aparecem com frequência: preencher um campo obrigatório com valor genérico só para passar na validação, como uma data de publicação fixa copiada de outro artigo, e esquecer de atualizar o JSON-LD quando o conteúdo da página muda, deixando a marcação dessincronizada do que está escrito.

Dados estruturados não são um checklist de SEO para marcar uma vez e esquecer. Eles descrevem a página como ela é hoje, e cada mudança relevante no conteúdo pede uma checagem rápida no bloco correspondente. Se o seu site ainda não tem essa camada implementada, fale com a gente para revisar o que faz sentido priorizar primeiro.