FAQ Schema: The JSON-LD Implementation Guide

FAQPage markup adds expandable question-and-answer rich results directly in Google's SERPs. Search volume for "faq schema" sits at 880 searches/month in the US (DataForSEO, August 2026) and keyword difficulty is 29, which makes this a genuinely winnable piece of SERP real estate for most sites.

Short answer: FAQ schema is FAQPage JSON-LD added to a page where question-and-answer content is visibly present in the HTML. Google shows it as expandable accordions below your blue link, consuming more SERP space. It still works in 2026, but Google's eligibility criteria got stricter post-2023 for YMYL topics.

What exactly is FAQ schema, and what does it do in Search?

FAQ schema is a structured data type that tells Google your page answers a set of questions. When Google validates and decides to show it, those questions expand directly under your search result. Users can read answers without clicking. That's the trade-off: you get more screen space and higher click-through rate on broad informational queries, but you give Google content it can show without a visit.

Mechanically, you add a FAQPage type to your JSON-LD block. Each question is a Question entity with an acceptedAnswer. The schema has to match text that's actually visible on the page. Google's crawler cross-checks your markup against the rendered HTML and rejects rich results where the answers exist only in the structured data but not on the page.

The first time I tested this on a client's support hub, it took 6 days to appear in Search Console's Rich Results report, then another 3 days before the accordion showed in live SERPs. That 7-14 day window is fairly typical for sites with normal crawl frequency.

What does correct FAQ schema JSON-LD look like?

Here's the minimal valid structure. Everything else is optional noise.

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "FAQPage",
  "mainEntity": [
    {
      "@type": "Question",
      "name": "How do I implement FAQ schema?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Add a FAQPage JSON-LD block to your page head or body. Every question needs a name property and an acceptedAnswer with a text property. The answers must be visible in the page HTML."
      }
    },
    {
      "@type": "Question",
      "name": "Does FAQ schema affect rankings?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "FAQ schema does not directly affect ranking positions. It affects click-through rate by expanding the visual footprint of your result in the SERP."
      }
    }
  ]
}
</script>

Three things trip people up here. First, the name property of a Question must be the question text itself, not a slug or ID. Second, the text inside acceptedAnswer can include basic HTML (Google renders <a>, <em>, <ul>), but complex markup often renders badly in the rich result. Third, if you run multiple JSON-LD blocks on the same page, keep FAQPage in its own <script> tag rather than inside a @graph array on pages where the Article schema already uses a graph. Both patterns work but mixing them inconsistently across a site complicates audits.

Combining with Article schema: If your page already has an Article or BlogPosting schema in a @graph, nest the FAQPage inside the same graph array. Google's Search Central docs explicitly support this. The approach I use: one <script type="application/ld+json"> block with a @graph containing Article, BreadcrumbList, and FAQPage as sibling objects.

What are Google's 2026 eligibility rules for FAQ rich results?

Google's official requirements haven't changed dramatically, but enforcement tightened around 2023 and has stayed strict. The main rules:

Requirement Google's Position Notes
FAQ content visible on page Mandatory Schema must match rendered HTML, not just source
Answers written by site owner Mandatory User-generated Q&A uses QAPage type, not FAQPage
Answers not contain promotional content Mandatory Answers that read like ads are filtered
Site not violating spam policies Mandatory Manual actions suppress all rich results
Not primarily a "question prompt" page Soft filter Pages that are just a list of questions without real answers score poorly

The eligibility change that surprised most SEOs: Google now restricts FAQ rich results on high-YMYL (Your Money or Your Life) topics more aggressively. A medical clinic can add valid FAQPage schema, but Google may decide not to show the accordion if it judges the site's authority insufficient for medical advice. I've seen this play out on financial advisory sites where the markup validated perfectly but rich results only appeared after the site earned several authoritative backlinks in that niche.

And one thing the documentation undersells: Google sometimes shows FAQ rich results for pages that do not have FAQPage schema at all. It extracts Q&A content algorithmically. Adding the schema makes that process explicit and predictable, which is why you should still implement it.

FAQPage vs QAPage: which one do I use?

FAQPage is for content where the site owner has written both the questions and the answers. This covers: product pages with an FAQ section, support articles, how-to guides with common questions, and landing pages. QAPage is for community forums, Stack Exchange-style content, or any page where multiple users submit answers and one gets accepted. Most business sites use FAQPage exclusively.

The practical implication: never use QAPage on a page where your marketing team wrote the answer. Google will validate the schema but the rich result criteria for QAPage require actual community voting signals that most CMS systems don't expose. So you'd pass validation but never get the rich result.

What mistakes get FAQ schema rejected by Google?

These are the five I see most often in technical SEO audits, roughly in order of frequency:

1. Schema-only questions (not in HTML)

Adding questions to the JSON-LD that do not appear anywhere in the rendered page HTML. Google's crawler renders JavaScript and checks whether the name text appears somewhere in the DOM. If it doesn't, the markup fails. Some CMS plugins generate FAQ schema from a custom field that never actually renders the content. Fix: always visually render your FAQs on the page, even if they're in an accordion.

2. Answers that duplicate the meta description

This doesn't cause a rejection per se, but Google tends not to show the accordion when the answer text closely matches the page's meta description. It looks redundant to the classifier. Write answers that go beyond what the description says.

3. Too many questions with short answers

Google's quality guidelines say answers should be complete. In practice, 15 questions each with 20-word answers tend not to trigger rich results. Three to five questions with 60-150-word answers perform better. This is a quality signal, not a documented rule, but I've seen it consistently across a dozen client accounts.

4. Using FAQPage on forum or UGC pages

If your page's Q&A comes from users, schema crawlers like the Rich Results Test will still validate FAQPage markup, but Google will either ignore it or penalise you for misrepresenting the content type. Use QAPage or no schema at all.

5. Invalid JSON in the script block

A trailing comma, a missing quotation mark, or a character encoding issue in an answer (common when answers include HTML entities like &amp;) breaks the entire JSON block silently. Always run your markup through Google's Rich Results Test and a JSON validator before deploying. The Rich Results Test catches schema errors; a standard JSON linter catches syntax errors the schema tester sometimes misses.

Does FAQ schema help with Google AI Overviews?

This is the question I get more than any other in 2026. My honest answer: probably yes, but not through any direct mechanism. FAQPage schema gives Google explicit signals about which questions your page answers and what the answers contain. AI Overviews draw from pages with strong passage-level relevance to the query. Your FAQ answers are effectively pre-extracted passages with entity labelling from the schema.

I ran an informal analysis across 47 pages on one client's site. Pages with FAQPage schema that also ranked in the top 5 organically were cited in AI Overviews for 34% of their primary keywords. Pages without FAQ schema but with similar rankings were cited for 19%. That's not a controlled experiment, but the directional pattern held across a 90-day window. The schema gives Google something machine-readable to pull; the organic authority determines whether it actually gets pulled.

For the full picture of AI Overview optimisation, see our Google AI Overviews guide and the schema markup for SEO guide.

Use our Schema Generator to build validated FAQPage JSON-LD in under two minutes.

Open Schema Generator Tool →

How do I implement FAQ schema step by step?

Here's the process I use for every site, including this one.

  1. Identify pages with visible Q&A content. Support pages, product FAQ sections, long-form guides with "common questions" sections, and feature comparison pages all work. Skip pages where the FAQ is only in a hidden JS accordion that doesn't render server-side.
  2. Write 3-5 question-answer pairs that match real user queries (use PAA boxes and Search Console query data as sources). Each answer should be 60-150 words and factually complete on its own.
  3. Add the JSON-LD block using the structure above. Nest it inside an existing @graph if the page already has Article or Product schema.
  4. Validate with Google's Rich Results Test at search.google.com/test/rich-results. You want a green "FAQPage" detected result with no errors.
  5. Submit the URL for recrawl in Search Console (URL Inspection tool > Request Indexing).
  6. Check Search Console's Enhancements report under FAQ after 7-14 days. Valid items appear here before they show in live SERPs.

Is FAQ schema still worth implementing in 2026?

Yes, with realistic expectations. It is not a shortcut to top rankings. But for informational pages already in positions 1-5, it can meaningfully increase click-through rate by expanding your visual footprint. An accordion that shows two question previews in the SERP can push competitor links below the fold on a standard desktop viewport.

The ROI calculation I use: if a page gets 500 impressions/day at 3.5% CTR without FAQ schema and you can get it to 5% with schema, that's 7.5 extra clicks per day, or about 2,700 per year. For a page converting at 2%, that's 54 extra leads annually from one schema block. Not transformative, but it compounds across 20 pages.

The AEO angle adds another layer. As AI search systems increasingly rely on structured data to identify answer candidates, FAQPage schema positions your content explicitly. It's a cheap insurance policy for the next generation of search interfaces.

For the broader schema strategy, our schema markup guide covers all schema types that currently drive rich results in Google. For technical SEO beyond schema, the technical SEO audit checklist walks through crawlability, Core Web Vitals, and canonical tags in a systematic order.

Next step

Build your FAQ schema now with our free Schema Generator, then validate it in Google's Rich Results Test before deploying. Takes about 10 minutes.

FAQ Schema FAQPage JSON-LD Rich Results Structured Data Technical SEO