Why is my structured data valid but showing no rich results?
Valid and eligible are different tests. Each rich result type has required properties, and markup can pass every syntax check while qualifying for nothing.
By Sapun Lamichhane · Arcetis
Because valid and eligible are two different tests. Your JSON-LD can parse cleanly, resolve to real schema.org types and still qualify for nothing, because each rich result format has its own required properties that validity does not check.
A Product without an `offers` block is valid Product markup and ineligible for a product result. An Article without `datePublished` is valid and ineligible. Nothing in a syntax check tells you this.
What does a validator actually check?
A structured data validator answers three questions, and none of them is about eligibility:
- 1Does the JSON parse? A trailing comma or an unescaped quote makes the whole block invisible.
- 2Does the `@context` resolve? A context of `http://schema.org` still works but is legacy; a typo produces terms that expand to nothing.
- 3Do the types and properties exist in the vocabulary? A misspelled `@type` is not an error in JSON - it is simply an entity nobody recognises.
Doing this properly means expanding the markup rather than string-matching it: resolving every term to its fully-qualified schema.org IRI against its context, and normalising every value to the specification's array form. That is what lets a checker answer 'is there an Organization here' correctly whether you wrote a bare string, an array, an alias or a custom vocabulary prefix.
Why do rich results appear and then vanish?
Eligibility is not a promise. Google decides per query whether a rich result is more useful than a plain one, and that decision changes with competition, device and intent. It also withdraws formats wholesale - FAQ and HowTo results were both heavily restricted in 2023.
Which is an argument for treating structured data as machine-readable description rather than a rankings lever. Answer engines read it regardless of whether Google draws a card, and that audience is growing while the carousel shrinks.
What is worth marking up if rich results are shrinking?
- Organization or LocalBusiness - establishes who you are as an entity, which is what an AI system needs to attribute a claim to you.
- Article with author and dates - authorship and recency are direct inputs to how content is assessed, and both are ambiguous in prose.
- Product with offers - still one of the most reliably-shown formats, and the one with real commercial value.
- Breadcrumb - cheap, stable, and still displayed in most results.
- FAQPage - no longer a carousel for most sites, still the clearest machine-readable way to state a question and its answer.
How do I check my own markup?
The schema markup validator on this site parses and expands your JSON-LD and checks it against 120 rules. The rich results page answers the separate question - which search features you currently qualify for, and what is missing from the ones you nearly do.