FAQ Schema Validator — check your live FAQ markup
Paste a URL. We fetch the page, find every FAQPage JSON-LD block, and check it against schema.org and Google's requirements. Free, no signup.
What a valid FAQPage block looks like
A valid FAQPage block is a single JSON-LD script tag in the page's <head> (or anywhere in the HTML). It declares the page contains an FAQ and lists every question/answer pair as a Question with an acceptedAnswer.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "What is your return policy?",
"acceptedAnswer": {
"@type": "Answer",
"text": "We accept returns within 30 days..."
}
}
]
}
</script>The most common things to get wrong: missing the acceptedAnswer entirely, putting HTML inside the question name, having the schema list questions that aren't actually visible on the page, or duplicating the same Q&A across multiple pages. Google's guidance on the last one is firm — FAQ schema must reflect content visible on the same page where the schema lives.
Need a fresh block? Generate one here. Want a full audit of how your FAQ page performs (not just the schema)? Grade your FAQ.
Frequently asked questions
What does this validator check?
We fetch the URL you give us, scan every <script type="application/ld+json"> block on the page, find any FAQPage entries, and verify each one against schema.org's structural requirements and Google's published FAQ rich result guidelines: required fields (mainEntity, Question, acceptedAnswer.text), correct types, non-empty values, and reasonable lengths.
Why is my FAQ schema valid but not showing as a rich result?
Since 2023, Google has heavily restricted FAQ rich results in search — they now mostly appear for well-known authoritative sites. The schema being structurally valid is necessary but no longer sufficient. The schema still feeds AI Overviews, People Also Ask, voice answers, and other engines, so it's worth getting right.
Does this run JavaScript on the page?
No. We fetch the static HTML the server returns. If your FAQ schema is injected by client-side JavaScript (some headless CMS setups, GTM-injected schema, React-only pages), the validator won't see it — and neither will most search crawlers reliably. Render the schema server-side.
What if my page returns 'no FAQPage schema found'?
Either the page genuinely has no FAQ schema, or the schema is injected client-side and not present in the HTML. If it's the former, use our FAQ Schema Generator to build one. If it's the latter, work with your developer to render the JSON-LD on the server.
How is this different from Google's Rich Results Test?
Google's test is the authoritative tool for rich result eligibility — use it for final validation. This validator is faster, focuses specifically on FAQ schema, gives per-question pass/fail with plain-English issues, and is designed to be run repeatedly while you iterate on the markup.