FAQ schema is structured data that tells Google a page contains a list of questions and answers, making it eligible for expandable rich results in search. You add it as a small JSON-LD block, keep the content visible on the page, and validate before shipping. Here is how to do it correctly.
What FAQ schema actually is
FAQ schema uses the FAQPage type from schema.org. The structure is straightforward: a FAQPage object with a mainEntity array, where each item is a Question with a name (the question text) and an acceptedAnswer of type Answer whose text holds the answer.
You embed it on the page as a <script type="application/ld+json"> block. It can live in either the <head> or the <body>. Google reads it either way, so placement is about what is convenient in your template, not about ranking.
Here is the shape:
{
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "How much does shipping cost?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Standard shipping is free on orders over $50."
}
}
]
}
The fastest way to produce clean, valid markup is the FAQ Schema Generator, which builds the full block from your questions so you do not hand-write the nesting.
How to add FAQ schema in four steps
- List your real questions and answers, the same ones shown on the page.
- Open the FAQ Schema Generator and paste each question with its answer.
- Copy the generated
<script type="application/ld+json">block. - Paste it into your page template, in the head or near the FAQ content, and publish.
Everything runs in your browser, so your questions and answers never leave your device.
Google’s eligibility rules
Google has firm requirements, and breaking them gets the markup ignored or flagged:
- The question and answer content must be visible on the page. Do not mark up FAQs that are hidden, collapsed-and-unloaded, or absent from the rendered HTML.
- The markup must match the on-page text. Do not add questions in the schema that a visitor cannot read.
- FAQ content should be informational, not promotional or advertising. Skip it for content that exists only to push a product or repeat keywords.
There is one big caveat. Google has narrowed FAQ rich results so that, for many queries, they now appear mainly for authoritative government and health sites. For most pages you should treat FAQ schema as best-effort: it is still valid, it can help Google understand your content, but the expandable result may never show. Add it because it is correct and harmless, not because it is guaranteed visibility.
Validate before you ship
Always confirm your markup parses cleanly. Run the page or the raw block through Google’s Rich Results Test, which reports whether the FAQ is detected and lists any errors or warnings. The schema.org validator is a good second check for structural issues. Fixing a missing acceptedAnswer or a stray comma takes seconds and saves you from shipping markup Google quietly drops.
Related tools
- Article Schema Generator - structured data for blog posts and news articles.
- Breadcrumb Schema Generator - mark up your navigation path for cleaner SERP listings.
- Google SERP Preview - see how your title and description render in search before you publish.
Build it, keep it visible, validate it, and ship FAQ schema as a smart bet rather than a sure thing.