Most FAQ schema guides on the web were written before August 2023, when Google limited FAQ rich results to well-known, authoritative government and health websites. Many still promise expandable FAQ boxes under your search listing. For most commercial sites, that is no longer realistic.
So why write a guide at all? Because the underlying practice, publishing genuine questions with clear answers and marking them up precisely, remains useful for answer engines, for AI Overviews and for your readers. The markup is the smallest part of the job. The questions and answers are the asset.
What FAQ schema markup is
FAQPage is a Schema.org type that describes a page containing a list of questions, each with one accepted answer written by the site owner. It is usually added as JSON-LD, a block of structured data inside a script tag that does not change what visitors see.
The minimum valid structure looks like this:
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "What is FAQ schema markup?",
"acceptedAnswer": {
"@type": "Answer",
"text": "FAQ schema markup is structured data that labels questions and their answers on a page so search engines and AI systems can read them as distinct pairs."
}
},
{
"@type": "Question",
"name": "Is FAQ schema still worth adding?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Yes, where the page has genuine FAQs. Rich results are now limited, but the markup still makes question-and-answer content unambiguous for machines."
}
}
]
}
</script>
Three properties do the work: mainEntity holds the list, name holds each question and acceptedAnswer.text holds each answer.

FAQPage vs QAPage: pick the right type
These are often confused:
- FAQPage: you wrote the questions and the single authoritative answer to each. Service pages, pricing pages, product pages and guides.
- QAPage: one question, with answers submitted by users, such as a forum thread or community answer page.
If visitors cannot submit answers, you want FAQPage.
What changed, and why it still matters for AI search
Here is the honest picture for 2026:
| Outcome | Realistic for most sites? | Notes |
|---|---|---|
| FAQ rich result in Google | No | Limited to authoritative government and health sites since 2023 |
| Clearer interpretation by search engines | Yes | Explicit question-answer pairs remove ambiguity |
| Being quoted in AI Overviews and assistants | Helps indirectly | The visible Q&A content is what gets quoted; markup reinforces it |
| Bing and other consumers of structured data | Yes | Structured data is read by more than one search engine |
The important word in the third row is "indirectly". AI systems quote text that answers a question clearly. A well-written visible FAQ is exactly that kind of text. The schema confirms where each question starts and ends, but a vague answer wrapped in perfect JSON-LD is still a vague answer. Do not expect markup alone to earn citations.
In our own audit work, adding genuine FAQs with matching markup is consistently one of the fastest ways to lift RankStreet's AEO friendliness score. On digistreetmedia.com it moved that score from 42 to 78, as documented in our SEO audit case study.
The rules that keep FAQ schema valid
Google's structured data guidelines and FAQ documentation boil down to these rules:
- Mark up only visible content. Every question and answer in the JSON-LD must appear on the page. Hidden FAQs are a guideline violation.
- Site-owner answers only. If users can submit answers, use QAPage instead.
- No advertising. FAQ content must not be primarily promotional.
- Mark up one instance of repeated FAQs. If the same question appears on many pages, mark up only one of them.
- Include the full answer. The
textshould contain the complete answer shown on the page. Limited HTML such as links, lists and paragraphs is permitted in answer text. - Keep markup and page in sync. If an editor changes a visible answer, the JSON-LD must change too.
A complete worked example: a SaaS pricing page
Suppose a project management tool sells to Indian SMEs. Its pricing page has these visible FAQs, written from real sales conversations:
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "Is there a free trial?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Yes. Every plan includes a 14-day free trial with access to all features. No card is needed to start."
}
},
{
"@type": "Question",
"name": "Do prices include GST?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Prices are shown excluding GST. GST at the applicable rate is added at checkout, and a GST invoice is issued for every payment."
}
},
{
"@type": "Question",
"name": "Can I switch plans or cancel?",
"acceptedAnswer": {
"@type": "Answer",
"text": "You can upgrade, downgrade or cancel at any time from account settings. Changes take effect from the next billing cycle."
}
}
]
}
</script>
These figures are illustrative; your answers must reflect your actual policies. Notice the answers are specific. "Prices are shown excluding GST" is something a buyer, a search engine and an AI assistant can all use. "We offer transparent, flexible pricing" is not.
How to write FAQ answers that get quoted
The writing matters more than the markup. Some before-and-after rewrites:
- Before: "How long does SEO take?" / "It depends on many factors. Contact us to find out!"
After: "How long does SEO take?" / "Most sites see early movement in rankings within three to six months, with larger gains over six to twelve months. Timelines depend on competition, the site's starting authority and how quickly fixes are shipped." - Before: "Why choose us?" / "We are the best agency with the best team."
After: remove it. That is a sales line, not a question a customer asks.
Guidelines we use with clients:
- Source questions from sales calls, support tickets, Search Console queries and "People also ask".
- Answer in the first sentence, then add one or two sentences of context. Around 40 to 80 words per answer is a good default.
- Include specifics: numbers, conditions, steps or named standards.
- Four to eight questions per page is usually enough. More is fine if every one is genuine.
Implementation: keep it generated, not hand-pasted
The most common real-world failure is drift: someone edits the visible FAQ in the CMS and forgets the hand-written JSON-LD. The fix is to generate both from the same data. In a PHP template, that looks roughly like this:
<?php
$schema = [
'@context' => 'https://schema.org',
'@type' => 'FAQPage',
'mainEntity' => array_map(fn ($faq) => [
'@type' => 'Question',
'name' => $faq['question'],
'acceptedAnswer' => ['@type' => 'Answer', 'text' => $faq['answer']],
], $page->faqs),
];
?>
<script type="application/ld+json">
<?= json_encode($schema, JSON_UNESCAPED_SLASHES | JSON_UNESCAPED_UNICODE) ?>
</script>
The visible FAQ section loops over the same $page->faqs array, so the two can never disagree.
The same principle applies in WordPress (most SEO plugins generate FAQ markup from an FAQ block), Laravel, Next.js or Shopify. Output the JSON-LD in the server-rendered HTML where possible: Google can process structured data injected with JavaScript, but other crawlers, including some AI fetchers, may not run scripts.
Where FAQs belong on different page types
- Service pages: after the main explanation and before the final call to action. Questions about scope, timelines, pricing approach and who the service suits.
- Product pages: below specifications. Questions about compatibility, sizing, delivery, returns and warranty.
- Pricing pages: directly beneath the plan table. Questions about trials, taxes, billing cycles, cancellations and upgrades.
- Blog posts and guides: at the end, covering follow-up questions the article raises but does not fully answer. This post is an example.
- Location pages: questions about service areas, parking, opening hours and appointments.
Avoid a single site-wide FAQ page as your only FAQ. It can be useful as a hub, but page-specific questions placed next to the relevant content are more helpful to readers and give answer engines context.
How to test whether your FAQs are working
After publishing, check whether AI systems can use your answers. Ask the assistants the same questions your FAQ answers, phrased the way a customer would. For a GST-inclusive pricing FAQ, that might be:
- "Does [product name] pricing include GST?"
- "Can I cancel a [product name] subscription at any time?"
- "Is there a free trial for [product name] and does it need a card?"
If the answers are wrong or missing, look at whether the page is indexed, whether the answer is clear enough to quote and whether other sources contradict you. Save these prompts in an AEO/GEO tracker such as RankStreet's so you can see changes over time rather than relying on one-off checks.
How to validate FAQ schema markup
- Schema Markup Validator (
validator.schema.org): checks the markup is valid Schema.org, regardless of Google eligibility. - Google's Rich Results Test (
search.google.com/test/rich-results): shows whether Google can parse the markup and flags errors. Do not be alarmed if it reports no FAQ rich result for a commercial site; that reflects the 2023 restriction. - Search Console: watch the Enhancements reports for errors across the site.
- A RankStreet audit: the free audit detects which schema types are present, including
FAQPage, and scores AEO friendliness alongside it. The free RankStreet Chrome extension shows the same detection on any page you are browsing.
Mistakes that undo the work
- Marketing copy dressed as questions. Readers and machines both skip it.
- Schema with no visible FAQ. A guideline violation, and pointless for AI systems that read the page.
- The same FAQ block on every page. Mark up one instance; write page-specific questions elsewhere.
- Invalid JSON. A trailing comma or an unescaped quote breaks the entire block. Validate after every template change.
- Stale answers. An FAQ that still quotes last year's price is worse than no FAQ.
FAQ schema alongside other structured data
FAQ markup works best as one part of a coherent set: Organization with sameAs for entity clarity, Article with dates and authors for content pages, BreadcrumbList for hierarchy and the relevant type for your offering, such as Service, Product or LocalBusiness. As AI agents increasingly read pages on users' behalf, a trend we expect to continue into 2027, explicit and accurate structured data becomes a straightforward way to state facts that machines can rely on. For how this fits a wider citation strategy, read how to get cited by ChatGPT and other assistants.
Frequently asked questions
Does FAQ schema markup still show rich results in Google?
Only for a limited set of well-known, authoritative government and health websites, following Google's change in August 2023. Most commercial sites will not see FAQ rich results, though the markup remains valid.
Is FAQ schema markup still worth adding?
Yes, on pages with genuine FAQs. It makes question-and-answer content explicit for search engines and AI systems, and the visible FAQ content itself is useful to readers and quotable by answer engines.
Do the FAQ questions have to be visible on the page?
Yes. Every question and answer in the markup must also be visible to users. Marking up hidden content violates Google's structured data guidelines.
How many questions should an FAQ section have?
There is no fixed requirement. Four to eight genuine questions per page is a practical default. Prioritise questions customers actually ask over padding the list.
Should I use JSON-LD or microdata for FAQ schema?
Google supports both, but recommends JSON-LD because it is easier to implement and maintain. Generating it from the same data as the visible FAQ prevents the two drifting apart.
Ready to put this into practice?
Run a free 60-point audit on any URL and get a prioritised fix list in under a minute.
About the publisher
Built by Digistreet Media
RankStreet is built and operated by Digistreet Media — a digital marketing and SEO agency with 13+ years across Finance, FMCG, Real Estate, B2B, Automobiles, Fashion, SaaS, Healthcare and Commerce. Prefer a senior team to run the audit and the fixes for you? Talk to Digistreet.
