Web design and technical SEO
Does schema help SEO? What it does and doesn’t do
Written by the Top SEO Experts Team
Reviewed by Siddharth GangalLast updated 20 min read
Quick answer
Schema markup does not raise your rankings, according to Google. It makes a page eligible for specific search features, such as breadcrumbs, and gives machines a cleaner description of what the page is. For a local service site, that is a small, useful job, and it is not a growth lever.
Most schema advice in circulation was written by people who sell schema work. Google’s own docs and one controlled citation test tell a quieter story. Where the evidence differs in strength, we say so with a label: documented, measured, reported or our view.
Definition Schema markup is code that describes a page to machines. JSON-LD is one format for writing it.
Does schema markup improve Google rankings?
No. Google’s John Mueller, replying on Bluesky in April 2025, said: “Structured data won’t make your site rank better.” He added that you should use it if your pages map to a feature it supports. Search Engine Journal reported the exchange on 15 April 2025.
What do Google’s own docs say?
Google’s docs read the same way. Google’s structured data introduction (accessed 22 Oct 2026) describes markup as “a standardized format for providing information about a page and classifying the page content.”
It says markup can enable more engaging results. It never says markup moves a page up the list.
Why does the myth survive?
The myth survives on correlation. Pages with schema often sit on sites that also have good content, clean technical setups and real links. So the markup gets credit it did not earn.
When a page isn’t ranking, we work down a fixed list:
- Is it indexed?
- Does it match the search intent?
- Do internal links point at it?
- Is the content better than what ranks?
Our view Schema is packaging. Markup comes after all four checks, and only if a supported feature fits.
What does schema actually do in Google Search?
It makes a page eligible for rich results. Rich results are enhanced listings that show extra details, such as breadcrumb paths, product data or event dates.
Eligibility depends on including every required property. Display is never promised. Google says it “does not guarantee that your structured data will show up in search results.”
Google’s structured data policies (accessed 22 Oct 2026) add three rules that matter for a service site:
- Missing required properties means the item is not eligible for rich results.
- Markup must not describe content that readers cannot see on the page.
- More recommended properties make a better result for users, though they are optional.
How long is the list of supported features?
The list of features is shorter than most people assume. Google’s search gallery was last updated 16 October 2026. It lists 25 supported features, including Article, Breadcrumb, Local business, Organization, Product, Review snippet, Software app and Video.
What happened to the FAQ rich result?
FAQ and HowTo are not on it. The FAQ change shows how fast this shifts. Google’s Search Central changelog says the FAQ rich result stopped appearing in Search starting 7 May 2026.
Docs for it were removed on 15 June 2026. Sites that added FAQ markup for extra SERP space lost it when the feature ended. SERP means search engine results page.
That is why we do not sell schema as a growth tactic. A payoff Google can switch off is a poor foundation. Markup is maintenance, like keeping your sitemap valid.
Watch out Google does not guarantee that structured data will show up in search results. A feature it can switch off, like the FAQ rich result, is a poor base for a growth plan.
What does schema do for a local service site?
For a plumber, HVAC company or law firm, schema does a few modest jobs. It labels your organization, marks up your page hierarchy and authorship, and, in narrow cases, supports a business listing. It does not replace your Google Business Profile, which does the heavy lifting for map visibility.
Organization
Google’s Organization docs was last updated 8 September 2026. It says the markup helps Google understand your organization’s administrative details. It recommends putting it on your home page or one page that describes the organization.
Nothing is required, so name, URL and logo make a fair start. Here is a minimal version, with placeholder values:
{
"@context": "https://schema.org",
"@type": "Organization",
"name": "Example Plumbing",
"url": "https://example.com/",
"logo": "https://example.com/logo.png"
}
Wrap it in a <script type="application/ld+json"> tag in the page head. Use the exact business name that appears on your site and Business Profile. A mismatch hands machines two descriptions of one company.
LocalBusiness
Google’s local business docs (last updated 8 September 2026) lists name and address as the required properties. It describes address as “the physical location of the business.” It says search results “may display a prominent Google knowledge panel,” with details such as hours.
The page does not discuss service-area businesses at all. Suppose your business serves customers at their homes from a base you do not publish. Do not invent a storefront address to satisfy the markup.
We cover the safer pattern in our guide to local schema. In practice, your Business Profile controls most of what shows in map results. Our Google Business Profile optimization checklist is where that work lives.
BreadcrumbList
Google’s breadcrumb docs was last updated 8 September 2026. It says a breadcrumb trail indicates the page’s position in the site hierarchy. It also says the feature is available on desktop.
A BreadcrumbList needs at least two list items. It is cheap and low risk.
Article and review markup
Article markup has no required properties, per Google’s Article docs (last updated 8 September 2026). It recommends author, datePublished, dateModified, headline and image. For a blog, that is a sensible baseline and a good way to make authorship explicit.
Review markup carries a trap. Google’s review snippet guidelines (accessed 22 Oct 2026) say what happens when the reviewed entity controls the reviews about itself. Its pages that use LocalBusiness or any other Organization type are ineligible for the star review feature.
Watch out Marking up testimonials on your own home page does not earn stars.
Our schema markup guide and structured data for service businesses cover implementation details for each type.
Is there an exception to the small-job rule?
There is one exception to the small-job rule. If you sell products, publish video, or run a software app, those types are in Google’s gallery. The feature can change how a listing looks.
Check the gallery for your page type before deciding markup isn’t worth the work.
Does schema help AI search, AI Overviews and ChatGPT?
Google says no special markup is needed. Google’s AI optimization guide was last updated 10 July 2026. It states: “Structured data isn’t required for generative AI search, and there’s no special schema.org markup you need to add.”
The guide still suggests continuing to use it as part of overall SEO.
What do Google’s AI features docs add?
Google’s AI features docs was last updated 10 December 2025.
It adds a rule for supporting links in AI Overviews or AI Mode. A page must be indexed and eligible to be shown in Google Search with a snippet. There are no additional technical requirements.
Key takeaway Documented, then: indexing matters, markup does not. To be a supporting link in AI Overviews or AI Mode, Google asks a page to be indexed and eligible to show with a snippet.
Independent testing points the same direction. Ahrefs tracked 1,885 pages that added JSON-LD. It matched each against three control pages from other domains.
It measured citations 30 days before and after. Search Engine Journal’s report of the study, dated 11 May 2026, gives the changes relative to controls:
| Surface | Change vs controls | Reading |
|---|---|---|
| Google AI Overviews | -4.6% | Small decline; treated pages were already falling |
| Google AI Mode | +2.4% | Too small to separate from noise |
| ChatGPT | +2.2% | Too small to separate from noise |
The same report says AI-cited pages were about three times more likely to carry JSON-LD across a broader set of 6 million URLs. That is a correlation, and the controlled test suggests it is not causation. Pages that get cited tend to be well-built sites that also use markup.
What about Bing and Microsoft?
Microsoft is the exception. Bing’s Fabrice Canel reportedly said at SMX Munich that schema helps Microsoft’s LLMs understand content.
Search Engine Land reported it on 20 March 2025. It quoted a LinkedIn post that Canel later confirmed.
Watch out We label the Bing claim reported, not documented, because we found no Bing docs behind it.
How strong is each piece of evidence?
Ranked by strength, the evidence falls into four tiers:
- Documented: Google does not require schema for AI Overviews or AI Mode.
- Measured, with limits: one matched-control test found no meaningful citation gain.
- Reported: Bing says schema helps its LLMs understand pages.
- Theory: markup may help machines parse a page, which could matter for pages AI does not yet see.
- DocumentedGoogle does not require schema for AI Overviews or AI Mode.
- Measured, with limitsOne matched-control test found no meaningful citation gain.
- ReportedBing says schema helps its LLMs understand pages.
- TheoryMarkup may help machines parse pages AI does not yet see.
Should you add schema? Our decision rules
Add schema when a page maps to a supported feature, when you can keep it accurate, and when the effort is small. Skip it in either of these cases:
- The markup would describe things users cannot see.
- You would spend a week on it instead of fixing a page that is not indexed.
These are our rules, in the order we apply them on a local service site:
| Page type | Markup | Priority | Why |
|---|---|---|---|
| Home page | Organization | Do it | One block, no required properties |
| Any page with a visible trail | BreadcrumbList | Do it | Cheap, low risk, desktop feature |
| Blog posts | Article (author, dates) | Do it | Makes authorship explicit |
| Real storefront or office | LocalBusiness | If it applies | Needs a true physical address |
| Service-area business, no public address | None for LocalBusiness | Skip | Do not invent an address |
| Own testimonials on own pages | Review markup | Skip | Self-serving reviews are ineligible for stars |
| Existing FAQ sections | FAQPage | Optional | No Google rich result since 7 May 2026 |
Order of operations matters more than the table. We check indexing first, then intent and content, then internal links, and only then markup. A valid schema block on an unindexed page does nothing.
- IndexingCheck that the page is indexed.
- Intent and contentCheck that it matches the search intent and the content beats what ranks.
- Internal linksCheck that internal links point at it.
- MarkupAdd schema only if a supported feature fits.
Our technical SEO service follows that order.
If your question is really about FAQ markup for AI answers, we dug into that separately in FAQ schema for AI visibility. If you are weighing a pile of AI optimization advice, our review of LLM SEO myths sorts claims by what is documented.
Want to apply this to your site?
Not sure where to start? Get a plan for your own business.
How do you check what schema your site already has?
Run a three-step check: look at what the page ships, validate it, then see what Google reported after indexing. The first step takes a minute and needs only a terminal.
- Pull the raw JSON-LDFetch the page the way a crawler does and list every block.
- Validate against Google's requirementsRun the live URL through the Rich Results Test.
- Crawl the site and compareCheck the crawl against Search Console reports.
Step 1: pull the raw JSON-LD
Fetch the page the way a crawler does and list every JSON-LD block. This script uses only Python’s standard library:
curl -sL https://example.com/water-heater-repair/ | python3 jsonld_audit.py
# jsonld_audit.py
import json, re, sys
html = sys.stdin.read()
blocks = re.findall(r'<script[^>]+application/ld\+json[^>]*>(.*?)</script>', html, re.S | re.I)
print(f"JSON-LD blocks found: {len(blocks)}")
for i, b in enumerate(blocks, 1):
try:
data = json.loads(b)
except json.JSONDecodeError as e:
print(f" block {i}: PARSE ERROR ({e.msg} at char {e.pos})")
continue
items = list(data) if isinstance(data, list) else list(data.get("@graph") or (data,))
for item in items:
print(f" block {i}: @type={item.get('@type')} keys={','.join(sorted(k for k in item if not k.startswith('@')))}")
We ran it on 22 October 2026 against a sample HTML file we wrote for this post. The third block has one deliberate typo: an Article missing its closing brace. It is not a client property.
Here is the output:
JSON-LD blocks found: 3
block 1: @type=Organization keys=logo,name,url
block 2: @type=BreadcrumbList keys=itemListElement
block 3: PARSE ERROR (Expecting ',' delimiter at char 136)
Broken JSON cannot be read at all, so block 3 is a real problem. Nothing downstream will announce that the page lost its Article markup.
Google’s unparsable structured data report appears only if Google found markup it could not parse. Every item in it is critical.
This check reads raw HTML. If JavaScript or a tag manager injects your markup, it will show zero blocks even though Google may see the rendered version. Test the URL, not pasted code, in the Rich Results Test, as Google’s JavaScript structured data guide recommends.
Step 2: validate against Google’s requirements
Run the URL through Google’s Rich Results Test during development. Google’s introduction tells you to check markup with that tool, and to monitor rich result status reports after deployment.
The test shows eligibility for Google features. It does not check everything schema.org allows.
Step 3: crawl the whole site and compare to Search Console
For more than a few pages, crawl. Screaming Frog’s structured data guide says to open Config > Spider > Extraction. There, enable JSON-LD, Microdata, RDFa, Schema.org Validation and Google Rich Result Feature Validation.
Results land in the Structured Data tab, with filters for missing markup, validation errors and parse errors.
Our view Our habit is a small sample first: the home page, two service pages and two blog posts. Then we run the full crawl and compare the result with Search Console.
Google’s rich result status reports appear under Enhancements only when Google finds valid markup of a supported type. They are not a complete list of every detected item. URL Inspection lists the Enhancements detected the last time the page was indexed.
A gap between the crawl and the reports is a finding. Our order for reading it:
- Crawl finds markup, Search Console shows no report: check whether the URL is indexed, then whether the type is a supported feature.
- Page source shows zero blocks, but the plugin claims to output markup. It is probably injected by JavaScript, so test the live URL in the Rich Results Test.
- Two blocks of the same type with different names: keep one source and switch the other off.
We tried a second sample file with two Organization blocks, one inside an @graph. The same script printed block 1: @type=Organization keys=logo,name,url and block 2: @type=Organization keys=name,url. That mismatch in keys is the tell.
Quick check Does your page source show at least one JSON-LD block, and does that block parse? If the count is zero or a block fails to parse, fix that before anything else.
What mistakes do we see with schema?
Most schema problems come from adding it for the wrong reason or letting it drift from the page. These four recur on service-business sites.
Marking up content the page doesn’t show
Teams paste a review score or an FAQ into the JSON-LD that the visible page never displays. Google’s policy says not to.
Key takeaway When markup and page disagree, the markup is the liability. So delete the block or put the content on the page.
A storefront address for a business that has none
A service-area company adds LocalBusiness with a co-working space or a home address to complete the fields.
The docs require a physical location. An invented one clashes with the Business Profile. Leave LocalBusiness out.
Stars from your own testimonials
Review markup on pages where you control the reviews does not qualify for stars. Google’s changelog also added a guideline in July 2026 on fake and undisclosed incentivized reviews.
Mark up third-party review data only where the rules allow it.
Plugin stacking
Two plugins each output an Organization block with different names and logos. The script above surfaces this at once as duplicate types with conflicting keys.
Pick one source, switch the other off, and rerun the check.
What the data doesn’t show
Several things about schema remain unmeasured, and anyone claiming certainty is guessing. We have no first-party data on schema effects for any client, and none of our published case studies isolates markup as the cause.
- The Ahrefs test covered pages that already had more than 100 AI Overview citations. It says nothing about pages AI does not yet see, where markup might help crawling or parsing.
- Pages that add JSON-LD often change other things at the same time, so any effect is hard to isolate.
- The test pooled all schema types, so one type could behave differently. Its 30-day window can also miss slower effects.
- Google documents what markup qualifies for. It does not publish how often markup changes click-through for any feature.
We also have no sourced data on how many local service sites see a measurable lift from Organization or local business markup. A lift is plausible but unquantified.
What should you do about schema this week?
Spend an hour, not a week. Do these in order:
- Run the three-step check.
- Delete duplicate and invalid blocks.
- Add Organization to the home page.
- Add BreadcrumbList and Article where missing.
- Move on to pages that do not rank.
Here is a hypothetical example. A plumbing company checks a small sample first: the home page, two service pages and two blog posts. The crawl finds an Organization block on the home page and nothing on the blog posts.
The company adds Article markup with author and dates to the posts, then reruns the check. It adds no LocalBusiness block, because it serves customers at their homes from a base it does not publish.
For the pieces that come before markup, start with our technical SEO guide. If you want markup built and tested rather than patched, that is our schema markup implementation service.
Frequently asked questions
Does schema markup improve Google rankings?
No, and Google has said so directly: John Mueller wrote in April 2025 that structured data won’t make a site rank better. The docs describes markup as a route to specific search features, not a ranking input. Add it when a page fits a feature, and expect packaging, not position.
Do I need schema for AI Overviews or AI Mode?
No. Google’s AI optimization guide, last updated 10 July 2026, says structured data isn’t required for generative AI search. No special schema.org markup is needed, but a page must be indexed to qualify as a supporting link. Keep markup for the rich results it can still earn.
Is FAQ schema still worth adding?
No, not for Google rich results: Google stopped showing the FAQ rich result on 7 May 2026 and removed its docs in June 2026. Visible FAQ sections still help readers, so keep those on the page. The markup itself is now optional housekeeping, not a reason to add questions.
Which schema types matter for a local service business?
Organization on the home page, BreadcrumbList on inner pages and Article on blog posts cover most sites. LocalBusiness belongs only where there is a real, physical location customers can find. In our view the Business Profile, not markup, does most of the local work, so fix that first.
Can wrong schema hurt my site?
It can cost you eligibility, because Google’s policies say markup must describe content visible on the page. An item missing required properties isn’t eligible for rich results, and Google applies manual actions for structured data violations. Those actions remove rich result eligibility, and markup with broken JSON can’t be parsed at all, so check it.
How do I check whether my site already has schema?
Search the page source for application/ld+json, or list the blocks by fetching the page with curl and running a short script. Then run the live URL through Google’s Rich Results Test. For a whole site, crawl with structured data extraction on and compare with Search Console’s Enhancements reports.
Should a service-area business add LocalBusiness schema?
Usually not, because Google’s local business docs require an address it describes as the physical location of the business. If you serve customers at their homes from a base you don’t publish, a made-up storefront address creates a mismatch with your Business Profile. Use Organization and leave LocalBusiness off.
Run the Website SEO Checker to scan the whole site first, then Get Your Organic Growth Plan.
Sources
- Structured data intro, Google Search Central, accessed 22 Oct 2026
- General structured data guidelines, Google Search Central, accessed 22 Oct 2026
- Search gallery, Google Search Central, accessed 22 Oct 2026
- Google Search Central updates and changelog, accessed 22 Oct 2026
- Optimizing for generative AI features, Google Search Central, accessed 22 Oct 2026
- AI features and your website, Google Search Central, accessed 22 Oct 2026
- Local business structured data, Google Search Central, accessed 22 Oct 2026
- Organization structured data, Google Search Central, accessed 22 Oct 2026
- Breadcrumb structured data, Google Search Central, accessed 22 Oct 2026
- Article structured data, Google Search Central, accessed 22 Oct 2026
- Review snippet structured data, Google Search Central, accessed 22 Oct 2026
- Rich result status reports, Search Console Help, accessed 22 Oct 2026
- URL Inspection tool, Search Console Help, accessed 22 Oct 2026
- Unparsable structured data report, Search Console Help, accessed 22 Oct 2026
- Generate structured data with JavaScript, Google Search Central, accessed 22 Oct 2026
- Google confirms structured data won’t make a site rank better, Search Engine Journal, accessed 22 Oct 2026
- Schema markup didn’t move AI citations in Ahrefs test, Search Engine Journal, accessed 22 Oct 2026
- Microsoft Bing and Copilot use schema for LLMs, Search Engine Land, accessed 22 Oct 2026
- Structured data in SEO Spider, Screaming Frog, accessed 22 Oct 2026
Want to apply this to your site?
Not sure where to start? Get a plan for your own business.
