Pre-check JSON-LD structured data before publishing: valid JSON, a schema.org @context, @type on every node, and the properties rich results commonly require for FAQ, HowTo, Article, Product, and more.

Schema validator

Sanity-check JSON-LD structured data before you publish: JSON syntax, @context, @type, and commonly required properties for FAQ, HowTo, Article, Product, and other rich-result types. Paste bare JSON or a whole <script type="application/ld+json"> block.

This is a structural pre-check, not a guarantee of rich results. Before shipping important markup, confirm with Google's Rich Results Test, which applies Google’s full (and changing) requirements.

How to use Schema validator

  1. Paste your JSON-LD—bare JSON or the whole <script type="application/ld+json"> block.
  2. Click validate to see errors, warnings, and passing checks per node.
  3. Fix warnings about missing properties, then re-test important markup in Google’s Rich Results Test.

Example: A FAQPage missing mainEntity, or a Product offer without priceCurrency, gets flagged.

Frequently asked questions

Is this the same as Google’s Rich Results Test?
No. This is a fast structural pre-check that runs in your browser. Google’s test applies its full, evolving eligibility rules—use it as the final gate for markup that matters.
What is the difference between an error and a warning here?
Errors break the markup entirely (invalid JSON, missing @type or @context). Warnings flag missing properties that rich results usually expect—the markup is valid, but Google may ignore it.
Does it support @graph?
Yes. If your JSON-LD wraps multiple nodes in an @graph array, each node is checked individually.