If you run a service business, schema markup is probably the biggest visibility lever you’re not using. It’s code sitting behind your page that spells out what your business does, where it operates, and what a customer will get. Google can figure some of that out on its own, but only some of it. AI answer engines like ChatGPT, Perplexity, and Google’s AI Overviews rely even more heavily on structured signals, so leaving schema off the table means letting the machine guess.
The payoff for getting it right is real. A plumbing company with proper schema can show up in the SERP with business hours, star ratings, and a service area map, and stands a much better shot at being pulled into an AI-generated answer when someone asks Perplexity for local recommendations. Below is a practical checklist for the three schema types that carry the most weight on a service business site: LocalBusiness, Service, and FAQPage.
The Three Schema Types That Matter Most
Schema.org lists hundreds of types, but service business sites really only need three. Practitioners who work on service business SEO day to day, including the team at Orkkid, tend to start every schema audit with LocalBusiness for the business itself, Service for the individual services on offer, and FAQPage for pages built around real customer questions.
Everything else is either optional or handled by templates in your CMS. Product schema is for physical goods. Article schema is for editorial content and blog posts. For a plumber, HVAC company, dentist, law firm, moving company, or any other service business, those three types cover the ground that actually moves rankings and AI citations.
LocalBusiness Schema
LocalBusiness schema is how you tell search engines that your website belongs to a real, verifiable business with a physical presence or a defined service area. This is the block that powers business hours in the SERP, star ratings, the map pack, and entity recognition inside AI answer engines.
Where to Place It
Add it to the homepage and the contact page at a minimum. Multi-location businesses should give each location page its own LocalBusiness block with location-specific details. Don’t try to squeeze five locations into one JSON-LD block on the homepage. It confuses Google more than it helps.
Key Properties
- @type: Pick the most specific subtype you can. Plumber, Electrician, HVACBusiness, Dentist, LegalService, MovingCompany. Specific subtypes carry stronger entity signals than the generic LocalBusiness.
- name, address (as a full PostalAddress), telephone, and url are required.
- openingHoursSpecification is more precise than the older openingHours string and easier for search engines to parse.
- geo coordinates, areaServed, sameAs (verified social profile URLs), and image or logo should all be there when applicable.
Common Mistakes
The one I see most often is defaulting to LocalBusiness when there’s a more specific subtype sitting right there in the Schema.org hierarchy. A close second is inconsistent NAP data (name, address, phone) between the schema, the visible page content, and Google Business Profile. Google cross-checks these sources, and even a small mismatch, say “St.” vs “Street”, quietly chips away at the entity signal.
Service Schema
Service schema describes an individual service the business offers. It tells search engines what a specific page is selling, what area the service covers, and how it connects back to the parent business.
Where to Place It
Every dedicated service page should have its own Service block. Don’t put Service schema on the homepage, and don’t put it on blog articles. It belongs on pages that are genuinely about one specific service, like “24 Hour Emergency Drain Cleaning” or “Residential Solar Installation.”
Key Properties
- @type: Service
- name: The exact service name as it appears on the page.
- provider: A reference back to the business, ideally linked to the same LocalBusiness entity used elsewhere on the site through an @id.
- serviceType: A short descriptor matching how customers actually search for the service.
- areaServed and offers are recommended when you know the coverage area or have public pricing to include.
Common Mistakes
The biggest one is treating every service page as if it needs a full LocalBusiness block instead of a Service block. Another common error is linking provider inconsistently. If the homepage LocalBusiness has an @id of https://example.com/#localbusiness, every Service block on the site should reference that same @id. That’s what lets Google and AI engines connect each service back to the parent business as one connected graph.
FAQPage Schema
FAQPage schema marks up genuine question and answer content on a page. When it’s implemented correctly and applied to the right content, it helps AI answer engines pull answers directly and match them to user queries. That’s a big deal for service businesses, since so much of a service business site is essentially answering the same handful of questions customers ask before they call.
Where to Place It
Only use FAQPage schema on pages that are genuinely built around question and answer content. Google narrowed the display of FAQ rich results a few years back, but the schema still helps AI engines interpret the content correctly.
Key Properties
- @type: FAQPage
- mainEntity: An array of Question objects, each with a name (the question) and an acceptedAnswer (an Answer object with text).
The question and answer text in the schema has to match what’s visible on the page. Hidden FAQ schema that only appears in the code violates Google’s structured data guidelines and can get the whole markup ignored.
Common Mistakes
Stuffing the schema with marketing copy dressed up as questions is the top offender. Fake questions like “Why is our service the best?” hurt trust and can trigger a manual action. Aim for questions a real customer would ask, not questions you wish they would ask. The second issue is reusing the same FAQ block across many pages. Each page should have its own unique question and answer set tied to that page’s topic.
How the Three Work Together
None of these types are meant to sit alone. The homepage carries the LocalBusiness block with a clear @id. Each service page carries a Service block that references that same @id in its provider field. Pages with real FAQ content carry FAQPage blocks with questions tied to that page.
The result is a connected graph of entities: the business as one entity, each service as a distinct entity linked back to it, and FAQ content anchored to where it appears. That’s the kind of clarity search engines and AI answer engines reward.
Testing and Validating
Once schema is live, run every page through Google’s Rich Results Test and the Schema Markup Validator. Both show whether the markup is syntactically valid and which rich result types the page is eligible for. Fixing what these tools catch is a whole lot faster than waiting for Search Console to surface issues weeks later.
Don’t expect immediate movement in the SERP. Give a new implementation four to six weeks before evaluating impact, and keep an eye on the Enhancements section in Search Console for errors that turn up during recrawls.
Final Notes
Schema won’t rescue a site with weak content, no reviews, and a neglected Google Business Profile. What it does is make everything else easier for search engines and AI systems to understand. The three types above cover most of what a service business site needs. Add them carefully, keep them consistent with visible content, and re-validate after every meaningful update. That alone puts most sites well ahead of competitors still leaving search engines to guess.
