FAQPage schema is a schema.org type that marks up a set of question-and-answer pairs in a structured, machine-parseable form. On an expert page, that structure matters beyond the rich-snippet dropdown it can trigger in search results, because a question paired with a self-contained answer is close to the exact shape a retrieval system pulls out of a document when it is assembling a response. Writing the questions in real query language, keeping answers self-contained, and matching the visible page word for word are what actually make this markup work rather than sit unused.
A well-written FAQ section is already close to the shape an AI system wants to extract. Marking it up as FAQPage schema just tells the machine exactly where those shapes are.
What FAQPage schema actually is
FAQPage is defined at schema.org/FAQPage as a page containing a mainEntity array of Question objects, each with a name holding the question text and an acceptedAnswer holding the answer as an Answer object with its own text field. Google documents its handling of the type in its FAQ structured data guidelines, where it can produce an expandable dropdown directly in search results. That visible benefit is real but it is not the whole reason this markup matters for an expert page specifically.
The deeper reason is structural. Retrieval systems, whether a classic search index or the retrieval step inside an AI assistant, work by breaking pages into passages and matching a user's query against those passages, a process covered in full in how RAG retrieval works. A question-and-answer pair is already close to the ideal passage shape: a clear query on one side, a self-contained answer on the other. FAQPage schema does not change your prose, but it draws an explicit box around each pair, removing the guesswork a retrieval system would otherwise do to find where a question ends and its answer begins.
The exact JSON shape
{
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "How long does a vendor risk assessment take?",
"acceptedAnswer": {
"@type": "Answer",
"text": "A standard vendor risk assessment for a
mid-size vendor takes two to three weeks, covering
document review, a security questionnaire and one
verification call, assuming the vendor responds
within five business days of each request."
}
},
{
"@type": "Question",
"name": "Who typically requests a vendor risk assessment?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Procurement and security teams request them
before onboarding a new vendor that will touch
sensitive data, and compliance teams request them
again annually for vendors already under contract."
}
}
]
}
Each Question-Answer pair is a self-contained unit. Notice the answer above does not say "it depends" or refer back to earlier page content, it states a concrete, standalone fact. That self-containment is not a style preference, it is the property that makes the pair usable when a retrieval system lifts it out of context.
Why the FAQ shape matches how AI systems actually pull content
When an AI assistant answers a question, it is very often matching the user's phrasing against candidate passages retrieved from a larger corpus, then either quoting or paraphrasing the closest match. A passage phrased as a direct question followed by a complete, self-contained answer requires almost no rework to become a citation. A passage extracted from the middle of a five-paragraph narrative essay, by contrast, usually needs the answer disentangled from surrounding sentences that assumed the reader had already read the preceding paragraphs, a problem covered in general terms in chunk theory and passage optimization. FAQPage schema does not make your writing more citable by itself, but it labels exactly where the already-citable shapes live on the page, and well-written FAQ content is disproportionately likely to already have that shape.
Writing questions in real query language
The single biggest lever on this page is the question text itself, and the biggest mistake is writing questions in the vague, brochure-style phrasing common to marketing FAQs. Compare the two approaches directly:
| Weak, marketing-style | Strong, query-shaped |
|---|---|
| "Why choose us?" | "How much does a HIPAA compliance audit cost for a 50-person clinic?" |
| "What makes our process different?" | "What is the difference between a HIPAA risk assessment and a HIPAA audit?" |
| "Do you offer support?" | "How long after onboarding does ongoing compliance support begin?" |
The right column phrases each question close to how someone would actually type it into a search box or ask an assistant.
Write every question as if you were reading it off a real query log, because in a real sense you are trying to anticipate one. If you have access to actual questions clients have asked you, in emails, discovery calls, or comment threads, those are better source material than anything invented at a desk.
Answer length and self-containment rules
Keep each answer to two to four sentences that fully resolve the question without requiring the reader to have seen anything else on the page. A useful test: read only the answer text, with no surrounding context, and check whether it makes complete sense and gives a real, specific response. If the answer says "it varies" or "contact us to learn more," it has failed the test, because a retrieval system extracting that answer in isolation would surface something that tells the user nothing, exactly the outcome that answer-shaped writing is written to prevent more broadly across a whole page.
Where FAQ schema belongs, and where it does not
FAQPage schema earns its place on pages where genuine, specific questions and answers exist as a natural part of the content: service pages, expert bios with a Q&A section, in-depth guides. It does not belong on every page of a site as a reflexive addition, and Google's own guidance has become stricter over time about which pages are eligible for the visible rich-result treatment specifically. Even where the visible dropdown is not guaranteed, the underlying structure still helps a retrieval system parse your content cleanly, so use it wherever real Q&A content exists, and skip it on pages where you would otherwise be inventing questions just to qualify for the markup.
Write the FAQ section for a human first, with genuine questions and complete answers. Add the schema second, to describe content that already deserves the structure, rather than writing thin content to justify adding the tag.
FAQ schema and the entity behind the answers
An expert page's FAQ section carries more weight when the answers are traceable to a specific, credentialed person rather than an anonymous house voice. Where it fits naturally, reference your Person entity's @id as the author of the FAQPage itself, the same declare-once pattern covered in the Person schema JSON-LD guide. This does two things at once: it gives the answers an accountable source, which matters for trust signals covered in E-E-A-T treated as data, and it means every FAQ page you publish accrues to the same entity instead of reading as content from nowhere in particular.
This matters more on genuinely expert-level questions than on generic ones. A question like "what is the maximum HIPAA fine for a first-time violation" benefits from being attributed to someone whose Person entity already carries HIPAA compliance in its knowsAbout array, covered in the knowsAbout property explained, because the attribution and the claimed expertise reinforce each other rather than sitting as two unconnected facts.
Updating FAQ content as facts change
Structured answers age the same way any factual content ages, and an FAQ page is easy to forget about once it is published because it rarely gets revisited the way a flagship article does. A dollar figure, a regulatory threshold, or a processing timeline stated confidently in an Answer field from two years ago can quietly go stale while the page keeps serving traffic and keeps getting parsed by retrieval systems as if it were current. Put FAQ pages, especially ones covering numbers, deadlines or regulatory specifics, on an explicit review calendar rather than treating "published" as "finished."
Common mistakes
- Visible and structured content diverging. The JSON-LD answer must match the visible page text. A mismatch is a policy violation under Google's guidelines and a trust problem for any other system reading the page.
- Marketing questions with no real answer. "Why are we the best choice?" followed by a paragraph of adjectives gives a retrieval system nothing concrete to extract.
- Answers that depend on surrounding context. "As mentioned above" or "see the pricing table" breaks the self-containment a retrieval system needs.
- Overloading a page with dozens of questions. A wall of thin Q&A pairs dilutes the page rather than strengthening it; a focused five to eight genuine questions outperforms twenty shallow ones.
- Using it as a keyword-stuffing vehicle. Writing questions purely to cram in target phrases produces exactly the low-value content search engines have progressively cracked down on.
Validating FAQPage markup
Paste the page into the schema.org validator to confirm the JSON parses as a clean FAQPage with a full mainEntity array, then run Google's Rich Results Test specifically to check eligibility for the visible dropdown treatment, which carries its own additional policy requirements beyond basic schema validity. Whichever result the rich-result test returns, keep the underlying structure in place; it continues to help any retrieval system parsing the page even on the days the visible search feature is not shown.
FAQ
What is the correct JSON structure for FAQPage schema? +
Does FAQ schema help with AI citation, not just Google's rich snippet? +
How long should an FAQ answer be for schema purposes? +
Can the FAQPage JSON-LD text differ from the visible text on the page? +
Should FAQ schema be added to every page of a website? +
How many questions should an FAQ section include? +
Find out what AI says about you today.
Start with a baseline. See the exact words the engines return about your name, then decide.
Claim your name →