Types worth adding
Use only markup that describes content visible on the page.
- Organization or LocalBusiness with address, phone, logo and social profiles
- WebSite to identify the site and its publisher
- BreadcrumbList for navigation paths
- Service for each service page
- FAQPage for real question and answer sections
- Article or BlogPosting for guides
How to add it
Place JSON-LD in a script tag of type application/ld+json. Generate it from the same data that renders the page so the two never drift apart.
Rules to follow
Do not mark up content users cannot see, do not invent reviews or ratings, and do not use self-serving review markup on your own business pages, since Google does not show those as rich results.
Validate
Test every template with the Rich Results Test and the Schema Markup Validator, then monitor Search Console's enhancement reports for errors.
A simple example of LocalBusiness markup
A minimal block for a local business includes the type, name, address, telephone, opening hours, URL and logo, and links the business to its social profiles. Each property should match the visible page text exactly, because mismatches create confusion rather than clarity.
For a business with several locations, give each location its own page with its own markup, and link them to one parent organisation so that search engines understand they belong together.
Common mistakes and how to avoid them
Validation tools catch syntax errors but not every logic error, so review the content as well.
- Marking up information that is not visible on the page
- Using review or rating markup for your own business
- Copying a block between pages without updating the details
- Adding contradictory phone numbers or addresses
- Leaving out required properties for a chosen type
- Forgetting to update markup when prices, hours or services change
Rolling it out across a large site
For a site with many similar pages, generate markup from the same data that builds the page. That way the visible content and the structured data cannot drift apart. Add automated checks to the build or to a weekly crawl that flag missing or invalid markup, and review enhancement reports in Search Console after each release.
Choosing the right types
Start with what the page is. A home page benefits from Organization or LocalBusiness and WebSite markup. A service page needs Service, linked to the organisation that provides it. A page with questions and answers can use FAQPage, and a guide can use Article or BlogPosting with author and dates. Breadcrumb markup suits almost every page below the home page.
Choose the most specific type that is accurate. A dental practice is a Dentist, a restaurant is a Restaurant, a law firm is a LegalService. If no specific type fits, use LocalBusiness or ProfessionalService.
Testing and monitoring
Use Google's Rich Results Test and the Schema Markup Validator while developing, and Search Console's enhancement reports after launch. Errors prevent eligibility for a feature, while warnings point to missing recommended fields. Fix errors first, then consider warnings where the extra detail is genuinely available.
Re-test after redesigns, plugin updates and template changes. Markup often breaks quietly when templates change, and a monthly check catches it early.
Structured data and AI answers
Structured data does not guarantee citation by an assistant, but it reduces ambiguity about who you are, what you offer and where. Clear organisation details, consistent names and addresses, service descriptions and sameAs links to official profiles give systems more confident facts to draw on. Treat it as part of making your information easy for both people and machines to understand.
A page-by-page implementation plan
Plan markup by page type so that it can be generated consistently.
- Home page: Organization or LocalBusiness, WebSite and optionally a SearchAction if you have site search
- Service pages: Service linked to the organisation, with description, area served and, where relevant, offers
- Location pages: LocalBusiness with address, geo coordinates, hours and phone
- About page: AboutPage, with Person markup for key people
- Guides and articles: Article or BlogPosting with author, dates and image
- FAQ blocks: FAQPage matching the visible questions
- Every page below the home page: BreadcrumbList
- Contact page: ContactPage linked to the organisation
Linking entities together
Structured data works best when the pieces refer to each other. Give the organisation a stable identifier, then refer to it from the website, services, articles and people. That tells search engines that these are parts of one entity rather than unrelated facts.
Use sameAs to link to official profiles such as social accounts and business listings, and keep the names consistent. Over time, these links help systems understand which organisation you are and which profiles belong to you.
What structured data cannot do
Markup does not make a weak page strong. It cannot replace useful content, a fast site or genuine reviews, and it does not guarantee rich results or citations. Search engines decide whether to use it. Think of structured data as clear labelling: it removes doubt about what the page says, and that is valuable, but it works alongside everything else rather than instead of it.
A worked example for a service page
Imagine a page for an electrician offering emergency repairs. The page describes the service, the areas covered, response times and how pricing works, and answers four common questions. The matching structured data identifies the business as an organisation with a stable identifier, describes the service with its name, description and area served, links the service to the business as provider, and lists the four questions and answers in a FAQ block.
A breadcrumb trail marks the path from the home page to services to this page. If the page is a guide instead, an Article block records the headline, author, dates and image. Every value in the markup comes from the same content that appears on the page, so there is nothing to contradict.
After publishing, test the URL in the Rich Results Test, check the enhancement report in Search Console a few days later and fix anything flagged. Then reuse the template for the other service pages, changing only the content, so that the whole section is consistent.
Keeping structured data accurate over time
The biggest risk with structured data is not getting it wrong at first, but letting it drift. A price changes, a phone number is updated, a service is discontinued, and the markup still describes the old situation. Generating markup from the same data that produces the page removes most of that risk, because one edit updates both.
Add a quarterly review to your calendar: crawl the site, validate the main templates, check the enhancement reports in Search Console and compare the markup with the visible content on a sample of pages. Treat any mismatch as a bug to fix, because inconsistent data weakens trust in everything else on the page.
Related services