FAQ Schema for AI Citation: The Technical Pattern That Gets You Quoted
FAQPage schema turns your answers into facts AI assistants can lift and quote. Here is the exact markup pattern that gets local businesses cited by LLMs.
Here is the uncomfortable truth about how AI assistants pick what to quote: they are lazy in a useful way. When an LLM needs a fact to answer "how much does a roof inspection cost in your city," it reaches for the source that hands it a clean, labeled, quotable answer — not the one that buries the number in a paragraph of marketing prose. FAQPage schema is how you become the clean, labeled source. It is the difference between an AI confidently quoting your pricing and an AI skipping you for a competitor who made the fact easy to grab.
This is the most technical of the AI-search moves, but it is also one of the most copy-and-paste-able. By the end of this you will have the exact markup pattern, know where to put it, and understand why it works — whether you implement it yourself or hand it to someone who will.
What FAQ schema actually does
Schema is structured data — a standardized vocabulary that labels the meaning of content so machines do not have to guess. FAQPage schema specifically wraps a question-and-answer pair and says, in machine terms, "this exact text is the question, and this exact text is the authoritative answer."
To a human, the difference is invisible. To an AI assembling an answer, it is everything. Consider the same fact two ways.
As plain prose on a page:
We get asked about pricing a lot. Generally a roof inspection
runs somewhere in the ballpark of a couple hundred dollars
depending on the size and pitch of your roof, but reach out
and we will give you a real number.
As FAQPage schema:
{
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "How much does a roof inspection cost?",
"acceptedAnswer": {
"@type": "Answer",
"text": "A standard residential roof inspection is 199 dollars and includes a written report with photos. We credit it toward any repair booked within 30 days."
}
}
]
}
An LLM can lift that second version verbatim and cite it with confidence. The first version it has to interpret, hedge, and often skips. The fact that gets quoted is the fact that was made quotable.
Why this matters more now than it did in 2019
FAQ schema used to be chased for one reason: Google showed expandable FAQ snippets in search results, and they took up screen space. Google has since scaled those visual rich results way back, and a lot of businesses concluded FAQ schema was dead.
They were wrong about the conclusion, right about the old reason. The value did not disappear — it moved. Here is where it went.
| Era | Primary value of FAQ schema | Who consumes it |
|---|---|---|
| 2019-2022 | Visual FAQ rich snippets in search | Human searchers clicking |
| 2026 | Machine-readable, quotable answers | LLMs, voice assistants, AI overviews |
The markup that once won you a bigger search listing now wins you something more valuable: accurate inclusion in AI-generated answers and voice responses. The technique didn't die; it got more important and less visible. This is the same dynamic we cover in our piece on voice search optimization, where spoken answers lean on exactly this structured data — and it is core to the AI Search Optimization work in BoostXL.
The exact pattern to copy
Here is a complete, multi-question FAQPage block for a local service business. Adapt the questions and answers to your business and drop it into the page's head or body as a JSON-LD script.
{
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "Do you offer same-day service?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Yes. For calls placed before noon on weekdays we offer same-day service across the Tucson metro, subject to availability. Emergency service is available 24/7."
}
},
{
"@type": "Question",
"name": "Are you licensed and insured?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Yes. We are a licensed contractor, Arizona ROC license number 123456, and we carry full liability insurance. License and insurance details are available on request."
}
},
{
"@type": "Question",
"name": "What areas do you serve?",
"acceptedAnswer": {
"@type": "Answer",
"text": "We serve Tucson, Oro Valley, Marana, Vail, and Sahuarita, Arizona. There is no trip charge within those areas."
}
}
]
}
A few rules make this work instead of backfire:
- The visible page must contain the same questions and answers. Schema is meant to mark up content that is actually on the page. Marking up invisible content violates the guidelines and can earn a penalty.
- Answers must be self-contained and specific. "Yes, we serve the whole metro" beats "Absolutely, give us a call!" because an AI can quote the first as a fact. Include the numbers, names, and specifics a customer would want.
- Phrase questions the way customers ask them. "Are you licensed and insured?" not "Licensing information." The closer your question matches the customer's spoken or typed query, the more likely it gets matched.
- Use absolute, current facts. License numbers, prices, service areas. Stale facts in schema are confidently-wrong facts, which is the worst kind.
What makes an answer get quoted vs. ignored
Not all FAQ answers are equal in an AI's eyes. The same question can produce a quotable answer or a skipped one depending on how you write it.
| Quality | Ignored answer | Quoted answer |
|---|---|---|
| Specificity | "Pricing varies, contact us" | "A standard inspection is 199 dollars" |
| Self-containment | "It depends, see above" | "Same-day service is available before noon" |
| Phrasing | "Information about our hours" | "Are you open on weekends?" with a direct answer |
| Trust signals | "We are licensed" | "Licensed, ROC number 123456, fully insured" |
| Freshness | A price from three years ago | A current price you maintain |
The pattern across that table is simple: AI quotes confident, specific, self-contained facts. Write your answers so a stranger could read one aloud and have it be true and complete on its own.
Validate before you trust it
Bad schema can be worse than none, because it signals to machines that your site is misconfigured. Before you consider an FAQ block done:
- Run it through a structured-data validator to confirm it parses with no errors.
- Confirm the visible page content matches the questions and answers in the markup, word for word where it counts.
- Check that every fact is current — prices, license numbers, hours, service areas.
- Test the page speed of the page it lives on, because an assistant that cannot load the page quickly may not get to the schema at all.
That last point is why schema and site quality are inseparable. Beautiful FAQ markup on a slow, bloated page still loses citations. A fast, well-structured site — the kind ResultsXL builds — is what lets the schema actually do its job. The two together are how we frame the stack: clean structure underneath, machine-readable facts on top.
Where to put it across your site
You do not need FAQ schema on every page. Put it where real questions live:
- Service pages — questions specific to that service (cost, timeline, what is included).
- Pricing page — the cost questions customers actually ask before calling.
- A dedicated FAQ page — the broad set: licensing, areas, hours, guarantees, payment.
Each block should reflect the genuine questions for that page, with matching visible content. This pairs naturally with the clarifying file we cover in llms.txt explained — schema makes individual facts quotable, while llms.txt orients the AI to your whole business.
The bottom line
FAQ schema is the technical pattern that turns your answers into facts an AI can lift and cite. It stopped being about pretty search snippets and became about being machine-readable in a world where assistants synthesize answers from whoever made the fact easiest to quote. Write specific, self-contained, current answers, mark them up with FAQPage schema, match them to your visible content, and validate.
Do it yourself with the pattern above, or contact us and we will implement validated FAQ schema across your money pages and tie it into the fast, structured foundation that gets you quoted. Want to see what is missing first? Run your site through our free site scanner — it flags absent or broken schema in minutes, and our BoostXL program handles the rest.
Frequently asked
What is FAQ schema and why does it help with AI citations?+
FAQ schema, formally FAQPage structured data, is markup that labels a question-and-answer pair so machines know exactly what is a question and what is the authoritative answer. AI assistants favor this because it hands them a clean, quotable fact instead of forcing them to parse prose. That makes you easier to cite accurately.
Does FAQ schema still work now that Google reduced FAQ rich results?+
Yes, but for a different reason than it used to. Google scaled back the visual FAQ rich snippets in regular search, but the structured data still helps machines — including LLMs and voice assistants — understand and extract your answers. The value moved from pretty search results to AI readability.
Where should I put FAQ schema on my site?+
On pages where customers genuinely have questions: service pages, pricing pages, and a dedicated FAQ page. The on-page visible FAQ content should match the schema exactly. Putting markup on a page with no matching visible content is a guideline violation and can hurt you.
Can I add FAQ schema myself or do I need a developer?+
Writing the questions and answers is something any owner can do, and the JSON-LD pattern is copy-and-adapt friendly. Implementing it correctly across many pages, keeping it in sync with visible content, and validating it is where a developer or a managed service saves real time and avoids mistakes.
More in AI Search / AISO
llms.txt Explained: The File Every Local Business Website Should Have
llms.txt is a simple file that tells AI assistants what your business does and which pages to trust. Here is what it is, why it matters, and how to write one.
Read →Reddit Is the Most-Cited Source by LLMs — Here’s How to Seed It Without Getting Banned
LLMs cite Reddit more than any other site. Here is how local businesses earn honest Reddit mentions that get quoted by AI — without spamming or getting banned.
Read →Voice Search Is Back: Optimizing for Siri, Alexa, and Google Assistant in the AI Age
Voice search is back and now powered by LLMs. Learn how local businesses win spoken answers from Siri, Alexa, and Google Assistant — and turn them into calls.
Read →Want this done for you?
Scan your site free, or talk to a strategist about putting the full stack to work.