Como implementar schema markup passo a passo (JSON-LD)

Como implementar schema markup com JSON-LD, que tipos priorizar consoante o teu negócio e como validá-lo antes de publicar. Sem rodeios.

Por Javier Castillo · 8 min de leitura · Revisto a Legibilidade
Neste artigo8
  1. Antes de implementar schema markup: o que decidir primeiro
  2. Como implementar JSON-LD passo a passo
  3. Como implementar schema markup consoante a tua plataforma
  4. Erros comuns que estragam o resultado enriquecido
  5. Como validar a tua implementação
  6. O que o schema markup não promete
  7. Perguntas frequentes sobre como implementar schema markup
  8. Antes de publicar: checklist mínima

Já sabes o que é o schema markup e porque importa. A dúvida que provavelmente te trouxe aqui é outra: como implementá-lo sem perder meia tarde a rever a especificação do schema.org tipo a tipo. Se queres perceber primeiro o que são os dados estruturados e a marcação JSON-LD.

Este é o complemento prático: que formato usar, que tipos priorizar consoante o teu negócio, como colocá-lo no teu site conforme a plataforma que usas, e como confirmar que não o partiste antes de publicar.

Antes de implementar schema markup: o que decidir primeiro

Antes de mexer em código convém resolver duas decisões que condicionam tudo o resto: que formato usar e que tipos de schema marcar. Saltar este passo costuma acabar em páginas com schema a mais nos sítios errados e schema ausente onde de facto importa.

Escolhe o formato: porque é que o JSON-LD é a opção recomendada

Existem três formatos suportados para marcar dados estruturados: JSON-LD, Microdata e RDFa. A Google recomenda JSON-LD para projetos novos, e é isso que indica na sua introdução oficial aos dados estruturados.

A razão prática é que o JSON-LD vive num bloco de script independente, separado do HTML visível: podes acrescentá-lo, editá-lo ou removê-lo sem tocar na marcação da página, algo que com Microdata ou RDFa implica editar os atributos de cada etiqueta HTML uma a uma. Microdata e RDFa continuam válidos, mas se começas do zero não há qualquer razão para os escolher em vez de JSON-LD.

Que tipos de schema priorizar consoante o teu negócio

O schema.org define mais de 800 tipos. Tentar cobri-los todos é a forma mais rápida de acabar com um JSON-LD inchado e mal mantido. Na maioria dos sites B2B e B2C, seis tipos cobrem praticamente tudo o que é relevante:

Tipo de schema Para que serve
Organization Identifica a tua empresa: nome, logótipo, redes sociais, dados de contacto. Define-se uma vez, ao nível do site.
Product Descreve um produto: preço, disponibilidade, avaliações se existirem mesmo.
Article Marca conteúdo editorial: blog, notícias, guias.
LocalBusiness Para negócios com localização física: morada, horário, área de serviço.
BreadcrumbList Reflete o caminho de navegação da página dentro do site.
Review Marca avaliações reais de utilizadores ou clientes, nunca simuladas.

Começa pelo que responde diretamente ao tipo de página que tens à frente: Product numa ficha de produto, Article num artigo de blog, LocalBusiness na página de contacto de um negócio físico. Organization costuma ir à parte, ao nível do site, para não o duplicares em cada URL.

Como implementar JSON-LD passo a passo

  1. Escolhe o tipo de schema que corresponde ao conteúdo real da página, não ao que gostarias de ter.
  2. Constrói o bloco <script type="application/ld+json"> com as propriedades obrigatórias e as recomendadas que sejam relevantes para esse tipo.
  3. Coloca-o no <head> ou no <body> da página; a Google aceita ambas as localizações, por isso a decisão costuma depender das limitações do teu CMS.
  4. Se for Organization, define-o uma única vez ao nível do template do site, não o repitas em cada página: isso só acrescenta peso sem trazer nada de novo.
  5. Verifica que cada dado marcado coincide exatamente com o conteúdo visível da página. Esta regra não é opcional: está nas diretrizes gerais de dados estruturados da Google, e é a causa mais habitual de uma marcação tecnicamente válida não servir para nada.
Exemplo de JSON-LD do tipo Organization com as propriedades obrigatórias e recomendadas
Exemplo de JSON-LD do tipo Organization com as propriedades obrigatórias e recomendadas

Um exemplo mínimo de Organization, o ponto de partida mais comum:

{
  "@context": "https://schema.org",
  "@type": "Organization",
  "name": "A tua empresa",
  "url": "https://tuweb.com",
  "logo": "https://tuweb.com/logo.png",
  "sameAs": [
    "https://www.linkedin.com/company/tuempresa",
    "https://twitter.com/tuempresa"
  ]
}

Como implementar schema markup consoante a tua plataforma

WordPress

Plugins como o Yoast SEO ou o Rank Math geram JSON-LD automaticamente para Organization, Article e BreadcrumbList a partir da configuração do site e dos campos do próprio artigo.

Cobrem bem os tipos genéricos, mas para Product, LocalBusiness com dados específicos ou Review vais ter de ver se o plugin permite editar as propriedades diretamente ou se convém inserir o bloco manualmente através de um bloco de código ou de um campo personalizado.

Shopify

O Shopify inclui Product e BreadcrumbList por omissão na maioria dos temas, gerados a partir da ficha do produto. O ponto que mais falha é Organization: muitas lojas deixam-no por marcar porque não há um sítio evidente no painel para o fazer, e costuma exigir editar o ficheiro theme.liquid ou usar uma app dedicada.

Sites sem CMS ou HTML direto

Sem plugin pelo meio, o processo é o mais simples dos três: colar o bloco <script type="application/ld+json"> diretamente no HTML de cada template. A vantagem é o controlo total sobre o que se marca; a desvantagem é que qualquer alteração de conteúdo (um preço, uma morada) tem de ser atualizada à mão em dois sítios, o visível e o schema, ou a marcação deixa de coincidir com a página.

Erros comuns que estragam o resultado enriquecido

  • Propriedades obrigatórias incompletas: por exemplo, um Product sem AggregateRating quando o tipo o exige para ser elegível.
  • JSON mal formado: uma vírgula a mais ou uma aspa por fechar invalida o bloco inteiro, mesmo que o resto esteja correto.
  • Dados marcados que não são visíveis para o utilizador na página: contradiz diretamente as diretrizes da Google.
  • Entidades duplicadas: o mesmo Organization definido de formas diferentes em várias páginas do site.

Há um erro que não aparece em nenhum validador e que só se deteta olhando para a página real: um JSON-LD copiado de um gerador online que valida sem erros de sintaxe mas descreve dados que não existem nessa página em concreto.

Como validar a tua implementação

Antes de publicar, passa a página pelo Rich Results Test da Google. Diz-te se a marcação é sintaticamente válida e se é elegível para algum resultado enriquecido, embora elegibilidade não seja garantia de aparecer.

Depois de publicar, o trabalho não termina: o Search Console e a sua ferramenta de inspeção de URLs permitem-te monitorizar se a marcação continua válida ao longo do tempo, porque uma mudança de template pode parti-la semanas depois mesmo que o código original estivesse correto.

Se queres uma fotografia completa de como estes erros afetam o teu site (não só o schema, mas também o acesso dos rastreadores e a legibilidade do conteúdo), o diagnóstico técnico gratuito da Parsigo revê a cobertura e a validade do schema markup existente dentro do seu pilar de estrutura, juntamente com o resto das verificações sobre como te leem os rastreadores, incluindo os dos assistentes de IA.

Não substitui o Rich Results Test para validar sintaxe, mas dá-te contexto de onde encaixa esse erro dentro do conjunto.

O que o schema markup não promete

A Google confirmou repetidamente que a marcação estruturada não é um fator de posicionamento direto. A sua função é tornar um conteúdo elegível para um resultado enriquecido, nunca garantir que apareça: os próprios documentos oficiais incluem esse aviso de forma explícita.

O caso do FAQPage é o exemplo mais claro desta nuance. Desde 7 de maio de 2026, o resultado enriquecido de FAQ deixou de aparecer na Google Search, como confirma a própria documentação de FAQ structured data da Google e como recolhe também o Search Engine Journal com o calendário completo: o relatório do Search Console e o suporte no Rich Results Test são retirados em junho de 2026, e o suporte na API do Search Console em agosto de 2026.

O tipo FAQPage continua válido no schema.org e a Google pode continuar a interpretá-lo (útil para outros sistemas que leem o teu site, não só a Google Search), mas já não gera o menu expansível nos resultados de pesquisa. Se estás a priorizar que tipos implementar agora, o FAQPage já não deve ser um dos que escolhes a pensar em ganhar espaço visual na SERP.

Perguntas frequentes sobre como implementar schema markup

Qual é a melhor forma de implementar schema markup?

Usar JSON-LD, o formato recomendado pela Google para projetos novos. Coloca-se num bloco de script independente no head ou no body da página, e os seus dados devem coincidir sempre com o conteúdo visível.

Preciso de um plugin para acrescentar schema markup no WordPress?

Não é obrigatório, mas plugins como o Yoast SEO ou o Rank Math geram automaticamente os tipos mais comuns (Organization, Article, BreadcrumbList). Para tipos mais específicos como Product ou LocalBusiness com dados próprios, costuma ser preciso rever a configuração ou inserir o bloco manualmente.

Como verifico se o meu schema markup é válido?

Com o Rich Results Test da Google antes de publicar, e com o relatório de dados estruturados do Search Console depois, para detetar se uma mudança de template o partiu ao longo do tempo.

O schema markup melhora o posicionamento na Google?

Não de forma direta. A Google confirmou que não é um fator de ranking; a sua função é tornar o conteúdo elegível para um resultado enriquecido, sem garantir que chegue a aparecer.

Ainda vale a pena marcar FAQPage mesmo que já não gere resultado enriquecido na Google?

O tipo continua válido no schema.org e pode ajudar outros sistemas a perceber a estrutura de perguntas e respostas de uma página, mas desde maio de 2026 já não produz o menu expansível visível nos resultados da Google Search, por isso não convém implementá-lo a pensar em ganhar essa visibilidade em concreto.

Antes de publicar: checklist mínima

  • O formato usado é JSON-LD.
  • Os tipos implementados correspondem ao conteúdo real da página, sem marcar tipos a mais.
  • Cada propriedade marcada coincide com o que o utilizador vê na página.
  • O bloco passou o Rich Results Test sem erros críticos.
  • O Organization está definido uma só vez ao nível do site, não duplicado.

Mais sobre legibilidade

Voltar ao blog

Saber se os sistemas de IA te conseguem ler demora uns segundos

Analisamos várias páginas do teu domínio e dizemos-te o que os rastreadores encontram. Grátis, sem registo.