Leonardo Pereira
SEO9 min de leitura

Dados Estruturados para E-commerce: Schema.org na Prática

Como implementar dados estruturados (Schema.org) em lojas virtuais: os tipos mais importantes para e-commerce, como geram rich snippets no Google, como implementar corretamente e como validar sem erros.

Leonardo Pereira

Especialista VTEX · 8 de junho de 2026

Dados estruturados são um dos fatores de SEO com melhor relação esforço/resultado que existe: não mudam sua posição no Google, mas podem aumentar dramaticamente o CTR (taxa de clique) da sua listagem — com estrelas de avaliação, preço, disponibilidade e outras informações diretamente no SERP.

Para e-commerce, a implementação correta de Schema.org é obrigatória para competir em qualidade de resultado nos buscadores.

O que são dados estruturados?

Dados estruturados são metadados adicionados ao HTML de uma página para descrever o conteúdo de forma que mecanismos de busca possam entender diretamente — sem precisar interpretar o texto da página.

O formato mais recomendado atualmente é JSON-LD (JavaScript Object Notation for Linked Data), injetado em uma tag <script type="application/ld+json"> no <head> da página. O vocabulário padrão é o Schema.org, mantido por Google, Bing e Yahoo em conjunto.

Quando o Google entende os dados estruturados de uma página, pode exibir rich results (resultados enriquecidos) — que se destacam visualmente no SERP e aumentam o CTR mesmo sem mudança de posição.

Os tipos de Schema.org essenciais para e-commerce

1. Product (Produto) — o mais importante

O tipo Product nas páginas de produto (PDP) habilita rich results com:

  • Estrelas de avaliação e número de avaliações
  • Faixa de preço (para produtos com variantes)
  • Disponibilidade (Em estoque / Esgotado)
  • Imagem do produto em destaque
{
  "@context": "https://schema.org",
  "@type": "Product",
  "name": "Tênis Nike Air Max 270",
  "image": "https://exemplo.com/tenis-nike.jpg",
  "description": "Tênis masculino com amortecimento Air Max...",
  "brand": { "@type": "Brand", "name": "Nike" },
  "sku": "NK-AM270-42",
  "offers": {
    "@type": "Offer",
    "price": "599.90",
    "priceCurrency": "BRL",
    "availability": "https://schema.org/InStock",
    "url": "https://exemplo.com/tenis-nike-air-max-270"
  },
  "aggregateRating": {
    "@type": "AggregateRating",
    "ratingValue": "4.7",
    "reviewCount": "128"
  }
}

Campos obrigatórios para rich results de produto: name, image, offers com price e priceCurrency.

Erro comum: declarar price como string com vírgula decimal ("599,90") em vez de ponto ("599.90") — o Google rejeita o formato brasileiro.

2. BreadcrumbList (Trilha de navegação)

O BreadcrumbList faz o caminho de navegação aparecer diretamente no resultado de busca (Home > Calçados > Tênis > Nike Air Max 270). Aumenta o CTR porque o usuário vê a categoria do produto antes de clicar.

{
  "@context": "https://schema.org",
  "@type": "BreadcrumbList",
  "itemListElement": [
    { "@type": "ListItem", "position": 1, "name": "Home", "item": "https://exemplo.com" },
    { "@type": "ListItem", "position": 2, "name": "Calçados", "item": "https://exemplo.com/calcados" },
    { "@type": "ListItem", "position": 3, "name": "Tênis Nike Air Max 270", "item": "https://exemplo.com/calcados/tenis-nike-air-max-270" }
  ]
}

3. FAQPage (Perguntas Frequentes)

Em páginas de categoria ou de produto com perguntas frequentes, o FAQPage pode exibir as perguntas e respostas expandidas diretamente no SERP — ocupando significativamente mais espaço visual na página de resultados.

Quando usar: em páginas que já têm uma seção de FAQ visível para o usuário. Nunca implementar FAQ schema em páginas sem o conteúdo correspondente no HTML — o Google penaliza.

4. Organization / LocalBusiness (Homepage)

Na homepage, Organization ou LocalBusiness ajuda o Google a criar um painel de conhecimento (knowledge panel) para a marca — especialmente útil para buscas pelo nome da loja.

5. ItemList (Páginas de categoria)

O tipo ItemList em páginas de categoria descreve a lista de produtos apresentada, permitindo que o Google mostre os produtos individualmente nos resultados de busca para queries de categoria.

Como implementar em lojas VTEX

Em VTEX IO, a implementação mais robusta é via componentes React customizados que injetam o JSON-LD correto baseado nos dados do produto vindos da query GraphQL da PDP.

O VTEX IO já tem algumas implementações de dados estruturados nativas (via vtex.structured-data), mas costumam ser incompletas — faltam campos como aggregateRating, variantes de preço e disponibilidade correta.

Para projetos que exigem dados estruturados completos e válidos, desenvolvo um componente customizado que:

  1. Lê os dados do produto via query GraphQL do VTEX IO
  2. Constrói o JSON-LD com todos os campos obrigatórios e opcionais
  3. Injeta no <head> da PDP via useScript ou <Helmet>

Como validar dados estruturados

Ferramentas essenciais para validar antes e após a implementação:

  • Rich Results Test (search.google.com/test/rich-results) — verifica se a página é elegível para rich results e mostra erros e avisos
  • Schema Markup Validator (validator.schema.org) — valida a sintaxe do JSON-LD
  • Google Search Console > Aprimoramentos — monitoramento em escala de erros de dados estruturados em todas as páginas

Erros mais comuns que o Google rejeita:

  • price com vírgula em vez de ponto
  • availability com valor de texto livre em vez de URL Schema.org
  • reviewCount igual a 0 (o Google exige pelo menos 1 review para exibir estrelas)
  • Dados inconsistentes entre o JSON-LD e o conteúdo visível na página

Implemento dados estruturados completos como parte do serviço de SEO técnico para VTEX. Conheça o serviço de SEO para VTEX ou fala comigo.