What FAQPage is
Per Schema.org v30.0, FAQPage is 'a WebPage presenting one or more frequently asked questions.' Inheritance: Thing > CreativeWork > WebPage > FAQPage. The standard pattern: a single FAQPage object whose mainEntity is an array of Question objects, each with a name (the question text) and an acceptedAnswer (an Answer with text). The type remains in the active Schema.org vocabulary as of 2026-03-19.
The 2026-05-07 retirement, plainly
Since 2023 Google had shown FAQ rich results only for well-known, authoritative government and health websites. On 2026-05-07 it stopped showing them altogether: Google's changelog says the feature will no longer appear in Google Search starting May 7, 2026, and on 2026-06-15 Google removed the FAQ rich result documentation because the feature is no longer shown. Every domain lost the accordion, government and health sites included. The FAQPage type itself remains valid in the Schema.org vocabulary.
When to still ship FAQPage on Shopify
Three Shopify pages still earn FAQPage JSON-LD in 2026: (1) the main FAQ hub page (Shopify Pages route, typically /pages/faq), (2) a Knowledge Base index page when the merchant uses Shopify's Knowledge Base app to centralise FAQs, (3) policy pages formatted as Q&A (Shipping FAQ, Returns FAQ). All three share the property that Q&A IS the dominant content. Do not emit FAQPage on product pages, collection pages, blog posts, the homepage, or pages where the FAQ block is one small section among other content.
FAQPage fields
The fields of the standard FAQPage pattern (Google's FAQ documentation, which used to set the requirements, was removed in June 2026): mainEntity (array of Question), each Question with name (Text — the question itself) and acceptedAnswer (Answer with text). Optional but useful: inLanguage (when the FAQ is in a non-default language), Question.author (when answers come from named experts), Answer.upvoteCount (when answers carry community signals).
JSON-LD example — FAQPage from Shopify metaobjects
The block below is FAQPage JSON-LD for a Shopify FAQ page whose Q&A pairs are stored as a metaobject collection (Content > Metaobjects > faq_entries with fields question and answer). The Liquid loop iterates the metaobject and emits one Question per entry.
Validation post-2026-05-07
Run validation against validator.schema.org rather than Google's Rich Results Test. FAQ is no longer among the Rich Results Test's supported types or Search Console's rich result reports, so Google's tools won't report on FAQPage at all. The Schema Markup Validator still parses FAQPage as a valid Schema.org type. Expected output: FAQPage detected, Question array parsed, zero structural errors.
Shopify gotchas on FAQPage
Four gotchas. First: emitting FAQPage on pages where FAQ is not the dominant content, or where the questions and answers aren't visible on the page. Google's general structured data guidelines say not to mark up content that isn't visible to readers. Second: printing entry.question and entry.answer inside quote marks instead of through | json (a double quote or line break breaks the JSON; | escape is an HTML filter and doesn't prevent it). Third: emitting Answer.text with raw HTML from a rich-text metaobject field; pipe it through | strip_html before | json if you want plain text. Fourth: emitting FAQPage on every page of the FAQ section instead of consolidating to one FAQ hub page — duplicate FAQPage entities across the site dilute extraction confidence.