Structured Data That Actually Moves Rankings
Which schema types convert to rich results, and which are just vanity
Most sites add schema markup and see zero ranking movement. They conclude schema doesn't work, or Google is lying about its importance, or their competitors are doing something smarter.
None of that is true. Schema markup isn't, and never has been, a direct ranking signal. Google's documentation is explicit about this. What schema does is make a page eligible for rich results — stars, prices, FAQ expansions, how-to steps — which can dramatically increase click-through rate from the SERP. That's where the ranking lift comes from: indirectly, via CTR and engagement signals, not from the schema itself.
This article covers the schema types that actually convert to visible SERP features in 2026, the JSON-LD patterns that work, and the misuse patterns that trigger manual actions.
What structured data actually does
Structured data is metadata added to a page so search engines can parse specific entities — the price of a product, the author of an article, the rating of a review — without relying on pattern-matching unstructured HTML.
When Google's systems see valid Schema.org markup on a page, several things can happen:
- Nothing visible, but the page is indexed into Google's entity graph more accurately.
- Rich results appear in the SERP: stars, prices, badges, expanded snippets.
- Carousel inclusion for types like recipes, products, events (in applicable SERPs).
- Knowledge Graph entries get built or enhanced for types like
Organization,Person,Place. - Voice search and Google Assistant answers use structured data to extract responses.
Of these, rich results and carousel inclusion are the ones with measurable SEO lift. The others are long-term entity-understanding plays that matter at scale but don't show ranking movement in a normal timeframe.
Schema types that earn rich results in 2026
The list changes annually as Google adds and deprecates features. Current high-value types:
Article / NewsArticle / BlogPosting — enables article rich results with author, date, image. Most of the SERP treatment is modest; what matters more is Top Stories eligibility for news-class sites.
Product with Offer and AggregateRating — enables price, availability, and star ratings in product SERPs. High-impact for ecommerce, especially on mobile.
Recipe — enables recipe rich results with cook time, rating, image. Competitive vertical; table-stakes for food/cooking sites.
FAQPage — previously generated expanded FAQ snippets. Google significantly reduced FAQ rich result display in 2023 (now primarily shown for health and government sites). Still worth adding for the types of queries where Google shows them, and for the structured understanding; don't expect big CTR lift on general sites.
HowTo — similarly restricted in 2023. Still displays on specific query types (mobile step-by-step), diminished elsewhere.
BreadcrumbList — nearly universal in SERP display. Shows your site hierarchy below the title. Trivial to implement, high compliance rate, visible impact.
Organization (in the root of the site) — feeds the Knowledge Panel for branded searches. Include sameAs with social profiles, logo, contactPoint. High leverage for brand queries.
Event — event listings with date, location. High-intent queries.
Review / AggregateRating — star ratings. Subject to heavy abuse so Google applies quality filters; content must match what visible users see.
LocalBusiness — business details for local SERPs. Complementary to Google Business Profile, not a substitute.
VideoObject — video-rich results with thumbnail, duration, upload date. Essential if video traffic matters to you.
Types that sound useful but rarely produce visible rich results in 2026: Book, Movie (absorbed mostly into Knowledge Graph without SERP display), Course (Google discontinued course rich results in 2024 for most contexts), JobPosting (restricted to sites with IndexNow participation and verified employer status).
JSON-LD best practices
JSON-LD is Google's preferred format because it decouples semantic annotation from the rendered DOM. Put it in a <script type="application/ld+json"> block, ideally in the <head>, and regenerate it as content changes.
Template for an article:
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Article",
"headline": "How crawl budget actually works",
"image": [
"https://example.com/hero-1x1.jpg",
"https://example.com/hero-4x3.jpg",
"https://example.com/hero-16x9.jpg"
],
"datePublished": "2026-04-24T09:00:00+00:00",
"dateModified": "2026-04-24T09:00:00+00:00",
"author": {
"@type": "Person",
"name": "Enric Ramos",
"url": "https://crawlsense.ai/author/enric-ramos"
},
"publisher": {
"@type": "Organization",
"name": "CrawlSense",
"logo": {
"@type": "ImageObject",
"url": "https://crawlsense.ai/logo.png"
}
},
"mainEntityOfPage": "https://crawlsense.ai/blog/crawl-budget-guide"
}
</script>
Product page template:
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Product",
"name": "Pegasus 41 Running Shoe",
"image": ["https://..."],
"description": "...",
"sku": "NIKE-PEGASUS-41-BLK-10",
"brand": {
"@type": "Brand",
"name": "Nike"
},
"offers": {
"@type": "Offer",
"url": "https://...",
"priceCurrency": "EUR",
"price": "139.00",
"priceValidUntil": "2026-12-31",
"availability": "https://schema.org/InStock",
"itemCondition": "https://schema.org/NewCondition"
},
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "4.6",
"reviewCount": "127"
}
}
</script>
Three rules that catch the common errors:
- Absolute URLs. Never use relative paths in JSON-LD. Use the full
https://URL. - ISO 8601 dates.
2026-04-24T09:00:00+00:00, notApril 24, 2026. - Escape everything. JSON doesn't tolerate unescaped quotes, backslashes, or literal line breaks inside strings. Broken JSON is silently ignored.
Validation workflow
Add validation to CI for any template generating schema. Tools:
- Google Rich Results Test — tests whether the URL is eligible for specific rich result features Google supports. The definitive source.
- Schema.org validator — validates against Schema.org vocabulary, agnostic of Google's selective support. More strict.
- GSC's Enhancements reports — production monitoring. Shows you when Google re-parses your templates and whether anything regressed.
The workflow that prevents regressions:
- Unit test each critical template (product, article, category) produces valid JSON-LD on synthetic data.
- Add an automated check: fetch the rendered HTML post-deploy, parse the JSON-LD, validate structure. Fail the deploy if required fields are missing.
- Monitor GSC Enhancements weekly. If your Product rich results count drops 20% in a week, it's a regression — act in hours, not days.
Misuse patterns that trigger manual actions
Schema markup lives under the same spam policies as other SEO signals. Google does apply manual actions for structured data abuse; they show up as "Structured data issue" in GSC Manual Actions.
Claiming features not visibly present. If your Product schema includes aggregateRating but no reviews are visible on the page, that's a violation. Google's raters check. Don't fake reviews.
Markup on pages the content doesn't warrant. A blog page marked up as Recipe because you want the rich result is misuse. The page must be a recipe.
Invisible or hidden content in structured data. If your FAQPage schema has 10 Q&As but only 3 are visible on the page, the hidden 7 violate guidelines.
Keyword-stuffed schema fields. description field with a 500-word keyword-loaded string is penalized. Keep structured data descriptions short and honest.
Duplicating primary types. A page can't be both Recipe and HowTo and Article simultaneously — Google's parsers will pick one and may penalize pages trying to claim multiple unrelated primary types.
The implementation priority stack
If you're starting from scratch:
Organizationschema sitewide — in the site footer or a global component. Low effort, compounds over time for brand queries.BreadcrumbListon every page — almost universal SERP display. One-time template work.- Primary entity per template —
Articlefor blog,Productfor PDPs,Recipefor recipes. The SERP feature multiplier. - Review/rating where earned — only when you have real reviews visible.
- FAQ/HowTo where query-appropriate — don't force it if the content doesn't naturally structure as Q&A or steps.
Common mistakes I see on audits
Schema without real content. Pages with beautiful JSON-LD and thin body content. Schema helps the SERP feature; it doesn't rescue low-quality content from low rankings.
Stale dates. datePublished frozen on 2019 articles that were last touched in 2024 but where dateModified is also 2019. Google trusts accurate dates; lying about updates is caught and discounted.
AggregateRating before reviews exist. "0 reviews averaging 0.0 stars" schema is worse than no schema. Wait until you have real data.
Conflicting schema from plugins. WordPress sites often run 2-3 SEO plugins that each inject Article schema, creating duplicates. Keep one source of truth for schema generation.
Not regenerating schema on content updates. If your CMS serves schema from a static template and the article's dateModified is content-driven, a content edit must re-generate the schema or the date drifts.
Frequently asked questions
Is schema markup a direct ranking factor?
No, and Google has said so repeatedly. Schema's SEO value comes from (1) enabling rich results that lift CTR, (2) helping Google build its entity graph and knowledge panels, (3) supporting voice search / Assistant / Discover placement. Ranking lift is indirect via CTR and engagement signals.
Should every page have schema markup?
Primary types (Article, Product, etc.) on content pages that warrant them — yes. BreadcrumbList site-wide — yes. Organization on the homepage — yes. Don't force schema onto pages where it adds no value (legal pages, search result pages, thank-you pages).
Can I use multiple schema types on one page?
Yes, when they describe different entities on the page. An article page with Article schema (the article) + BreadcrumbList (navigation) + Organization (publisher) is correct — three entities, three types. What's misuse is claiming the page is multiple conflicting primary types (article + recipe + howto).
How quickly do rich results appear after adding schema?
Typically 1-4 weeks. Google needs to recrawl, parse, and re-evaluate rich result eligibility. Use the Rich Results Test to confirm eligibility immediately; wait for GSC to show actual impression data to confirm display in SERPs.
Should I use JSON-LD, Microdata, or RDFa?
JSON-LD. Google explicitly recommends it. Microdata and RDFa work but are harder to maintain (mixed with HTML markup) and mostly legacy at this point.
What to read next
- The Complete Guide to Technical SEO Audits — schema as one component of a technical audit.
- Product schema: variants, availability, ratings — deep dive for ecommerce sites.
- JSON-LD implementation patterns — template strategies that scale across a site.
Related articles
The Complete Guide to Technical SEO Audits
Most technical SEO audits fail the same way: they generate 80-page PDFs with 200 findings, and clients execute none of them. The audits that move rankings solve for one thing: which of five layers is broken, and which single fix restores the most value.
Hreflang Implementation: Mistakes and How to Avoid Them
Hreflang breaks silently. Bidirectionality errors, region code confusion, and mixed delivery methods cause international SEO issues that don't show up as explicit errors — just underperformance in secondary markets.
Core Web Vitals in 2026: What Still Matters
Core Web Vitals is a real but modest ranking signal — and the metrics keep shifting. INP replaced FID in March 2024. Here's what the current three metrics actually measure, what they don't, and where optimization actually moves the needle.