EdgeCases Logo
Nov 2025
SEO
Surface
5 min read

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

seo
structured-data
schema
rich-results
edge-case

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 duration

Recent 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

  1. Verify schema type support: Check Google's structured data gallery before implementing.
  2. Include all required properties: Use Google's documentation (not Schema.org) for requirements.
  3. Add recommended properties: They're often critical for rich results even if marked "optional."
  4. Test with Rich Results Test: Don't rely on Schema.org validation alone.
  5. Match content to markup: Schema should describe visible page content, not aspirational data.
  6. Monitor Search Console: Track which pages actually generate rich results in production.
  7. 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

Related Insights

Explore related edge cases and patterns

SEO
Deep
Canonical URLs: The Duplicate Content Paradox
7 min
SEO
Expert
JavaScript Hydration and SEO: The Googlebot Race Condition
7 min

Advertisement