Google Structured Data FAQPage Guidelines
Google structured data faqpage guidelines: rules, examples, current eligibility, and how to audit FAQPage markup at scale.
Google structured data faqpage guidelines split into three separate checks: valid Schema.org syntax, Google eligibility rules, and actual rich result visibility. FAQPage markup can still be worth keeping when the page has editor-written questions and answers visible to users, even though Google now shows FAQ rich results far less often.

Google's own documentation says FAQPage is for pages that contain a list of questions with answers provided by the site itself, while user-submitted answers belong to QAPage instead, according to Google Search Central's FAQPage documentation. Schema validity is a different layer: JSON-LD can be well-formed and still be ineligible for Google features.
The three layers you must separate#
Most implementation mistakes happen because teams collapse policy, syntax, and outcomes into one idea.
- Schema syntax: Is the JSON-LD valid as structured data?
- Google eligibility: Does the page meet Google's rules for FAQPage?
- Search appearance: Does Google actually choose to show a rich result now?
That separation matters. A page can pass a Schema.org FAQPage definition, remain eligible in principle, and still never surface with an FAQ rich result because Google reduced FAQ rich result visibility.
What Google structured data faqpage guidelines actually require#
The safest reading of Google structured data faqpage guidelines is policy first.
Google expects the FAQs to be visible on the page. Google expects the questions and answers to be written by the site, not collected from many users. Google expects the markup to describe the page honestly. If your page hides the answers, duplicates boilerplate across hundreds of URLs, or marks up community responses, the implementation is off.
A practical checklist looks like this:
- Put the full question and full answer in visible page content.
- Use FAQPage only when the publisher supplies each answer.
- Use QAPage when users submit alternative answers.
- Use HowTo when the page is a sequence of steps, not a question set.
- Keep the marked-up content aligned with the rendered page after JavaScript and CMS templates load.
- Avoid promotional copy masquerading as an answer.
If you need to check whether visible content and markup still line up after deployment, YepAPI's On-Page Instant API is the direct way to audit rendered pages in code.
FAQ schema example: minimal valid JSON-LD#
This is the smallest useful pattern for an editor-written FAQ block.
{
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "What is FAQPage structured data?",
"acceptedAnswer": {
"@type": "Answer",
"text": "FAQPage structured data identifies a page section where the site itself provides the answers."
}
},
{
"@type": "Question",
"name": "When should I use QAPage instead?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Use QAPage when users can submit their own answers to the same question."
}
}
]
}This format uses JSON-LD, which Google supports for structured data. If you want to inspect the page itself for schema, headings, and other technical elements during a crawl or QA workflow, YepAPI's On-Page Content API gives you the parsed on-page elements in code.
Invalid patterns that break compliance#
A valid-looking snippet can still be the wrong markup for the page.
Common failure patterns include:
- Hidden FAQ text. The markup includes answers that users cannot see.
- User-generated answers. The page behaves like a forum, so QAPage is the better fit.
- How-to content marked as FAQ. Step-by-step instructions belong under HowTo logic, not question markup.
- Promotional answers. Sales copy replaces a real answer.
- Duplicate FAQ blocks. The same generic questions are stamped across many thin pages.
- Broken rendering. The CMS outputs JSON-LD, but the visible FAQ module disappears on the live page.
Those last two are why teams should not stop at a one-time test. YepAPI's On-Page Instant API helps you check live URLs repeatedly, and YepAPI's On-Page Lighthouse API is useful when template changes introduce broader technical regressions alongside schema issues.
What are FAQ rich results after Google's reduction?#
FAQ rich results are enhanced search listings that can show expandable questions and answers under a result. They are not the same thing as FAQPage markup itself.
Google reduced FAQ rich results significantly, so implementation is no longer a promise of expanded SERP real estate. That change means the current question is not "Can I get the rich result?" but "Does this markup still clarify my page for machines, keep my implementation clean, and support future search features?"
Google to no longer support FAQ rich results: what changed in practice#
Google did not ban FAQPage markup outright. Google narrowed where FAQ rich results are commonly shown.
In practice, that means:
| Question | Short answer |
|---|---|
| Is FAQPage syntax still valid? | Yes, if the JSON-LD is correct. |
| Is FAQPage still eligible under Google rules? | Sometimes, if the page matches the documentation. |
| Will Google show FAQ rich results broadly? | Much less often than before. |
| Should you remove existing markup? | Usually no, unless it is inaccurate, spammy, or high-maintenance. |
That distinction is what many articles miss. Eligibility is not visibility.
FAQPage vs QAPage vs HowTo#
Use the schema type that matches the page's actual job.
| Type | Best for | Wrong use case |
|---|---|---|
| FAQPage | Site-authored questions with site-authored answers | Community threads or support forums |
| QAPage | One question with user-submitted answers | Brand-owned FAQ sections |
| HowTo | A step sequence that completes a task | Static FAQs with no process |
If you are already improving template quality, pair schema work with broader technical SEO best practices. If the page intent is instructional rather than question-led, your implementation and internal content structure may need to change together.
Schema validator vs rich result validation vs live-page auditing#
A schema validator answers only one question: is the markup structurally valid?
A richer workflow has three steps:
- Syntax validation: Check whether the JSON-LD is correctly formed.
- Rich result validation: Check whether Google recognizes the markup for supported experiences. Google provides this through the Rich Results Test.
- Live-page auditing: Check whether the deployed page still renders the visible FAQ content and matching schema after releases, migrations, or component changes.
Teams often stop at step one. That is not enough for production QA. If you are comparing audit options, this is also where posts on best on page SEO analysis tools become relevant.
FAQ schema Generator tools help with syntax, not policy#
An FAQ schema Generator can save time, but it cannot decide whether your page should use FAQPage at all.
Generators are useful for producing baseline JSON-LD. They are weak at catching misuse cases like hidden answers, wrong schema type selection, or mismatches between the editor module and the shipped HTML. YepAPI's On-Page Instant API is the better fit when you need to verify what exists on many live URLs after deployment, not just generate code once.
How to audit FAQPage markup at scale#
For one page, manual testing is enough. For a site, you need a repeatable audit.
- Export the URLs that contain FAQ sections.
- Fetch each live page and inspect rendered structured data.
- Confirm the visible question-and-answer text still exists.
- Flag pages using FAQPage where QAPage or HowTo would be more accurate.
- Recheck after CMS or template releases.
YepAPI's On-Page Instant API is the fastest way to run that audit in code across many URLs. Pair it with YepAPI's Web Scraping API when you need raw page retrieval in a larger validation pipeline, or with YepAPI's SEO API hub when the audit is part of a wider technical SEO workflow.
When FAQPage is still worth using#
FAQPage is still worth using when the page genuinely contains useful, visible, site-authored questions and answers that help users.
Keep it when the markup is accurate, low-maintenance, and aligned to real content. Remove or rewrite it when it is boilerplate, misleading, hidden, or implemented on pages that should really be QAPage or HowTo. If you want the broader process for fixing page-level SEO issues around structure, content, and deployment, see how to do on-page SEO.
CTA#
Need to verify FAQPage markup on live URLs in code? Use YepAPI's On-Page Instant API to inspect rendered pages, catch broken schema after CMS changes, and audit structured data at scale. You get $5 free credit and no card is required.
FAQ#
What are the guidelines for using Google Search Console?#
Google Search Console is for monitoring indexing, coverage, enhancements, and search performance after your markup is live. It does not replace schema validation. Use it to see whether Google detects enhancement issues, then compare those findings with page-level testing and a live crawl so you can separate reporting delays from real implementation problems.
Does schema markup help SEO?#
Schema markup helps search engines understand page meaning more clearly, but it does not guarantee higher rankings or rich results. Its value is strongest when the markup accurately matches visible content and supported types. For FAQPage, the benefit today is cleaner machine-readable structure more than dependable expanded search results.
Is FAQ schema deprecated?#
FAQ schema is not deprecated at the Schema.org level, and Google still documents FAQPage. What changed is rich result visibility. Google now shows FAQ rich results far less broadly, so teams should keep accurate markup where it fits, but stop treating it as a guaranteed SERP feature tactic.
Where should FAQs be on a website?#
FAQs should live on pages where the questions naturally help the user complete the page's goal, such as product, service, help, or policy pages. The questions and answers should be visible in the main content, written clearly, and tailored to that page instead of copied as the same generic block sitewide.
Topics