Voltar ao blog
SEO & GEO

Schema de produto para e-commerce: o que o Google exige e o que a maioria das lojas deixa de fora

O que o schema de produto precisa ter para o Google e para as compras com IA, quais campos 103 lojas Shopify deixam de fora e como corrigir GTINs, políticas e blocos duplicados.

Compartilhar
Resumir com

O schema de produto é o bloco oculto de dados estruturados de uma página de produto que diz às máquinas o que a página vende: o nome, o preço, o estoque, o código de barras, a marca. O Google lê esse bloco para os resultados de produtos, o Merchant Center compara o seu feed com ele, e os agentes de compras com IA leem esse bloco quando olham a sua página. O comprador nunca vê, e é exatamente por isso que ele dá errado sem ninguém perceber.

Para ver o que as lojas de fato colocam nele, baixei 2.629 páginas de produto de lojas Shopify consolidadas, em seis categorias, e li a marcação no HTML que cada página envia. 182 delas não tinham schema de produto em JSON-LD, o formato que o Google recomenda: 108 não tinham bloco de produto nenhum, 36 tinham apenas um bloco que não era JSON válido e 38, todas de três lojas, usavam o formato mais antigo de microdados. Os números abaixo cobrem as 2.447 páginas de 103 lojas que tinham o schema. Resumindo: os temas acertam o básico em quase todas as páginas. Os campos que faltam são justamente os que tornam um produto elegível para resultados mais ricos e que permitem ao Google associá-lo ao mesmo produto em outros lugares. As regras do Google valem para qualquer plataforma. Uso a Shopify nas correções passo a passo porque é de lá que vêm os meus dados.

Resumo
  • O Google exige só três coisas: um nome, uma imagem e uma oferta com preço e moeda. 98% das páginas com schema de produto tinham as três.
  • As lacunas estão nos campos recomendados. Só 43% das páginas traziam GTIN, 15% uma política de devolução e 13% detalhes de frete na marcação de produto.
  • O código de barras costuma se perder no caminho. Quando um produto tinha um código de barras válido na Shopify, o schema só o mostrava em 62% dos casos. Os temas que usam o filtro de dados estruturados da própria Shopify o repassavam quase sempre.
  • Um quarto das páginas tem dois blocos de produto. 24% das páginas tinham mais de um, muitas vezes um do tema e outro de um app, e alguns discordavam no preço.
  • Coloque frete e devolução no nível da loja. O Google recomenda uma política para a loja inteira, e as configurações no Search Console ou no Merchant Center têm prioridade sobre a marcação.
  • Schema sozinho não faz um produto ser escolhido. Nas compras com IA, o feed decide a lista de finalistas e a página precisa contar a mesma história.

O que é schema de produto e o que o Google exige?

Schema de produto são dados estruturados, normalmente escritos em JSON-LD numa tag script no HTML da página, que descrevem o produto com o vocabulário do schema.org. O Google usa esses dados para dois tipos de resultado. Os snippets de produto são para páginas em que o comprador não consegue comprar o produto diretamente, como páginas de review, e precisam de uma nota, uma avaliação ou uma oferta. As listagens de comerciante são para páginas em que o comprador consegue comprar o produto, ou seja, toda página de produto de loja.

Para uma listagem de comerciante, o Google exige:

  • name, image e offers no Product.
  • price e priceCurrency na Offer.

Todo o resto é recomendado: disponibilidade, marca, descrição, GTIN, MPN, SKU, condição, cor, tamanho, material, notas, avaliações, detalhes de frete e política de devolução. Na prática, "recomendado" não quer dizer opcional. São esses os campos que permitem ao Google associar o seu produto ao mesmo produto em outros sites, mostrar custo de frete e prazo de devolução nos resultados e confiar que a página e o feed dizem a mesma coisa. O Google diz isso com todas as letras: ter dados estruturados nas páginas e um feed no Merchant Center maximiza a sua elegibilidade.

Veja o que as 2.447 páginas traziam:

Quais campos as páginas de produto da Shopify colocam no schema Product, em 2.447 páginas de 103 lojas: nome 100%, imagem 99%, preço e moeda 99%, disponibilidade 99%, marca 99%, descrição 92%, SKU 86%, GTIN 43%, nota 42%, condição 34%, MPN 32%, política de devolução 15%, detalhes de frete 13%

O que os temas da Shopify já fazem certo

Os campos obrigatórios e os primeiros recomendados estão em quase todas as páginas. Nome, imagem, preço, moeda e disponibilidade apareciam em 99% das páginas, e a marca também em 99%, mas na Shopify a marca costuma ser o campo de fornecedor (vendor) do produto, então confira se o seu fornecedor é mesmo a marca. Em pelo menos 8 das lojas, esse campo trazia algo como uma estação, uma linha de produtos ou um texto provisório. E um campo estar lá não significa que diga muita coisa: o nome é o que estiver no título do produto, e no meu estudo com 1.000 lojas Shopify, 1 em cada 7 títulos não dizia o que era o produto.

Na Shopify, alguns temas montam o bloco com o filtro structured_data da própria plataforma, que gera um Product para um produto sem variantes e um ProductGroup para um produto com variantes. Na minha amostra, 28 das 103 lojas usavam esse filtro, e as demais tinham marcação escrita pelo próprio tema ou por um app. 38% das páginas que li usavam ProductGroup, e 40% dos produtos com variantes ainda estavam marcados como um único Product.

ProductGroup é como o Google quer que as variantes de produto sejam descritas: um grupo com um ID de grupo e cada variante como um Product próprio dentro dele. Dos blocos ProductGroup que encontrei, 84% listavam as variantes e o ID do grupo, mas só 36% diziam em que as variantes diferem (variesBy, por exemplo tamanho ou cor). É uma propriedade recomendada, e é ela que diz ao Google qual das variantes é a azul tamanho M. O filtro da Shopify não a escreve: nenhum dos 381 blocos ProductGroup gerados por ele na minha amostra tinha variesBy. Quando a marcação vinha do tema ou de um app, 59% tinham.

Então, se você usa um tema atual da Shopify, provavelmente não precisa criar o schema de produto do zero. Precisa preencher as lacunas do schema que o tema já escreve, o que pode exigir uma mudança no código do tema, e garantir que nada mais escreva um segundo bloco.

Os campos que a maioria das páginas de produto deixa de fora

Os campos de schema de produto que a maioria das páginas deixa de fora, por categoria: GTIN em 33% a 54% das páginas de produto, notas em 29% a 52%, condição em 17% a 56%, detalhes de frete em 6% a 20% e política de devolução em 9% a 24% Moda liderou em quatro dos cinco campos, com GTIN em mais da metade das páginas e política de devolução em 24%. Alimentos e bebidas tiveram menos GTINs, 33%, e casa teve menos detalhes de frete, 6%.

GTIN: o código de barras que não chega lá

Só 43% das páginas traziam GTIN, e 42 das 103 lojas não tinham nenhum em nenhuma página que verifiquei. Em cerca de uma em cada nove páginas que traziam um, o valor não era um código de barras de verdade, geralmente era o SKU. Alguns produtos sem GTIN realmente não têm um, como marcas próprias e produtos artesanais. Mas muitos têm: 36 das 42 lojas sem GTIN na marcação tinham códigos de barras válidos na Shopify nos produtos que verifiquei. Quando um produto tinha um código de barras válido na Shopify, ele só chegava ao schema em 62% dos casos. Os temas que usavam o filtro da própria Shopify o repassavam quase sempre, em 418 de 419 páginas. Em todos os outros casos, ele passava em menos da metade.

O GTIN é o campo que permite ao Google saber que o seu produto é o mesmo item vendido por outras lojas. É também o campo em que o Merchant Center mais se apoia, e já mostrei o que acontece quando ele falta ou está errado em por que o Merchant Center reprova produtos.

Onde corrigir. Primeiro, preencha o código de barras em todas as variantes da sua loja. Depois confira se o schema o mostra, como gtin, gtin8, gtin12, gtin13 ou gtin14, e se o valor é o próprio código de barras, e não o SKU. Na Shopify, se o código de barras está na variante mas não no schema, é o tema ou o app que escreve a marcação que está deixando ele de fora. Procure primeiro uma configuração no tema ou no app e, se não houver, o desenvolvedor do tema pode adicionar o código de barras da variante ao bloco.

Detalhes de frete e política de devolução

Só 13 das 103 lojas tinham detalhes de frete na marcação em alguma página de produto que verifiquei, e 18 tinham política de devolução. Apenas 3 tinham uma política de devolução no nível da loja nessa marcação. O Google sugere colocar a política da loja numa única página, e as configurações no Search Console ou no Merchant Center não são visíveis de fora, então algumas lojas podem ter definido isso onde eu não consegui ver. São esses os campos por trás do custo de frete e do prazo de devolução que o Google pode mostrar ao lado de um produto.

A orientação do próprio Google é configurá-los uma vez para a loja inteira, não em cada produto. Ele recomenda uma política de devolução dentro da marcação Organization, com políticas no nível da oferta só para os produtos que são diferentes, e o mesmo vale para o frete. Ele também diz qual fonte tem prioridade. Da mais forte para a mais fraca:

  1. Dados de frete e devolução no feed de produtos do Merchant Center e configurações enviadas ao Merchant Center pela API.
  2. Configurações de frete e devolução no Merchant Center ou no Search Console.
  3. Marcação no nível do produto, na página.
  4. Marcação no nível da loja.

Então, se você já configurou frete e devolução no Merchant Center, essas configurações prevalecem e a marcação vira um plano B. Se você não usa o Merchant Center, o caminho mais rápido são as configurações de frete e devolução no Search Console, onde ele as oferece para o seu site. Se quiser que elas também estejam na marcação, adicione uma política de devolução no nível da loja ao bloco Organization ou OnlineStore que o seu tema já escreve, numa única página, e não em cada produto. Fica assim:

{
  "@context": "https://schema.org",
  "@type": "OnlineStore",
  "name": "Your Store",
  "url": "https://www.yourstore.com",
  "hasMerchantReturnPolicy": {
    "@type": "MerchantReturnPolicy",
    "applicableCountry": "US",
    "returnPolicyCountry": "US",
    "returnPolicyCategory": "https://schema.org/MerchantReturnFiniteReturnWindow",
    "merchantReturnDays": 30,
    "returnMethod": "https://schema.org/ReturnByMail",
    "returnFees": "https://schema.org/FreeReturn"
  }
}

O Google exige o país e o tipo de política, e o número de dias quando o prazo é limitado. Em vez disso, um link para a sua página de política de devolução com merchantReturnLink também atende ao requisito.

Notas e avaliações

42% das páginas traziam uma nota (aggregateRating), e só 3% traziam avaliações individuais. Alimentos e beleza ficaram no topo, com cerca de metade das páginas. É esse o campo por trás das estrelas nos resultados de busca. Um cuidado com esse número: alguns apps de avaliação adicionam a marcação com JavaScript depois que a página carrega, e a minha contagem cobre só o HTML que a página envia, então a parcela real de notas pode ser maior.

Se as suas páginas de produto mostram avaliações, confira se o app de avaliações também as escreve no schema. Se a nota não está nos dados estruturados, as estrelas não podem aparecer ao lado da página na Pesquisa Google, não importa quantas avaliações a página mostre. Se o app escreve um bloco de produto próprio para isso, ele precisa ter o mesmo preço e o mesmo estoque do bloco do seu tema.

Condição, MPN e o resto

A condição (itemCondition) estava em 34% das páginas e o MPN em 32%. A condição importa mais para lojas que vendem itens usados ou recondicionados, e o MPN para produtos sem GTIN, em que marca mais MPN é como o Google os identifica. Cor e tamanho estavam em 17% das páginas. Num ProductGroup, são eles que diferenciam as variantes.

Os erros que quebram o schema de produto

Campos ausentes custam elegibilidade. Alguns erros são piores: fazem a página se contradizer.

  • Dois blocos de produto. 24% das páginas com schema de produto tinham mais de um bloco, em 32 das lojas. Isso acontece quando o tema escreve um e um app escreve outro, muitas vezes um app de avaliações ou de SEO. Em 17 páginas, de 4 lojas, os dois blocos davam preços diferentes para a mesma variante.
  • JSON quebrado. Em 43 páginas de produto, de 6 lojas, um bloco de dados estruturados nem era JSON válido, por exemplo por causa de uma vírgula sobrando no final ou de um código de barras escrito como número com zero à esquerda. Em 36 delas, era a única marcação de produto da página, então o Google não tinha schema de produto nenhum para ler ali.
  • Vírgula decimal. Uma loja escreveu o preço como "69,99". O schema.org pede ponto decimal, então um parser pode ler esse preço como 6.999.
  • Valor de estoque inválido. Outra escreveu a disponibilidade como "schema.org/ InStock", com um espaço no meio, o que não é um valor válido.
  • Dados que discordam da página. O schema diz um preço ou status de estoque e a página diz outro. É esse o erro que faz produtos serem reprovados no Merchant Center.

Onde corrigir. O objetivo é um bloco por produto. Se você mantém um segundo porque ele carrega as suas estrelas, garanta que os dois tragam o mesmo preço e o mesmo estoque. Se você escreve a marcação à mão, um gerador de schema de produto acerta o formato: o tipo de GTIN certo para o tamanho do código de barras, ponto decimal no preço e um valor de estoque válido. Use o resultado para corrigir o bloco do seu tema, não para adicionar outro: um bloco colado mantém o preço e o estoque que você digitou, então fica desatualizado assim que um dos dois muda.

O gerador gratuito de schema de produto da BrandyBee preenchido para um par de tênis de couro de demonstração, gerando JSON-LD de Product com marca, SKU, gtin13, preço, moeda, disponibilidade e condição

Como verificar o seu schema de produto

Três verificações pegam quase tudo:

  1. Teste de pesquisa aprimorada do Google. Cole a URL de um produto. Ele mostra se a página é elegível para listagens de comerciante e snippets de produto, quais campos faltam e quantos itens de produto encontrou. Se ele lista o mesmo produto duas vezes, normalmente a página tem dois blocos.
  2. Search Console. O relatório de listagens de comerciante mostra erros e avisos de uma amostra das páginas de produto que o Google rastreou, então você vê problemas de template, não só de uma página.
  3. A visão de uma máquina sobre a página. O verificador gratuito de dados de produto mostra o que um comprador automatizado lê da sua página: os dados estruturados, a descrição, as imagens e se os rastreadores conseguem entrar.

Verifique um produto de cada tipo que você vende: um com variantes, um sem e um em promoção. Temas e apps costumam tratar cada um de um jeito.

Se os seus produtos nem aparecem no Google, o schema raramente é a causa. Comece pela indexação; mostrei essa ordem em por que os produtos da Shopify não aparecem no Google.

Schema de produto e compras com IA

Os agentes de compras com IA leem páginas de produto, e isso faz o schema parecer a chave para ser recomendado. Não é tão simples assim. No meu relatório sobre a prateleira da IA, o ChatGPT e o Modo IA do Google recomendaram produtos cujas páginas não tinham dado estruturado nenhum, e todos eles estavam no Google Shopping. Naquele estudo, o feed foi de longe o sinal mais forte para entrar na lista de finalistas.

Onde o schema importa é no passo seguinte. Um agente que abre a sua página e encontra preço, status de estoque e descrição que batem com o feed não tem motivo para duvidar. Um que encontra dois blocos com preços diferentes, ou um "esgotado" que a página contradiz, tem todos os motivos. Então trate o schema como a forma de a página confirmar o feed, não como um substituto dele. A descrição também conta: 92% das páginas tinham uma no schema, e é um dos lugares que o agente lê para entender para que serve o produto, então escreva descrições que digam o que o produto realmente é.

Como a BrandyBee verifica o schema de produto

A BrandyBee lê os dados estruturados, o código de barras e o estoque de cada página de produto e coloca o resultado na mesma lista de correções dos problemas que o Google aponta no Merchant Center. Digite um código de barras que falta e a BrandyBee confere o dígito verificador, ou escolha uma categoria, ou preencha os atributos do Shopping. Depois que você confirma, tudo é gravado direto no seu produto da Shopify, e o seu feed do Google pega as mudanças na próxima sincronização. Você pode ver a lista de correções na página do feed do Merchant Center.

O que corrigir primeiro

Comece pelo que faz a página se contradizer: um segundo bloco de produto com outro preço, JSON quebrado, um valor de preço ou de estoque inválido. Depois preencha as lacunas que custam associação e elegibilidade: o GTIN, sempre que o produto tiver um, e uma política de frete e devolução para a loja toda no Search Console, no Merchant Center ou na sua marcação. O resto, como condição, MPN e variesBy, precisa ser escrito pela marcação do tema. Se o seu tema usa o filtro structured_data da Shopify, que não escreve nem a condição nem o variesBy, isso significa uma mudança no código do tema. Tem mais sobre como ser encontrado em SEO e GEO.

Estatísticas de schema de produto

Os principais números deste estudo num só lugar:

  • De 2.447 páginas de produto da Shopify com schema de produto, de 103 lojas, 98% tinham os três campos que o Google exige para uma listagem de comerciante: um nome, uma imagem e uma oferta com preço e moeda.
  • 182 das 2.629 páginas de produto que baixei não tinham schema de produto em JSON-LD.
  • Só 43% das páginas de produto traziam GTIN no schema de produto, e 42 das 103 lojas não tinham nenhum em nenhuma página que verifiquei.
  • Quando um produto tinha um código de barras válido na Shopify, o código chegava ao schema de produto em apenas 62% dos casos. Os temas que usam o filtro structured_data da Shopify o repassavam em 418 de 419 páginas.
  • 24% das páginas de produto, em 32 lojas, tinham mais de um bloco de produto, e em 17 páginas de 4 lojas os blocos davam preços diferentes para a mesma variante.
  • Só 13 das 103 lojas tinham detalhes de frete na marcação de produto e 18 tinham política de devolução. 3 tinham uma política de devolução no nível da loja.
  • 42% das páginas de produto tinham uma nota agregada no schema, e 3% tinham avaliações individuais.
  • 38% das páginas de produto usavam ProductGroup, mas só 36% dos blocos ProductGroup diziam em que as variantes diferem (variesBy), e 40% dos produtos com variantes ainda estavam marcados como um único Product.

Perguntas frequentes sobre schema de produto

O que é marcação de schema de produto?

São dados estruturados numa página de produto, normalmente em JSON-LD, que descrevem o produto para as máquinas: nome, imagem, preço, moeda, estoque, marca, código de barras e mais, usando o vocabulário do schema.org. O Google usa esses dados para resultados de produtos e listagens de comerciante, e os agentes de compras com IA os leem quando olham a página.

A Shopify adiciona schema de produto automaticamente?

A maioria dos temas atuais adiciona, mas o que eles escrevem varia. Os temas que usam o filtro structured_data da Shopify geram um Product para um produto sem variantes e um ProductGroup para um com variantes; na minha amostra, 40% dos produtos com variantes ainda estavam marcados como um único Product. Confira se o seu tema exibe o código de barras como GTIN e se algum app adiciona um segundo bloco.

Schema de produto é fator de ranqueamento?

O Google usa dados estruturados para entender uma página e torná-la elegível para resultados como listagens de comerciante e snippets de produto. Elegibilidade não garante que o resultado apareça, e o schema não substitui o básico: uma página indexada, uma boa página de produto e um feed limpo.

Preciso de GTIN no meu schema de produto?

O Google o classifica como recomendado. Se o produto tem GTIN, coloque no schema e garanta que seja o mesmo do seu feed. Se o produto não tem, como uma marca própria ou um item artesanal, envie a marca e um MPN no lugar.

Políticas de frete e devolução devem ir no schema de produto?

O Google recomenda uma política para a loja inteira, configurada no Search Console ou no Merchant Center, ou escrita uma vez dentro da marcação Organization. Políticas no nível do produto são para os produtos que são diferentes. As configurações no Merchant Center e no Search Console têm prioridade sobre a marcação.

Qual é a diferença entre Product e ProductGroup?

Product descreve um item. ProductGroup descreve um produto que tem variantes, como tamanhos ou cores, com cada variante como um Product próprio dentro dele. O Google recomenda um ID de grupo (productGroupID), a lista de variantes e variesBy para dizer em que as variantes diferem, e cada variante precisa de um ID único próprio.