Content Marketing

Dados Estruturados (Schema Markup): Como Implementar para SEO e GEO [2026]

Time da MarfinTime da Marfin17 min de leitura
Dados Estruturados (Schema Markup): Como Implementar para SEO e GEO [2026]

TL;DR

  • Dados estruturados em JSON-LD explicam a página para Google, Bing e assistentes de IA, e deixam o site apto a rich results como estrelas, preço e trilha de navegação.

Levar para a IA

Leve este artigo para o ChatGPT, o Claude ou a sua IA preferida.

Dados estruturados são o jeito mais direto de explicar o seu site para uma máquina. Um bloco de JSON-LD diz ao Google que aquela página vende um produto, que ele custa R$ 189,90, tem nota 4,7 em 312 avaliações e está em estoque. Em 2026, quem lê esse bloco vai além do Googlebot: a Microsoft já confirmou que o schema ajuda os modelos de linguagem do Bing e do Copilot a entender o conteúdo das páginas.

Na Marfin, todo artigo deste blog sai com schema BlogPosting gerado no servidor. Custa pouco, roda sozinho e tira da máquina o trabalho de adivinhar.

Este guia mostra o que mudou nos rich results entre 2023 e 2026, quais tipos de schema markup ainda valem o esforço, como o schema entra numa estratégia de GEO e o passo a passo para implementar, validar e monitorar. Tem código pronto para copiar, a tabela de custos das ferramentas e os erros que mais encontramos em auditoria.

O que são dados estruturados e como o schema markup funciona

Dados estruturados são informações organizadas num formato padrão, que qualquer sistema lê sem ambiguidade. A frase "o curso começa dia 12 e custa 497 reais" é óbvia para uma pessoa e nebulosa para um robô, que precisa deduzir o que é data, o que é preço e a que coisa os dois se referem. Com dados estruturados, cada informação ganha um rótulo, como startDate, price e priceCurrency, e o robô lê o dado direto, sem dedução.

O vocabulário mais usado para esses rótulos é o Schema.org, criado em 2011 por Google, Bing, Yahoo e Yandex para que os buscadores falassem a mesma língua. Schema markup é o nome do código que aplica esse vocabulário na página. Hoje o Schema.org tem cerca de 800 tipos, de Article a Volcano, e mais de 1.400 propriedades.

Na prática, um site comum resolve quase tudo com seis ou sete tipos, e são eles que aparecem ao longo deste guia.

JSON-LD, Microdata e RDFa

Existem três formatos para escrever schema markup. Microdata e RDFa espalham atributos dentro das tags HTML, como um itemprop="price" num span de preço. JSON-LD junta tudo num bloco script separado, escrito em JSON, que pode ficar no head ou no body da página.

O Google recomenda JSON-LD, e nós seguimos a mesma linha. Ele é mais fácil de gerar por template, de revisar num pull request e de manter quando o layout muda, porque o design pode ser refeito inteiro sem tocar no markup. Microdata ainda aparece em temas antigos de WordPress e em lojas virtuais mais velhas, e funciona, com a desvantagem de quebrar sempre que alguém mexe no HTML.

Este é um bloco Organization mínimo, que serve para quase qualquer empresa:

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Organization",
  "@id": "https://www.suaempresa.com.br/#organization",
  "name": "Sua Empresa",
  "url": "https://www.suaempresa.com.br",
  "logo": "https://www.suaempresa.com.br/logo.png",
  "taxID": "00.000.000/0001-00",
  "sameAs": [
    "https://www.linkedin.com/company/suaempresa",
    "https://www.instagram.com/suaempresa"
  ]
}
</script>

Ele vai na home ou na página Sobre. O sameAs liga o site aos perfis oficiais, e o taxID registra o CNPJ da empresa.

O que os dados estruturados fazem pelo SEO em 2026

O efeito mais visível dos dados estruturados é o rich result, que o Google chama em português de resultado aprimorado. São as estrelas de avaliação, o preço e a disponibilidade, a trilha de navegação no lugar da URL, a data do evento, o tempo de preparo da receita e a miniatura do vídeo. Esses elementos ocupam mais espaço na página de resultados e chamam o olho antes do título azul.

O Google repete há anos que schema fica fora da lista de fatores de ranqueamento. O ganho entra pelo clique: um resultado com preço e estrelas, na mesma posição de um concorrente sem nada disso, tende a levar mais tráfego, porque responde parte da dúvida antes da visita. Se você está começando agora, vale ler antes nosso guia sobre o que é SEO e como ele funciona, porque schema rende mais em quem já tem a base resolvida.

O segundo efeito aparece menos e, para nós, interessa mais. Dados estruturados ajudam o buscador a entender entidades: quem é a empresa, quem escreveu o artigo, qual produto está à venda, onde fica a loja física. Esse entendimento alimenta o Knowledge Graph, o painel de conhecimento da marca e, cada vez mais, as respostas geradas por IA. Por isso tratamos schema como parte do SEO técnico, ao lado de sitemap, canonical e velocidade.

Markup correto deixa a página apta ao rich result, e o Google decide caso a caso se mostra o destaque.

O que saiu da busca entre 2023 e 2026

Quem implementou schema em 2021 e nunca mais olhou provavelmente tem markup que o Google parou de exibir. Em agosto de 2023, o FAQ rich result ficou restrito a sites de governo e saúde, e o HowTo sumiu da busca no mês seguinte. Em junho de 2025, o Google anunciou o fim do destaque para seis tipos pouco usados: Course Info, Claim Review, Estimated Salary, Learning Video, Special Announcement e Vehicle Listing. Em janeiro de 2026 foi a vez do Practice Problem.

A mudança mais recente encerrou o FAQ de vez. Desde 7 de maio de 2026, o Google deixou de exibir FAQ rich results para qualquer site, e o relatório do Search Console e o suporte no teste oficial para esse tipo foram removidos em junho.

Se o seu site tem FAQPage, pode deixar o markup onde está. O Google continua lendo esse tipo para entender a página, e outros buscadores também usam.

Os tipos que seguem com suporte oficial costumam estar ligados a algo concreto: Product, Review snippet, Breadcrumb, Article, Organization, LocalBusiness, Event, Recipe, VideoObject, JobPosting e SoftwareApplication. Antes de cada implementação, consultamos a galeria de dados estruturados da Central da Pesquisa do Google, porque a lista muda com pouco aviso.

Dados estruturados para GEO: o que muda com a busca por IA

GEO, sigla de generative engine optimization, é o trabalho de fazer sua marca aparecer nas respostas do ChatGPT, do Gemini, do Perplexity, do Copilot e do AI Mode do Google. O conceito completo está no nosso guia de GEO e otimização para mecanismos generativos. Aqui o foco é uma pergunta que recebemos toda semana: schema ajuda a ser citado por IA?

A resposta honesta em novembro de 2026: ajuda a ser entendido, e ainda há pouca evidência de que aumente citações sozinho.

A Microsoft foi a única grande empresa a falar abertamente sobre o assunto. Em março de 2025, na SMX Munich, Fabrice Canel, gerente de produto do Bing, afirmou que o schema markup ajuda os LLMs da empresa a entender o conteúdo das páginas. Como o Copilot se apoia no índice do Bing, esse é o argumento mais concreto que existe hoje a favor de schema para IA.

O Google segue outra linha. A documentação sobre recursos de IA na busca diz que AI Overviews e AI Mode dispensam markup especial e que valem as mesmas boas práticas do SEO tradicional, incluindo a exigência de que os dados estruturados batam com o texto visível. Um teste controlado da Ahrefs, que comparou páginas antes e depois de receberem JSON-LD com um grupo de controle, também ficou sem ganho significativo de citação no ChatGPT e no AI Mode.

Nossa leitura prática: schema é infraestrutura de entendimento. Ele deixa explícito quem é o autor, qual é a empresa, quanto custa o produto e quando o conteúdo foi atualizado, dados que aparecem o tempo todo em respostas de IA. Conteúdo útil, autoridade e menções em outros sites continuam puxando a citação, e o schema aumenta a chance de que, quando a IA usar a sua página, ela use os números certos.

O detalhe que quase todo mundo esquece: JavaScript

Aqui mora o erro que mais encontramos em sites novos. Uma análise publicada pela Vercel com a MERJ no fim de 2024 mostrou que os crawlers da OpenAI e da Anthropic baixam arquivos JavaScript e param por aí, sem executar o código. O Googlebot renderiza a página, enquanto o GPTBot e o ClaudeBot leem só o HTML que o servidor entrega.

Na prática, schema injetado pelo Google Tag Manager ou por um componente React renderizado só no navegador funciona para o Google e fica invisível para boa parte dos assistentes de IA. Isso pega em cheio os apps feitos com vibe coding, que costumam nascer como SPA em React e Vite e entregam um HTML quase vazio na primeira resposta.

A regra que seguimos: o JSON-LD precisa estar no HTML que o servidor responde. Para conferir, rode este comando na URL que você quer testar:

curl -s https://www.seusite.com.br | grep -c "application/ld+json"

Se o comando devolver zero, o markup depende de JavaScript para existir, ou ainda nem foi implementado.

Quais tipos de schema markup usar em cada tipo de site

Escolher o tipo certo rende mais do que encher a página de markup. Este é o mapa que usamos nos projetos da Marfin.

Blog e site de conteúdo

Cada post leva Article ou BlogPosting, com headline, image, datePublished, dateModified e author apontando para uma página de autor marcada como Person. A home recebe Organization com logo e sameAs, e todas as páginas internas ganham BreadcrumbList, que troca a URL crua por uma trilha legível no resultado da busca.

O autor ganhou peso com as diretrizes de E-E-A-T e com a busca por IA. Uma página de autor com Person, cargo, foto e links para LinkedIn e publicações anteriores ajuda a ligar o conteúdo a alguém com histórico verificável.

Loja virtual

Toda página de produto leva Product com Offer, incluindo price, priceCurrency em BRL, availability e, se houver avaliações reais de clientes na página, aggregateRating. Para aparecer nas listagens de comerciante do Google, inclua também shippingDetails e hasMerchantReturnPolicy. A política de devolução pode ser declarada uma vez no bloco Organization, sem repetir produto a produto.

{
  "@context": "https://schema.org",
  "@type": "Product",
  "name": "Tênis de Corrida Leve 2",
  "image": "https://www.sualoja.com.br/img/tenis-leve-2.jpg",
  "sku": "TCL2-42-AZ",
  "brand": { "@type": "Brand", "name": "Sua Marca" },
  "aggregateRating": {
    "@type": "AggregateRating",
    "ratingValue": "4.7",
    "reviewCount": "312"
  },
  "offers": {
    "@type": "Offer",
    "price": "189.90",
    "priceCurrency": "BRL",
    "availability": "https://schema.org/InStock",
    "url": "https://www.sualoja.com.br/tenis-leve-2"
  }
}

Repare que o preço usa ponto como separador decimal, mesmo em loja brasileira. Vírgula ali gera erro de validação.

Negócio local

Use LocalBusiness ou um subtipo mais específico, como Restaurant, Dentist ou AutoRepair, com endereço completo, telefone, horário em openingHoursSpecification e coordenadas em geo. Os dados precisam bater letra por letra com o Perfil da Empresa no Google, inclusive a grafia do nome e o formato do telefone. O resto da estratégia para buscas da região está no guia de SEO local.

SaaS e aplicativo

Produto digital pede SoftwareApplication, com applicationCategory, operatingSystem e offers com o preço do plano de entrada, mais Organization com contactPoint para suporte. Se o produto tem boas notas no G2 ou na Capterra, deixe essas notas fora do seu markup. As diretrizes do Google proíbem agregar avaliações vindas de outros sites, e esse é um dos motivos mais comuns de estrela sumindo do resultado.

Como implementar dados estruturados passo a passo

O processo que seguimos tem cinco etapas e funciona do mesmo jeito em WordPress, Shopify, Next.js ou site gerado com IA.

Etapa 1: mapeie os templates do site

Schema se implementa por template. Liste os modelos de página do site, como home, post, categoria, produto, autor e contato, e defina numa planilha o tipo e as propriedades de cada um. Um blog com 400 posts costuma ter quatro ou cinco templates para marcar, e o trabalho cabe numa tarde.

Etapa 2: gere o JSON-LD a partir dos dados reais

Cada propriedade do markup deve sair da mesma fonte que alimenta o conteúdo visível: o título do banco de dados, o preço do catálogo, a data de atualização do CMS. Markup com valor digitado à mão desatualiza na primeira mudança de preço e vira divergência entre o que o usuário vê e o que o robô lê.

É nesta etapa que o Claude Code, a ferramenta de IA que mais usamos na Marfin, mais economiza tempo. Pedimos que ele leia o template, consulte a documentação do tipo na Central da Pesquisa e escreva o componente de JSON-LD já ligado às variáveis certas. Depois pedimos uma auditoria, em que ele compara o markup de cada template com o conteúdo visível e aponta divergências. Ajustes finos nesses componentes, no dia a dia de building, acontecem no Cursor.

function JsonLd({ post }: { post: Post }) {
  const data = {
    "@context": "https://schema.org",
    "@type": "BlogPosting",
    headline: post.title,
    description: post.excerpt,
    image: post.coverImage,
    datePublished: post.publishedAt,
    dateModified: post.updatedAt,
    author: { "@type": "Person", name: post.author.name, url: post.author.url },
    publisher: { "@type": "Organization", name: "Marfin", url: "https://marfin.co" },
  };

  const json = JSON.stringify(data).replace(/</g, "\\u003c");

  return (
    <script type="application/ld+json" dangerouslySetInnerHTML={{ __html: json }} />
  );
}

Este é o componente que roda no Blog da Marfin, em Next.js. Ao revisar o código para escrever este guia, notamos que faltavam dateModified e a url do autor, e a versão acima mostra como fica com os dois. O replace troca o caractere < por \u003c, o que impede que um título contendo </script> encerre a tag antes da hora.

Etapa 3: publique o markup no HTML do servidor

Em WordPress, o Yoast SEO e o Rank Math geram Article, Organization, BreadcrumbList e WebSite automaticamente, a partir das configurações do plugin. O Rank Math deixa escolher o tipo de schema post a post já na versão gratuita, o que ajuda em páginas de evento ou serviço.

No Shopify, os temas oficiais já trazem Product, e o ponto de atenção são os apps de avaliação, que às vezes criam um segundo bloco. Em Next.js, Astro ou qualquer framework com renderização no servidor, o caminho é o script inline do exemplo acima.

Em apps criados com Lovable ou outras plataformas de vibe coding, o risco é o JavaScript. Esses projetos costumam nascer como SPA, então coloque o JSON-LD da home direto no index.html e use pré-renderização ou SSR para as páginas internas, que precisam de markup próprio.

Etapa 4: valide antes e depois do deploy

Duas ferramentas gratuitas resolvem a validação. O Teste de pesquisa aprimorada do Google mostra se a página está apta a rich results e aponta propriedades obrigatórias ausentes. O Schema Markup Validator, mantido pelo Schema.org, confere o vocabulário inteiro, inclusive tipos que o Google deixou de exibir, como o FAQPage.

Rodamos os dois em uma URL de cada template antes do deploy e repetimos na URL publicada, depois de limpar o cache.

Etapa 5: monitore no Search Console

Depois do deploy, os relatórios de melhorias do Google Search Console mostram, para cada tipo de schema, quantas páginas estão válidas, quantas têm aviso e quantas têm erro. Erro tira a página da elegibilidade. Aviso indica propriedade recomendada ausente e pode esperar. No relatório de desempenho, o filtro de aparência na pesquisa separa os cliques de páginas com rich result, e é ali que medimos se o trabalho trouxe resultado.

Erros de schema markup que mais encontramos em auditorias

O primeiro é markup que descreve algo ausente da página. Estrelas no schema sem avaliações visíveis, perguntas marcadas como FAQ escondidas do visitante, preço no JSON diferente do preço na tela. O Google trata isso como spam e pode aplicar uma ação manual por dados estruturados, que tira os rich results do domínio inteiro.

O segundo é a autoavaliação. Desde 2019, o Google ignora estrelas de LocalBusiness e Organization quando a própria empresa publica notas sobre si mesma no site.

O terceiro é duplicação. Tema, plugin de SEO e app de avaliação gerando três blocos Product diferentes na mesma página confundem o parser, e o Google pode escolher justamente o bloco errado, com preço antigo ou sem estoque.

O quarto é data maquiada. Atualizar dateModified a cada deploy sem mudar o texto é truque conhecido, e os buscadores cruzam a data do markup com a data visível e com o histórico de rastreamento. Mude a data quando o conteúdo mudar de verdade.

O quinto é a falta de ligação entre entidades. Article com author só com nome, sem url, e Organization sem sameAs deixam o buscador sem pista para conectar os pontos. A solução é usar @id, um identificador fixo que referencia a mesma entidade em blocos e páginas diferentes.

Preços e planos das ferramentas de dados estruturados

A maior parte do trabalho com dados estruturados sai de graça. O custo aparece em plugin premium, em plataforma enterprise ou no tempo de desenvolvimento.

FerramentaPreçoPara que serve
Teste de pesquisa aprimorada (Google)GrátisChecar elegibilidade a rich results
Schema Markup ValidatorGrátisValidar o vocabulário Schema.org completo
Google Search ConsoleGrátisMonitorar erros e CTR por tipo de schema
Yoast SEOGrátis, Premium por cerca de US$ 119/ano por siteSchema automático em WordPress
Rank MathGrátis, Pro entre US$ 6 e US$ 9/mês no plano anualSchema automático e por post em WordPress
Schema AppSob consultaSchema em escala para sites grandes
Claude CodeIncluído no Claude Pro, US$ 20/mêsGerar e auditar JSON-LD no código

Preços em dólar, sem impostos, conferidos em novembro de 2026. Plugins mudam valores com promoções frequentes, então confira a página oficial antes de assinar.

Para blog ou site institucional, o pacote gratuito resolve tudo. Loja com milhares de SKUs, ou site com várias marcas e idiomas, justifica ferramenta paga ou um componente próprio bem testado, que costuma sair mais barato no longo prazo.

7 dicas para acertar nos dados estruturados

1. Comece por Organization e BreadcrumbList. Os dois valem para qualquer site, levam meia hora e dão ao Google a base da sua entidade e da arquitetura de páginas. Só depois parta para os tipos específicos do negócio.

2. Gere o markup a partir dos dados da página. Template ligado ao CMS ou ao banco evita divergência entre o que o usuário vê e o que o robô lê.

3. Teste com curl, além do navegador. O crawler de IA recebe o HTML cru. Se o JSON-LD aparece só depois que o JavaScript roda, ele fica fora do alcance de boa parte dos assistentes.

4. Use @id para ligar entidades. Defina um @id fixo para a organização e para cada autor e referencie esse identificador nos outros blocos. O grafo fica coerente entre páginas, e o buscador para de tratar cada menção como uma entidade nova.

5. Marque só o que está visível. Toda informação do markup precisa existir na página, para qualquer visitante. Divergência aqui é o caminho mais curto para uma ação manual.

6. Revise o markup a cada troca de tema ou plugin. Mudança de tema é a causa mais comum de schema sumindo ou duplicando da noite para o dia. Inclua o Teste de pesquisa aprimorada no checklist de qualquer deploy de layout.

7. Acompanhe o CTR, além da contagem de páginas válidas. Página válida no relatório é só metade do caminho. O indicador que paga a conta é o CTR filtrado por aparência na pesquisa, comparado com o período anterior à implementação.

Dados estruturados são uma das poucas tarefas de SEO com custo baixo, resultado mensurável e efeito que chega às buscas por IA. Uma tarde por template resolve a maior parte dos sites, e a manutenção cabe numa checagem semanal no Search Console.

Para começar hoje, rode curl na sua home e procure application/ld+json. O que aparecer ali é o que as máquinas leem de forma estruturada sobre a sua empresa.


Leia também:

▸ THE_DOWNLOAD.SUBSCRIBE

Carregue a semana.
Instale na segunda.

Um digest do blog da Marfin. Todo sábado.

Grátis. Eject quando quiser.

A Marfin é uma venture builder de empresas tech.

Quer conhecer nossos serviços e produtos?