Skip to content
Free tools Schema Markup Validator

Schema Markup Validator — test structured data for Google rich results

Check JSON-LD, Microdata and RDFa from any URL or pasted code: every item, every property, and exactly what stands between your markup and a rich result.

100% free No signup JSON-LD, Microdata & RDFa Google rich-result rules URL or paste

How it works

  1. Enter a URL or paste code

    Check a live page exactly as crawlers receive it, or paste JSON-LD or HTML to test markup before you ship it.

  2. Every item is checked

    Product, Article, Breadcrumb, Organization, Local business, Event, Recipe, Video, Job posting and more — against what Google requires and recommends.

  3. Fix and test again

    Errors that block a rich result come first, with the exact property path. JSON syntax errors point at the line, with a hint for the usual culprits.

What structured data does

Structured data — schema markup — is a machine-readable description of what a page is about: this is a product that costs $129 and is in stock, this article was written by Jane Doe on 14 October, these are the steps of a recipe. Search engines use it to understand pages and to show rich results such as prices, star ratings and breadcrumbs, which take more space and earn more clicks than a plain blue link. AI assistants read it too, because it states facts without the guesswork of parsing prose.

Why another validator?

When Google retired its Structured Data Testing Tool in 2021, the job was split between two tools that each do half of it. Google's Rich Results Test only knows Google's features; the Schema Markup Validator at schema.org checks syntax and vocabulary but has no idea what Google requires. Neither explains in plain language what to change. This validator reads all three syntaxes — JSON-LD, Microdata and RDFa — from a live URL or pasted code, shows every item and property as a tree, and checks each rich-result type against Google's documented requirements, with the exact property path of every problem.

The rich-result types it checks

  • Product — a name, plus offers, a review or an aggregate rating; offers need a price and a currency.
  • Article, NewsArticle, BlogPosting — headline, image, dates and an author with a name.
  • BreadcrumbList — every item needs a position and a name, and every item but the last needs its URL.
  • Organization and LocalBusiness — name, logo, address, contact details and opening hours.
  • Event — name, start date and a location: a Place with an address, or a VirtualLocation with a URL for online events.
  • Recipe, VideoObject, JobPosting, SoftwareApplication, Course and Review — each with its own required fields.
  • FAQPage and HowTo — still validated, and labelled honestly: FAQ results are limited to authoritative government and health sites, and How-to results are gone.

The mistakes we see most

Prices and currencies

"price": "$129.00" is the classic: the price must be a plain number with a dot for decimals, and the currency belongs in priceCurrency as an ISO 4217 code (USD, not $ or usd). A missing priceCurrency is an error for merchant listings.

Enumerations written as text

"availability": "in stock" means nothing to a search engine. Use the schema.org value, https://schema.org/InStock, and the same for item condition, event status and attendance mode.

Ratings without a count

An AggregateRating needs a ratingCount or reviewCount next to its ratingValue, and a rating outside the 1–5 scale needs bestRating and worstRating. Without them, no stars.

Broken JSON

One trailing comma makes a whole JSON-LD block invalid, and search engines silently ignore all of it. The validator shows the line and column and names the usual suspects: trailing commas, single quotes, unquoted keys, comments and line breaks inside strings.

Dates, URLs and context

Dates need ISO 8601 (2026-10-14, or with a time and a time zone offset), image and logo URLs should be absolute, and every JSON-LD block needs "@context": "https://schema.org". Markup using the old data-vocabulary.org vocabulary hasn't produced rich results since 2020.

Raw HTML vs the rendered page

The URL mode fetches the page the way a crawler does, without running JavaScript. If your schema is injected by a tag manager or a front-end framework, it won't be in that HTML. Google usually renders JavaScript and may still find it later; AI crawlers and many other bots generally don't. To test rendered markup, copy the page's HTML from your browser's developer tools and paste it in. The safest setup is to render structured data on the server, so every crawler sees it on the first request.

Keep your rich results

Rich results disappear the same way they arrive: quietly. A theme update drops the Product markup, a plugin conflict empties aggregateRating, a migration removes the breadcrumbs — and the first sign is a dip in clicks weeks later. Monity watches your key pages and alerts you when their structured data disappears or changes, including price and availability. For the rest of a page's search health, run the free SEO & AI visibility audit or the meta tag checker, and preview how the page looks when shared with the Open Graph preview.

FAQ

Common questions

What replaced Google's Structured Data Testing Tool?

Google retired the Structured Data Testing Tool in 2021 and split its job in two: the Rich Results Test, which only covers Google's own search features, and the Schema Markup Validator at schema.org, which checks syntax and vocabulary but not Google's requirements. This tool does both jobs at once: it reads JSON-LD, Microdata and RDFa, shows every item and property, and checks each rich-result type against the properties Google requires and recommends — from a URL or from pasted code.

What is the difference between an error and a warning?

An error is a missing required property or an invalid value: Google won't show a rich result for that item until it's fixed. A warning is a missing recommended property or a value in a shaky format: the item can still qualify, but with less information (no price in the snippet, no star rating) or at risk of being misread. Notes give context, such as a feature Google has retired.

Why don't my FAQ or How-to rich results show anymore?

Google changed the rules, not your markup. Since August 2023, FAQ rich results only appear for well-known, authoritative government and health websites, and How-to rich results were removed entirely in September 2023. The sitelinks search box (WebSite with a SearchAction) was retired in November 2024. The markup is still valid and can help search engines and AI assistants understand the page — the validator labels these types so you know what to expect.

My markup is valid. Why is there no rich result?

"Eligible" means Google can show a rich result, not that it will. Google also weighs the page's quality, whether the markup describes content people can actually see on the page, its structured-data policies (for example, a business can't earn review stars for reviews about itself), and what the searcher asked. New or changed markup can also take a while to be recrawled.

Does it see structured data added by JavaScript?

In URL mode it reads the HTML the server sends — the same thing AI crawlers and many other bots read. Markup injected by a script or a tag manager isn't in that HTML. Google usually renders JavaScript and may still find it, so to test it, copy the rendered HTML from your browser's developer tools (right-click the <html> element → Copy outerHTML) and paste it here. Monity's monitors read the rendered page, so they see both.

Should I use JSON-LD, Microdata or RDFa?

Google recommends JSON-LD: it lives in one script block, separate from your HTML, so it's easier to write, review and keep in sync. Microdata and RDFa are attributes woven through the markup and break easily when a template changes. All three are read and validated here, so you can audit an older site before migrating it.

Can I get an alert when my structured data changes?

Yes. A theme update, a plugin change or a CMS migration can silently drop your Product, Breadcrumb or Review markup — and with it your rich results. Monity watches your key pages and alerts you in Slack, Teams or email when structured data disappears or changes, including price and availability. The free plan includes 3 monitors.

Powered by Monity

Rich results vanish quietly.
Monity tells you when they do.

Monity watches your key pages and alerts you in Slack, Teams or email when structured data disappears or changes — a price, an availability, a rating — before it costs you clicks.

  • Free 7-day trial
  • No credit card
  • 3 monitors free, forever
Kamil, Alex and Martyna Median reply under 6 hours

Have a question?

Pricing, security, or scoping - pick a route and you will land in a real person's inbox.