Structured Data Validation: When Valid Schema Breaks Rich Results
Schema.org validation passes, but Google Rich Results Test says 'No items detected'—here's why
Add Schema.org markup to your page. Validate it at validator.schema.org—perfect, zero errors. Test it in Google's Rich Results Test—"No items detected." Your schema is valid, but Google won't display rich results for it. The problem: Schema.org validation checks theoretical correctness. Google's Rich Results Test checks practical eligibility. These are not the same thing.
The Two Validation Systems
Schema.org is an open vocabulary with hundreds of types (Person, Product, Event, Service, etc.). The official validator at validator.schema.org checks if your markup follows the Schema.org specification—correct property names, valid values, proper nesting.
Google's Rich Results Test checks something different: "Can this markup generate a rich result in Google Search?" Google only supports a subset of Schema.org types. If your type isn't supported, you get "No items detected"—even if your schema is perfect.
/* Example: Person schema */
{
"@context": "https://schema.org",
"@type": "Person",
"name": "Jane Doe",
"jobTitle": "Software Engineer",
"url": "https://example.com/jane"
}
/* validator.schema.org: ✓ Valid
Google Rich Results Test: ✗ No items detected
Why? Person schema doesn't generate rich results.
It's valid, but not eligible.
*/Common Schema Types That Don't Generate Rich Results
These types pass Schema.org validation but show "No items detected" in Google's Rich Results Test:
- Service: Valid schema, but Google doesn't generate rich results for services
- Person: Only used nested inside other entities (like Article author), not standalone
- WebSite: Basic implementations don't qualify for sitelinks search box
- ContactPoint: Needs to be part of Organization or LocalBusiness
John Mueller (Google): "Schema.org is a superset of all functionality available. The validator in Search Console is based purely on functionality that has visible changes in Google Search—a very small subset."
Required vs Recommended Properties
Schema.org marks some properties as "required" for validity. Google adds additional requirements for rich result eligibility. A property might be "recommended" in Schema.org but required by Google.
Example: Product Schema
/* Schema.org requirements (minimal valid Product) */
{
"@context": "https://schema.org",
"@type": "Product",
"name": "Wireless Headphones"
}
/* ✓ Valid according to Schema.org */
/* Google's requirements for Product rich results */
{
"@context": "https://schema.org",
"@type": "Product",
"name": "Wireless Headphones", // Required
"image": "https://example.com/headphones.jpg", // Recommended but critical
"description": "Noise-canceling wireless headphones", // Recommended
"offers": {
"@type": "Offer",
"price": "199.99",
"priceCurrency": "USD"
}
// OR reviews, OR aggregateRating
}
/* ✓ Eligible for Google Product rich results */Google's rule: Product schema must include name AND at least one of: review, aggregateRating, or offers (pricing). Without these, no rich results.
Example: Event Schema
/* Google's required fields for Event rich results */
{
"@context": "https://schema.org",
"@type": "Event",
"name": "Web Development Conference", // Required
"startDate": "2025-12-01T09:00:00-05:00", // Required
"location": { // Required
"@type": "Place",
"name": "Convention Center",
"address": "123 Main St, City, ST 12345"
}
}
/* Optional but recommended */
"image": "...", // Increases likelihood of rich results
"description": "...", // Improves user experience
"endDate": "..." // Shows event durationRecent Google Changes (2025)
Google removed support for 7 structured data types in June 2025:
- Book Actions
- Course Info
- Claim Review
- Estimated Salary
- Learning Video
- Special Announcement
- Vehicle Listing
These types were previously eligible for rich results but are now ignored. If you're using them, your markup still validates—Google just won't display rich results for it.
Product Rich Results Update (2025)
Old requirement: Product rich results required a Google Merchant Center account and product feed.
New (2025): On-page Product schema is sufficient. No Merchant Center needed. This expands eligibility to smaller e-commerce sites.
Common Reasons for "Valid Schema, No Rich Results"
1. Unsupported Schema Type
Your schema is valid, but Google doesn't generate rich results for that type. Solution: Check Google's structured data gallery for supported types.
2. Missing Required Properties
Schema.org says a property is "recommended," but Google requires it for rich results. Always check Google's documentation for each type.
3. Content-Markup Mismatch
<!-- Page content -->
<h1>Product Comparison: Top 10 Headphones</h1>
<!-- Schema markup -->
<script type="application/ld+json">
{
"@type": "Product",
"name": "Wireless Headphones XYZ"
}
</script>
/* Problem: Page lists 10 products, schema marks up 1
Google requires: Single product pages only
This page should use ItemList, not Product
*/4. Hidden or Irrelevant Content
Marking up content that's not visible to users (hidden divs, footer disclaimers) can disqualify your page from rich results. Google's guidelines prohibit marking up content users can't access.
5. Expired Time-Sensitive Content
{
"@type": "Event",
"name": "Summer Sale 2024",
"startDate": "2024-07-01",
"endDate": "2024-07-31"
}
/* If current date > endDate:
Google won't display rich results for expired events
*/How to Test Properly
Step 1: Google Rich Results Test
Start here: search.google.com/test/rich-results
- Enter your URL or code snippet
- Check for "Rich results can be displayed" message
- If "No items detected," your schema isn't eligible for Google rich results
Step 2: Schema.org Validator (Optional)
For generic validation: validator.schema.org
- Checks if your markup is valid Schema.org
- Useful for non-Google use cases (Bing, Yandex, accessibility tools)
- Doesn't predict Google Rich Results eligibility
Step 3: Google Search Console
After deploying, monitor "Enhancements" section in Search Console:
- Shows which pages have valid structured data
- Flags errors and warnings
- Reports rich result impressions (actual performance)
Production Checklist
- Verify schema type support: Check Google's structured data gallery before implementing.
- Include all required properties: Use Google's documentation (not Schema.org) for requirements.
- Add recommended properties: They're often critical for rich results even if marked "optional."
- Test with Rich Results Test: Don't rely on Schema.org validation alone.
- Match content to markup: Schema should describe visible page content, not aspirational data.
- Monitor Search Console: Track which pages actually generate rich results in production.
- Update expired content: Remove or update time-sensitive schema (events, offers) regularly.
The Reality of Structured Data
Valid Schema.org markup is the minimum bar, not the finish line. Google's rich results require:
- Supported schema types
- Google-specific required properties
- Content-markup alignment
- Compliance with quality guidelines
Passing Schema.org validation means your markup is technically correct. Passing Google's Rich Results Test means you're eligible for enhanced search results. Even then, Google doesn't guarantee rich results will appear—eligibility is not entitlement.
Always test with Google's tools first. Schema.org validation is useful for theoretical correctness, but Google's Rich Results Test tells you what actually matters for search visibility.
Advertisement
Explore these curated resources to deepen your understanding
Official Documentation
Tools & Utilities
Further Reading
Why Google's Structured Data Validator Shows Errors While Official Schema Version Doesn't
Understanding the difference between Schema.org and Google validation
How to Fix Schema Validation Errors
Common structured data errors and solutions
Google Expands Eligibility for Product Rich Results
2025 update removing Merchant Center requirement
Related Insights
Explore related edge cases and patterns
Advertisement