FAQPage schema is the most underused structured data type on Vancouver service business sites. I’ve audited 50+ sites and found it correctly implemented on fewer than 5 of them. The upside is real and immediate: Google actively shows FAQ rich results — the expandable question-and-answer dropdowns that appear directly in search results under the page result — for local service queries. The implementation takes under an hour for a developer with the JSON-LD template. Most businesses just haven’t done it.
The gap is consistent across verticals. Plumbers, electricians, HVAC companies, window installers — nearly all of them have FAQ sections on their service pages. The questions and answers are there. The structured data markup is missing. So the rich results never appear, and the page takes up one standard slot instead of three or four.
This post covers what FAQPage schema does, where it works, what a valid implementation looks like, and why it also improves your visibility in AI-powered search. The review schema for service businesses post covers the parallel structured data gap I see on the same sites.
What FAQPage schema does
FAQPage schema is a JSON-LD markup type — JSON-LD (JavaScript Object Notation for Linked Data) is a format for embedding structured data in a web page’s code without changing how the page looks to visitors. You add a <script> block that describes your content in a vocabulary Google understands.
When Google validates a page with FAQPage schema and the content meets its quality threshold, it can display the Q&A pairs as expandable rich results — interactive dropdowns directly in the SERP (search engine results page). The user clicks a question, reads the answer without leaving Google. Your listing occupies far more real estate than a standard result and gives searchers a direct preview before they click.
Google reduced FAQ rich results for some content types in late 2023, but local service page FAQs remain eligible. The distinction is covered in the next section.
Where FAQ schema works — and where it doesn’t
The eligibility divide comes down to page type and question intent.
Service pages are the primary target. A “Vancouver HVAC Services” page with an FAQ section answering “How much does furnace replacement cost?”, “Do you service Burnaby and Coquitlam?”, and “How quickly can you send a technician?” is a strong candidate. These are buyer-stage questions — decision-making intent, not research. Someone asking how much furnace replacement costs in Vancouver is close to hiring someone.
Blog posts are not the right place for FAQPage schema. Google’s 2023 guidance explicitly reduced FAQ eligibility for “informational sites or blog posts.” Your FAQ schema effort belongs on your service pages.
The question type distinction matters. “What causes pipe corrosion?” is informational — research-stage, well covered by how-to content. “How much does pipe replacement cost in Vancouver?” is buyer-stage. It maps to someone who has a problem and is evaluating who to call. Build your service page FAQs around that second category. Common frameworks: cost and timeline, geography (“Do you serve [neighbourhood]?”), process (“What happens during an inspection?”), and credentials (“Are your technicians licensed in BC?”).
What good FAQ schema looks like on a service page
A valid implementation has two parts: the visible FAQ content on the page, and the JSON-LD block in the code that mirrors it. Google requires that schema markup reflect content actually present and readable on the page — not hidden, not markup-only. Five to eight questions is a reasonable range; each answer should be substantive enough to stand alone. One or two sentences is usually too thin.
The JSON-LD block follows this structure:
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "How much does furnace replacement cost in Vancouver?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Furnace replacement in Greater Vancouver typically ranges from $3,500 to $7,000 installed, depending on the unit size, efficiency rating, and complexity of the ductwork. We provide written quotes before any work begins."
}
},
{
"@type": "Question",
"name": "Do you service Burnaby and Coquitlam?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Yes. We serve all of Greater Vancouver including Burnaby, Coquitlam, Surrey, North Vancouver, and West Vancouver. Same-day availability is subject to technician scheduling."
}
}
]
}
</script>
Each question maps to one Question object with a name (the question text) and an acceptedAnswer containing the text of the answer. Questions must be unique — not paraphrases of each other. Google treats near-duplicate questions as thin content and may demote or ignore the schema block entirely.
This is exactly what our schema markup service implements: structured data that is validated, complete, and matched to visible on-page content.
How to implement and verify it
- Write your FAQ section first. Add five to eight buyer-stage questions to your service page with substantive answers — two to four sentences each. The content must be visible on the page.
- Add the JSON-LD block. Place the
<script type="application/ld+json">block in the<head>or before the closing</body>tag. Replace the sample questions with your actual content. - Validate with Google’s Rich Results Test. Go to search.google.com/test/rich-results, enter your page URL or paste the page code, and run the test. It flags missing required fields, malformed JSON, or questions without answers. Even one malformed
Questionobject can invalidate the entire block. - Fix any errors before requesting indexing. The Rich Results Test output is specific about what failed and why.
- Request indexing in Google Search Console. Use the URL Inspection tool to request a fresh crawl once validation is clean. Rich results don’t appear until Google has processed the updated page.
The AI search benefit you’re also getting
FAQPage schema does more than improve your standard search result. It improves a page’s extractability for AI citation — the process by which tools like Google AI Overviews and ChatGPT pull content from web pages to answer queries.
AI engines prefer pages with clear question-answer structure. When an AI system receives “who does furnace replacement in Vancouver?” it looks for pages that directly address the question in a structured format. A service page with validated FAQPage schema signals that structure explicitly — content organized as discrete answers to discrete questions, not just relevant prose. That improves the probability of citation.
This is a compounding benefit: the rich result improves click-through rate in standard search today; the structured format improves AI citation probability as AI-powered search grows. Both come from the same thirty-minute implementation. For the full GEO (generative engine optimization) methodology — how to optimize across all your service pages for AI citation — see our generative engine optimization service.
The pattern I keep finding is that the content is already there. Service businesses have written FAQ sections and built pages that convert. The JSON-LD block that turns that content into structured data is missing. That’s a thirty-minute fix with a measurable upside on every service page it touches.
If you want to know whether your service pages are eligible for FAQ rich results and what’s currently blocking them, I’ll run the audit — check your schema, your FAQ content quality, and your validation status — and walk you through exactly what needs to change. Book the audit here — the audit is free.