GEO técnico & conteúdo

Como marcar FAQPage no código da sua página

Por Equipe Promptis24 de junho de 20268 min de leitura
Ilustração isométrica de pares de blocos pergunta-resposta em colchetes de código, com um par extraído para um balão
Neste artigo+

O schema FAQPage é um bloco de código JSON-LD que marca cada par de pergunta e resposta da sua página como uma unidade rotulada, para que a IA leia a resposta exata sem precisar adivinhar onde a pergunta termina e onde a resposta começa. Sem ele, o modelo extrai a resposta do texto corrido e pode cortar no lugar errado; com ele, o limite já vem declarado.

Este tutorial é o lado do código. Ele não decide quais perguntas usar (isso é trabalho editorial), e sim mostra como transformar perguntas que você já escolheu em marcação válida: a estrutura do bloco, os campos obrigatórios, onde colar o script e como validar antes de publicar. No fim tem um exemplo de JSON-LD completo para copiar e adaptar. Se você ainda não viu por que essa marcação é a aposta mais barata do GEO técnico, o artigo sobre dados estruturados cobre o porquê; aqui o foco é o como, no tipo FAQPage.


Por que o par pergunta e resposta é uma unidade citável?

Porque ele já vem com começo e fim definidos. Quando uma IA processa uma página, ela quebra o texto em pedaços menores antes de usar ou guardar (o termo técnico é fragmentação). Um parágrafo solto pode ser cortado no meio de uma ideia. Um par de pergunta e resposta, não: a pergunta delimita exatamente o que está sendo respondido, e a resposta é o pedaço inteiro que responde.

O FAQPage formaliza esse limite no código. Em vez de o modelo inferir que o trecho depois de "Quanto custa?" é a resposta da pergunta sobre preço, você diz explicitamente: este texto é a pergunta, este outro é a resposta dela. A IA não precisa reconstruir essa ligação a partir da diagramação visual ou do HTML.

Isso conversa direto com a taxa de citação, a frequência com que sua marca aparece nas respostas dos modelos. Uma resposta com limite claro é mais fácil de extrair e devolver inteira numa resposta de chatbot. A IA prefere o que ela consegue recortar sem risco de cortar errado.


Como é a estrutura de um bloco FAQPage?

A estrutura tem três níveis encaixados. Entender o encaixe é metade do trabalho:

  • FAQPage é o bloco de fora. Ele declara que aquela página (ou aquela seção) é uma lista de perguntas frequentes.
  • Question é cada pergunta. O FAQPage contém uma lista de Question, uma por par. O texto da pergunta vai no campo name.
  • Answer é a resposta de cada pergunta. Ela não fica solta: entra dentro da Question, no campo acceptedAnswer, e é do tipo Answer. O texto da resposta vai no campo text.

Lendo de cima para baixo: um FAQPage contém várias Question; cada Question tem uma acceptedAnswer do tipo Answer. Esse aninhamento é o que diz ao modelo qual resposta pertence a qual pergunta. Trocar a ordem ou tirar um nível quebra a relação.

A lista de perguntas vai no campo mainEntity do FAQPage. É uma lista (um array, em JSON), então você adiciona quantas Question forem necessárias separando por vírgula. Cada Question segue o mesmo molde: um name, um acceptedAnswer com um text dentro.


Quais campos de texto cada par precisa?

São dois campos de texto que carregam o conteúdo, um em cada nível:

name é a pergunta, na Question. Escreva exatamente como um usuário perguntaria, igual ao que está visível na página. Pergunta curta e direta funciona melhor: "Quanto tempo dura a garantia?" e não "Informações sobre o período de garantia do produto".

text é a resposta, dentro do acceptedAnswer. É o corpo que responde a pergunta. Pode conter algumas tags de HTML simples, como parágrafo e link, mas o miolo é o texto da resposta. A resposta deve ser completa por si só: quem lê só ela, sem o resto da página, entende.

O ponto que mais derruba marcação é a correspondência com o visível. O conteúdo do name e do text precisa bater com o que o usuário vê na página, palavra por palavra. A diretriz de dados estruturados é explícita: marcar conteúdo que não aparece para o usuário, ou que está oculto, viola a regra. Na prática isso significa que você escreve as perguntas e respostas na página primeiro, e o FAQPage só espelha o que já está lá. O schema descreve o conteúdo, não inventa um paralelo.

Vale a mesma disciplina do schema Organization: cada campo reflete o que de fato existe. Schema que descreve dados que não estão na página enfraquece a confiança na marcação do site todo.


Como fica um bloco FAQPage completo?

Abaixo, um FAQPage com duas perguntas, no formato que você cola na página. Troque o texto pelos seus pares reais, que precisam existir visíveis na página:

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "FAQPage",
  "mainEntity": [
    {
      "@type": "Question",
      "name": "Quanto tempo leva a entrega?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "O prazo de entrega é de 3 a 7 dias úteis para todo o Brasil, contados a partir da confirmação do pagamento. Pedidos para a capital saem em até 3 dias úteis."
      }
    },
    {
      "@type": "Question",
      "name": "Posso trocar o produto depois de comprar?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Sim. A troca pode ser solicitada em até 7 dias corridos após o recebimento, com o produto sem uso e na embalagem original. O frete da primeira troca é por nossa conta."
      }
    }
  ]
}
</script>

Repare que é tudo texto dentro de uma tag <script>: nenhuma imagem, biblioteca ou dependência. Para adicionar uma terceira pergunta, copie um bloco Question inteiro, coloque uma vírgula depois do } do bloco anterior e cole o novo dentro do mesmo mainEntity. A vírgula entre os blocos é obrigatória; a última Question da lista não leva vírgula depois.


Onde colar o script FAQPage no site?

Na própria página onde as perguntas aparecem, e só nela. O FAQPage descreve aquela página específica, então o bloco vai junto do conteúdo que ele marca: a página de FAQ, ou o artigo e a página de produto que têm uma seção de perguntas. Não repita o mesmo FAQPage em páginas onde aquelas perguntas não estão visíveis.

Tecnicamente, o bloco entra no HTML em uma tag <script type="application/ld+json">. Pode ficar no <head> ou em qualquer ponto do <body>: os rastreadores leem das duas formas. A maioria das plataformas permite inserir esse trecho:

  • WordPress: por um plugin de SEO com campo de schema, ou colando o <script> no corpo da página.
  • Webflow, Wix e similares: no campo de "código personalizado" ou "embed de HTML" da página.
  • Site próprio: direto no template da página que tem o FAQ.

Para a mecânica geral de colar e validar qualquer bloco JSON-LD, e para o critério de quando usar FAQPage em vez de outro tipo, o guia de GEO técnico reúne as camadas em ordem, e o artigo sobre quais tipos de schema usar ajuda a decidir.


Como validar o FAQPage e quais armadilhas evitar?

Valide antes de considerar o trabalho pronto. Duas ferramentas gratuitas cobrem isso:

  • Schema Markup Validator (validator.schema.org): cole a URL ou o código e veja se a sintaxe está correta e quais campos foram reconhecidos.
  • Rich Results Test do Google (search.google.com/test/rich-results): mostra se a marcação está válida e elegível para resultados ricos.

No resultado, confira: o tipo identificado como FAQPage, cada Question com seu name, e cada acceptedAnswer com seu text lidos com o texto certo. Um erro (error) precisa ser corrigido antes de publicar; um aviso (warning) sobre campo opcional ausente, não. Valide depois de cada mudança, porque uma vírgula fora do lugar no JSON quebra a leitura inteira do bloco.

As armadilhas que mais aparecem:

  • Conteúdo oculto. Marcar uma resposta que o usuário não vê, por estar fora do HTML ou só carregada depois de um clique, viola a diretriz. A resposta tem que estar visível na página.
  • Pergunta repetida. A mesma pergunta marcada em várias páginas, ou duas Question idênticas no mesmo bloco, confunde em vez de ajudar. Um par por pergunta, na página onde ele vive.
  • Resposta vazia ou incompleta. Um text em branco, ou que só faz sentido com o resto da página ("veja acima"), não serve. Cada resposta precisa ser completa e fazer sentido sozinha.
  • JSON quebrado. Vírgula faltando entre blocos, vírgula sobrando na última Question, aspas não fechadas. Qualquer um derruba o bloco inteiro, e por isso a validação a cada mudança não é opcional.

Como manter o FAQPage citável ao longo do tempo?

A marcação acompanha o conteúdo. Toda vez que você muda uma pergunta ou uma resposta na página, ajuste o name ou o text correspondente no bloco para que os dois continuem batendo. Um FAQPage que descreve uma resposta antiga, depois de a página ter mudado, vira inconsistência: o usuário lê uma coisa, o modelo lê outra.

Escolher bem quais perguntas entram é a outra metade do trabalho, e ela é editorial, não de código. Quais dúvidas o seu público de fato leva ao chatbot, como formular cada pergunta no jeito que a pessoa pergunta, quando faz sentido ter um FAQ: isso é decisão de conteúdo, anterior à marcação. Este tutorial cuidou do código; a curadoria das perguntas é um tema à parte.

No Content Studio da Promptis, o conteúdo gerado já sai com a seção de FAQ estruturada, no formato que a marcação espelha, então a parte de transformar perguntas em pares válidos vem encaminhada. Se quiser primeiro entender como sua marca aparece hoje nas respostas de IA, a primeira análise é grátis e não pede cartão.

Perguntas frequentes

Preciso ter o schema FAQPage para a IA citar minha resposta?+

Não é obrigatório, mas ajuda. Uma IA consegue extrair uma resposta de texto corrido, só que aí ela tem que adivinhar onde a pergunta termina e onde a resposta começa. O FAQPage entrega esse limite pronto: marca cada par como um bloco rotulado, com a pergunta no campo name e a resposta no text. Isso reduz a ambiguidade e a chance de o modelo cortar a resposta no lugar errado.

O que acontece se o texto do schema for diferente do que aparece na página?+

É um erro a evitar. A regra das diretrizes de dados estruturados é que o conteúdo marcado precisa bater com o conteúdo visível ao usuário. Pergunta e resposta no FAQPage devem existir na página, com o mesmo texto. Marcar uma resposta que não aparece, ou que está escondida atrás de um clique sem estar no HTML, viola a diretriz e enfraquece a confiança na marcação do site inteiro.

Posso usar FAQPage em qualquer página do site?+

Só onde existe de fato um bloco de perguntas e respostas que o usuário vê. O FAQPage descreve uma página de perguntas frequentes ou uma seção de FAQ dentro de um artigo ou de uma página de produto. Não serve para marcar um texto qualquer como se fosse pergunta e resposta, nem para repetir a mesma pergunta em várias páginas. Um par por pergunta, na página onde ele aparece.

Leia também

Audite seu site para IA

Comece agora

Usamos cookies para operar o site e, com a sua permissão, para medir e melhorar a nossa divulgação. Política de Privacidade