DEV TOOLBOX · SCHEMA MARKUP · NO SIGNUP
> schemapreview

FAQPage schema

FAQPage marks up a page of questions and answers. After Google's August 2023 rollback, FAQ rich results are restricted to "well-known authoritative government and health websites." For everyone else, FAQPage no longer produces the accordion in the SERP — but it still feeds AI Overviews and helps voice assistants pick your answer.

Required structure

The page must have a mainEntity array of Question objects. Each Question needs:

  • name — the question text, written naturally (not just keywords).
  • acceptedAnswer — an Answer with text. HTML is allowed inside text.

Multiple answers per question are not supported by Google. If you need that, you want QAPage, not FAQPage.

Important rules

  • The questions and answers must be visible on the page. Hidden-in-accordion is fine, hidden-with-CSS (display:none) is not.
  • Don't use FAQPage for product reviews, sales copy, or quiz-style questions. Google considers those a violation.
  • Don't mark up the same Q&A on two different pages — Google picks one and ignores the rest.

Why it still matters in 2026

Even without the rich result, FAQPage is one of the most reliable formats AI Overviews ingest. If you have a How-to page or a product page with a Q&A section below the main content, marking it up is still worth the 5 minutes.

CMS notes

  • WordPress (Rank Math, Yoast Premium): an FAQ block emits valid schema automatically. Free Yoast does not.
  • Plain HTML: the schema can sit anywhere in the page — head, body, or footer. Most teams put it adjacent to the visible Q&A list.
  • Next.js: generate the array from your CMS data at build time, serialize once with JSON.stringify, and inject via dangerouslySetInnerHTML.

Generate it below

Last verified: 2026-05-15. Found something inaccurate? Email hello@schemapreview.dev.

Google's FAQ Page docs ↗

TYPE
02 — PROPERTIES
Questions*

Each entry becomes a Question with an acceptedAnswer.

#1
03 — PREVIEW
Google preview · approximate
Add at least one question
VALIDATION
× Not eligible1 error · 0 warnings
  • mainEntityRequired property "Questions" is missing.docs ↗
04 — COPY
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "FAQPage"
}
</script>