Docs
Schema validator (JSON-LD with content cross-check)
Validate JSON-LD per-property and catch the silent failures Google Rich Results Test misses - in particular, schema that contradicts visible page content.
JSON-LD schema is how you tell search engines and AI crawlers what each entity on the page actually is. Most validators check syntax. Metaspry’s checks syntax + spec compliance + does the markup match what the page actually says — which is the gap Google’s own Rich Results Test refuses to close.
The gap nobody fills
Product schema declares price
$49.99. The page renders price$59.99.
Both values are technically valid. Google’s Rich Results Test passes. The rich result fires with the wrong price. Customers notice; you don’t.
This is the documented gap in every schema generator and validator on the market in 2026. Metaspry’s schema audit is built around closing it.
What gets checked
For every JSON-LD block on the page:
Syntax
@contextmust behttps://schema.org(case-sensitive in 2026; the oldhttp://form is dropped silently by Google).- Valid JSON: unescaped quotes, missing commas, dangling braces all flagged with line + column.
@typemust resolve to a real schema.org type.
Spec compliance
Per-entity required + recommended properties via the schema-dts type system:
| Entity | Required (Google) | Common omissions |
|---|---|---|
Article | headline, author, datePublished, image | author missing → rich result blocked |
Product | name, image, offers | offers.price + offers.priceCurrency must both be present |
FAQPage | mainEntity (Question[]) | Question.acceptedAnswer.text empty |
HowTo | step[] | Note: HowTo rich result was deprecated Sept 2023, schema still parsed |
BreadcrumbList | itemListElement[] | item must be absolute URL |
Organization | name, url | sameAs missing — Knowledge Graph linkage opportunity |
Recipe | name, image, recipeIngredient, recipeInstructions | Common bare-minimum recipe schemas fail eligibility |
Content cross-check (the differentiator)
This is what Google’s tool doesn’t do. We extract the visible content from the DOM and compare it to the schema claim:
Article.headline→ matches the<h1>?Article.author.name→ matches the byline element?Article.datePublished→ matches the visible date?Product.offers.price→ matches the visible price?Product.name→ matches the<h1>or<title>?Recipe.name→ matches the visible recipe title?FAQPage.mainEntity[].acceptedAnswer.text→ does each Q+A pair exist on the page?
Mismatches surface as warnings even when the schema is technically valid. Schema that lies is worse than schema that’s missing — Google can detect deception and demote.
Deprecated schemas
| Schema | Rich result removed | Still parsed for AI Overviews? |
|---|---|---|
FAQPage | 7 May 2026 | Yes — keep it if you care about AI citations |
HowTo | September 2023 | Yes — but eligibility lower than competing structured types |
QAPage | Restricted to forum sites | Yes |
Sitelinks (manual) | n/a (Google generates automatically) | n/a |
Metaspry flags these as deprecated for rich results, kept for AI parsing rather than just “deprecated, remove” — context matters.
Rich Results eligibility heuristic
For each entity type, Metaspry runs a heuristic that mimics Google’s eligibility check:
- All required properties present?
- Content quality signals (length, freshness, completeness)?
- Conflicting signals (e.g.,
Productschema but page has no buy button)?
The audit shows a per-entity eligibility verdict: eligible, marginal, not eligible — with the specific reason.
Knowledge Graph linkage
If the schema is Organization or Person, we check whether sameAs includes known Knowledge Graph entity URLs (Wikipedia, Wikidata, official social profiles). When present and verified, this dramatically improves entity-graph reach for AI search.
What you’ll see in the audit
The Audit tab shows a JSON-LD row per detected entity:
- Type + count
- Verdict: valid / warnings / errors
- Click into per-entity drill-down for each property, with spec links and content cross-check results
Differences from Google Rich Results Test
| Check | Google RRT | Metaspry Pro |
|---|---|---|
| Syntax / parse errors | Yes | Yes |
| Required-property check | Yes | Yes |
| Rich Result eligibility | Yes (Google’s list) | Yes (mimics, with explainer) |
| Content matches visible page? | No | Yes |
| Per-property error message with spec link | Limited | Yes |
| Knowledge Graph linkage hint | No | Yes |
| Deprecated schema context (AI Overview parse) | No | Yes |
| Rate-limited | Yes | No (local) |
Related
- Audit rules - full rule list
- AI crawler signals - why deprecated schema is still useful
- Indexability conflicts - the noindex / canonical / sitemap pile-up