What structured data is
Web pages are written for people. Structured data adds a machine-readable description alongside the visible content. For example, a page might say in plain text that a business is open Monday to Friday from 7 a.m. to 5 p.m. Structured data states the same thing in a standard format that software can read without interpretation.
The vocabulary comes from schema.org, a project launched in 2011 by Google, Microsoft and Yahoo, which Yandex joined later that year. It defines types, such as Organization, LocalBusiness, Service, Product, Article and Event, and properties, such as name, address, telephone and openingHours.
Formats
Structured data can be written in three formats: JSON-LD, Microdata and RDFa. Google recommends JSON-LD, which sits in a script block separate from the visible HTML. It is easier to write, read and maintain, and it does not interfere with the page design. We use JSON-LD unless a platform requires otherwise.
What structured data does and does not do
| It does | It does not |
|---|---|
| Help search engines identify entities and relationships | Guarantee higher rankings |
| Make pages eligible for some rich results | Guarantee rich results will appear |
| Reduce ambiguity, such as which "Mercury" a page means | Replace good visible content |
| Support consistent business facts across systems | Work if it contradicts the visible page |
Google states that structured data does not guarantee rich results, and that markup must represent the main content of the page. Markup describing content that visitors cannot see can be ignored, and misleading markup can lead to a manual action.
Common types for local service businesses
Organization and LocalBusiness
These describe the business itself: name, logo, contact details, address or service area, hours and links to official profiles through the sameAs property. Local businesses usually use LocalBusiness or a more specific subtype, such as Plumber, Dentist or Attorney. Our local business schema service covers this in depth.
Service
Service markup describes a specific service: its name, type, provider and the area served. On a service page, it connects the service to the business that offers it.
WebPage and WebSite
These describe the page and site, and link them to the organization that publishes them.
BreadcrumbList
Breadcrumb markup describes the page's position in the site hierarchy. Google can show breadcrumbs in search results instead of a raw URL.
FAQPage
FAQ markup describes questions and answers shown on the page. Since August 2023, Google has shown FAQ rich results only for well-known, authoritative government and health websites, so most businesses will not see FAQ rich results. The markup can still help systems understand the page's questions and answers, provided the questions and answers are visible on the page.
Review and AggregateRating
Review markup can only describe reviews collected and displayed on your own site under Google's guidelines. Google does not show review stars for a business's reviews of itself on LocalBusiness and Organization pages, so adding star ratings to your own business markup does not produce stars in results.
Other useful types
Product for retail items, Event for workshops or community events, Article for guides and blog posts, VideoObject for videos and JobPosting for vacancies.
Connecting entities with a graph
Rather than isolated blocks of markup, we build a connected graph: the WebPage is part of the WebSite; the WebSite is published by the Organization; the Service is provided by the Organization and serves a City; the City is contained in the State. Each item has a stable identifier, so systems can see how everything relates. This connected approach reflects how search engines and AI systems increasingly understand the web: as entities and relationships, not just keywords.
Structured data and AI search
AI-generated answers in search, such as Google's AI Overviews, and AI assistants draw on content they can interpret confidently. Structured data does not guarantee inclusion in those answers, and Google has said no special markup is required for its AI features. But clear, consistent facts about your business, expressed both in visible content and in structured data, reduce ambiguity. Our AI search optimization work builds on this foundation.
Example: markup for a service page
On a service page for drain cleaning, a connected graph might contain:
- A WebPage node for the page itself, part of the website, with a breadcrumb.
- A BreadcrumbList showing Home, then Services, then Drain Cleaning.
- A Service node named "Drain Cleaning", with a serviceType, a short description, the business as provider and the cities served.
- A reference to the Organization or LocalBusiness node defined once for the whole site.
- An FAQPage node, if the page shows questions and answers.
Each node has its own identifier, and nodes refer to each other rather than repeating the same details. The visible page shows every fact the markup states.
Rich results that still matter for local businesses
Google's rich result features change over time. Some have been reduced or removed, such as HowTo rich results, which Google stopped showing in 2023. Features that remain relevant to many local businesses include breadcrumbs in search results, the business logo and details used for the knowledge panel, Product details for retailers, Event listings for businesses running public events and VideoObject for pages with video. We focus markup on what is accurate and useful for your pages, rather than chasing features that do not apply.
Structured data on website builders and plugins
Many platforms add structured data automatically. WordPress SEO plugins, for example, often output Organization, WebSite, WebPage and BreadcrumbList markup. That is helpful when configured correctly, and harmful when several tools output conflicting versions. Part of our work is deciding which tool owns the markup, configuring it properly and switching off duplicates.
Our implementation process
- Audit existing markup across the site, including markup added by themes and plugins.
- Remove conflicts, such as two plugins each declaring a different organization.
- Design the graph: which types each page template needs and how they connect.
- Implement JSON-LD in templates, so new pages inherit correct markup.
- Validate with Google's Rich Results Test and the Schema Markup Validator.
- Monitor Search Console's enhancement reports for errors and warnings.
Common structured data problems
- Duplicate or conflicting markup from several plugins.
- LocalBusiness markup with a different address or phone from the visible page.
- FAQ markup for questions that do not appear on the page.
- Review stars added to the business's own markup, expecting stars in results.
- Markup copied from another site, still describing the other business.
- Required properties missing, so the markup is not eligible for features.
Keeping markup consistent
Structured data is only valuable when it agrees with everything else: the visible page, your Google Business Profile and your citations. When business details change, such as hours, phone or address, the markup must change on the same day. Generating markup from the same source as the visible content, as we do in templates, prevents the two from drifting apart.
What you receive
- An audit of existing markup with errors and conflicts.
- A structured data plan for each page template.
- Implemented and validated JSON-LD.
- Guidance for adding markup to future pages.
Structured data is reviewed as part of our wider on-page SEO and technical services, so it stays accurate as the site grows.