FAQPage Schema Markup (JSON-LD Blueprint)
Structured data for Frequently Asked Questions to qualify for expandable Q&A accordions in authoritative search results.
Displayed below main page header or above the tool container. • Zero CLS Container
Production JSON-LD Code Block
Embed this structured data block directly into your HTML <head> or framework layout template.
{
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "Does blocking AI bots in robots.txt harm Google Search indexing?",
"acceptedAnswer": {
"@type": "Answer",
"text": "No. Google Search indexing is governed by Googlebot. Disallowing AI-specific crawlers like GPTBot, CCBot, or ClaudeBot will not impact your organic search rankings or Googlebot crawl budget."
}
},
{
"@type": "Question",
"name": "What is the difference between 301 and 308 redirects?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Both are permanent redirects. However, HTTP 308 strictly preserves the original HTTP request method and body (e.g. POST remains POST), whereas some legacy user-agents rewrite 301 POST requests to GET."
}
}
]
}Typed Properties Specification (7 Fields)
Key Schema.org properties and sub-objects required to qualify for rich snippet treatment in Google Search.
| Property | Expected Type | Status | Description & Example |
|---|---|---|---|
| mainEntity | Array<Question> | Required | Array of distinct Question objects answered on the page. e.g. [{ "@type": "Question", ... }] |
| name | Text | Required | The full question text verbatim as displayed on the webpage. e.g. Does blocking AI bots in robots.txt harm Google Search indexing? |
| acceptedAnswer | Answer | Required | The authoritative answer object corresponding to the question. e.g. { "@type": "Answer", "text": "..." } |
| text | HTML / Text | Required | The full answer content. Supports limited HTML like <a>, <b>, <i>, <ul>, <ol>. e.g. No. Google Search indexing is governed by Googlebot... |
| about | Thing | Recommended | Topical subject entity associated with the FAQ series. e.g. { "@type": "Thing", "name": "Search Engine Optimization" } |
| inLanguage | Language / Text | Recommended | BCP 47 language code (e.g. en-US). e.g. en-US |
| publisher | Organization | Recommended | Entity publishing the FAQ document. e.g. { "@type": "Organization", "name": "OmniSEO Tools" } |
Google Search Console Pitfalls & Critical Warnings
Avoid these 3 common validation traps, parser errors, and algorithmic policy penalties when deploying FAQPage schema.
Applying FAQPage to User-Submitted Q&A Forums
Using FAQPage on pages where multiple users provide answers violates guidelines (QAPage must be used instead).
Use FAQPage only when the question and answer are authored officially by the site.
Hidden Answers Behind Click-to-Reveal Tabs Not in HTML
If answer text is loaded dynamically via network requests only after user interaction and not present in initial DOM, Googlebot may fail to verify it.
Ensure accordion contents are present in the server-rendered HTML.
Excessive FAQ Schema Stuffing with Promotional Links
Stuffing answers with promotional sales links or commercial anchor spam.
Write factual, concise answers with minimal links.
Recommended Implementation Scenarios
Related Schema Blueprints
Explore complementary structured data blueprints across the Technical SEO cluster.
Displayed below main page header or above the tool container. • Zero CLS Container