FAQPage Schema

No Comments
Faqpage schema

Element Code: RI-010

TL;DR: FAQPage schema marks up question and answer pairs so machines can parse them cleanly. Google stopped showing FAQ rich results for almost everyone in August 2023, so the classic SERP dropdown payoff is mostly gone. The markup still earns its keep on Bing, in AI answer engines, and as clean machine-readable structure, so add it where you genuinely have FAQ content and skip it everywhere else.
Check type
Structured data
Element code
RI-010
Google rich result
Restricted since Aug 2023
Effort to fix
Low
Detection
Rich Results Test, Screaming Frog

What FAQPage schema actually is

FAQPage is a schema.org type for a page that contains a list of questions, each with a single answer written by the site itself. Technically it is a FAQPage item with a mainEntity array of Question objects, and each Question carries a name (the question text) and an acceptedAnswer holding an Answer object with the answer text. That is the whole model. It is deliberately simple, which is why it became the most abused schema type on the web for a few years.

The important boundary: FAQPage is for questions the site answers itself, one authoritative answer per question. If your page lets users submit their own answers, that is a forum pattern and the correct type is QAPage, not FAQPage. Mixing these up is one of the most common validation problems I see in audits.

The uncomfortable part: Google mostly stopped showing it

Here is the context any honest guide has to lead with. In August 2023, Google announced on the Search Central blog that FAQ rich results would only be shown for "well-known, authoritative government and health websites." For everyone else, the expandable Q&A dropdowns under search listings disappeared, and the FAQ enhancement report in Search Console was retired shortly after.

Why did that happen? The feature got hammered. Every SEO plugin made FAQ markup a one-click add, sites bolted fake question blocks onto commercial pages purely to grab extra SERP pixels, and the results got worse for users. Google reacted the way it usually does when a rich result gets gamed to death: it pulled the feature rather than policing it.

So why is this still a check worth running? Three reasons that hold up in 2026:

  • Bing still supports FAQ rich results, and Bing traffic is not nothing, especially for B2B audiences living in Edge and for anything surfacing through Copilot.
  • Machine readability. Cleanly structured question and answer pairs are trivially easy for parsers and answer engines to lift accurately. You cannot guarantee any AI system uses your markup, but you can guarantee that ambiguous, unstructured content is harder to extract correctly.
  • It costs almost nothing. If a page genuinely is an FAQ, the markup is a templated five minute job. Low cost, some upside, no downside when done honestly.

My in-the-trenches position: mark up real FAQ pages and real FAQ sections. Do not bolt FAQ blocks onto every page in the template chasing a Google feature that no longer exists for you. I still find sites doing that in 2026 and it is pure cargo cult.

When FAQPage applies, and when it does not

Page has Q&A content? Answers written by the site itself Users can submit their own answers Use FAQPage Use QAPage instead Expecting Google FAQ dropdowns? Only gov and health sites still get them Real upside: Bing rich results, clean extraction for answer engines FAQPage vs QAPage decision path, and what to actually expect from it

FAQPage vs QAPage vs plain content

ScenarioCorrect markupWhy
Support page with questions your team wrote and answeredFAQPageOne authoritative answer per question, authored by the site
Forum or community thread with multiple user answersQAPageBuilt for user-generated answers with voting and accepted answers
Product page with two token questions stuffed in the footerNo FAQ markupNot genuine FAQ content; this is the pattern that got the feature killed
Single question answered in depth as a full articleArticle, not FAQPageFAQPage expects a list of questions, not one long editorial answer
Same FAQ block repeated sitewide in the templateMarkup on one canonical FAQ page onlyDuplicated markup adds noise and zero value

How to implement it

Use JSON-LD in the head or body. Here is the minimal valid shape:

{
  "@context": "https://schema.org",
  "@type": "FAQPage",
  "mainEntity": [{
    "@type": "Question",
    "name": "How long does an SEO audit take?",
    "acceptedAnswer": {
      "@type": "Answer",
      "text": "A focused technical audit typically takes one to two weeks depending on site size."
    }
  },{
    "@type": "Question",
    "name": "Do you audit JavaScript rendering?",
    "acceptedAnswer": {
      "@type": "Answer",
      "text": "Yes, rendered and raw HTML are compared on every template."
    }
  }]
}

Implementation notes that save you validation headaches:

  • The full question and the full answer must be visible on the page. Markup that does not match visible content is a structured data guidelines violation.
  • Answer text may contain a limited set of HTML tags per Google's documentation: headings, br, lists, links, paragraphs, divs, and bold or italic tags. Everything else gets stripped or flagged.
  • One FAQPage per page. Put all Question objects in a single mainEntity array rather than emitting multiple FAQPage blocks.
  • If your CMS uses an SEO plugin, check what it emits before adding your own block, or you will ship duplicate conflicting FAQPage items. Yoast and Rank Math both have FAQ blocks that output this markup.

How to detect missing or broken FAQPage markup

  1. Rich Results Test (search.google.com/test/rich-results): paste the URL, confirm the FAQ items parse and check for warnings. This validates Google's parsing even though the visual rich result is restricted.
  2. Schema Markup Validator (validator.schema.org): stricter, vendor-neutral validation of the raw structure.
  3. Screaming Frog: enable Configuration, then Spider, then Extraction, tick JSON-LD and structured data validation, crawl, and filter the Structured Data tab for FAQPage errors sitewide. This is the only sane way to audit markup across thousands of pages.
  4. Manual spot check: view source, find the JSON-LD block, and read it against the visible page. Automated validators pass markup that lies about what is on the page; humans catch it.

DO and DON'T

DO

  • Mark up genuine FAQ pages where users actually ask these questions
  • Keep the markup a mirror of the visible Q&A text
  • Use one FAQPage block with all questions in a single mainEntity array
  • Validate with the Rich Results Test and a full Screaming Frog crawl
  • Check what your SEO plugin already outputs before adding more
DON'T

  • Bolt FAQ blocks onto every page template chasing rich results Google no longer shows you
  • Use FAQPage for forum threads or user-generated answers; that is QAPage
  • Stuff promotional copy or links into answers as fake questions
  • Mark up questions whose answers are hidden or absent from the page
  • Emit multiple conflicting FAQPage blocks from plugin plus theme plus hand-coded JSON-LD

What good looks like

A page that passes this check cleanly has one JSON-LD FAQPage block, every question and answer visible on the page word for word, no validation errors in the Rich Results Test, and no duplicate blocks fighting each other. Sitewide, FAQ markup appears only on pages that are actually FAQ content. And the team's expectations are calibrated: this markup is cheap semantic hygiene with Bing and answer-engine upside, not a Google SERP feature play. If someone is selling you FAQ schema as a rankings lever in 2026, walk away.

FAQ

Did Google remove FAQ rich results completely?
Almost. Since August 2023, per the Google Search Central announcement, FAQ rich results only appear for well-known, authoritative government and health websites. For everyone else the dropdowns are gone, and the FAQ report was removed from Search Console.
Does FAQPage schema help rankings?
No. Structured data is not a ranking factor and Google has said so repeatedly. It changes how machines parse and present your content, not where the page ranks. Anyone claiming otherwise is selling something.
Should I remove existing FAQPage markup?
If it accurately reflects real FAQ content, leave it; it still serves Bing and machine parsing, and removal buys you nothing. If it was spammy template stuffing on non-FAQ pages, yes, clean it out. Bad markup is a liability in a manual review.
FAQPage or QAPage for my page?
Site writes both the questions and the single answer: FAQPage. Users submit answers and there can be several per question: QAPage. Forums, Stack Overflow style pages, and community threads are QAPage territory.
Can I put HTML in the answer text?
A limited set, per Google's docs: h1 through h6, br, ol, ul, li, a, p, div, b, strong, i, and em. Tables, images, and scripts do not belong in Answer text.

Structured data is one of forty things that can quietly go sideways on a site.

If you want every schema block, template, and crawl path checked by a human who has done this for twenty years, that is exactly what the advanced audit is.

Book an Advanced SEO Audit

Claude Vincent is a technical SEO consultant focused on crawlability, rendering, and AI-search visibility. He writes the field guides and case studies at SEO ProCheck, with a bias toward the durable, unglamorous work that decides whether search engines and AI answer engines can actually read and cite a site.

About SEO ProCheck

Technical SEO consulting and GEO strategy with 20 years of enterprise experience. Case studies, resources, and tools for search and AI visibility.

Work With Me

Technical SEO audits, GEO strategy, site migrations, and international SEO. Hourly consulting for teams who need hands-on support, not just reports.

Subscribe to our newsletter!

More from our blog