How to Validate JSON-LD

You added a JSON-LD block, published the page, and moved on. Weeks later, Search Console flags a structured data error, or the rich result you expected never shows up. Nothing on the page looks broken, so it's easy to assume the schema is fine. It usually isn't, and the only way to know for sure is to actually validate it.

Validating JSON-LD isn't a one-time formality you run before hitting publish. It's a check that confirms your code parses correctly, matches the schema type's requirements, and still reflects what's actually on the page — three separate things that can each quietly fail on their own.

Quick Answer

To validate JSON-LD, paste your page URL or raw code into Google's Rich Results Test or the Schema Markup Validator. These tools parse the JSON-LD the way search engines do and report syntax errors, missing required fields, and warnings for recommended properties. Fix flagged issues, then re-test the live URL after publishing to confirm it passes cleanly.

What does "validating JSON-LD" actually mean?

Validation is really three separate checks stacked on top of each other, and passing one doesn't mean you've passed the others.

A page can sail through a basic syntax check and still get flagged in Search Console weeks later, because syntax was never the part that was broken.

Why validation matters, even for correct-looking code

Skipping validation, or treating a syntax pass as the finish line, creates problems that surface later and cost more to fix:

📊 Quick stat A large share of structured data errors reported in Search Console trace back to schema that validated fine at launch but broke silently after a later content or template change — which is why a one-time check at launch isn't enough on its own.

Step-by-step: validating your JSON-LD

  1. Grab the live URL or the raw code. Validators can test either a published page or a pasted code snippet — use the live URL whenever the page is already public, since that's what search engines actually see.
  2. Run it through Google's Rich Results Test. This checks not just syntax, but whether the markup meets Google's specific requirements for the rich result it's targeting.
  3. Cross-check with the Schema Markup Validator. This tool checks compliance against the broader schema.org specification, which is useful for types or fields Google's tool doesn't specifically test for.
  4. Read every error and warning, not just the pass/fail result. Errors usually block a rich result outright; warnings flag optional-but-recommended fields worth reviewing.
  5. Fix issues at the source. Correct the generator settings or the CMS field the schema came from, rather than patching the output snippet directly, so the fix survives the next regeneration.
  6. Re-test the live page after publishing. A snippet that validates in isolation can still fail once it's placed on the real page, so the final check should always be against the published URL.
  7. Recheck periodically, especially after site changes. Revalidate key templates after theme updates, plugin changes, or major content edits, since these are the most common causes of schema quietly breaking after launch.
Try the Rebrixe JSON-LD Validator — free Paste your code or URL, get instant syntax and schema compliance checks.
Validate JSON-LD →

Common mistakes that slip past a quick glance

1. Trusting a syntax pass as proof the schema works

Well-formed JSON can still be missing every field a schema type requires. Syntax validity and schema compliance are different checks, and passing one says nothing about the other.

2. Validating the snippet instead of the live page

A block that validates perfectly on its own can still fail once it's actually placed on the page, especially if it ends up duplicated, nested incorrectly, or dropped in the wrong location by the CMS.

3. Ignoring warnings because the test technically "passed"

A warning for a missing recommended field, like an image or review count, often determines whether a rich result actually renders, even though it doesn't count as a hard error.

4. Never revisiting schema after the initial launch

Structured data isn't a set-it-and-forget-it feature. A theme change, a content edit, or a plugin update can each quietly invalidate a block that worked fine the day it was added.

💡 Pro tip Keep a short list of which page templates carry which schema types, and re-run validation on that list any time you update a theme, plugin, or major content block — it turns a vague worry into a five-minute check.

Real-world examples

How different validation issues actually show up in practice, and what fixing them looks like:

E-commerce store
Missing required field
Product schema
Rich Results Test flags a missing "availability" field, blocking the shopping rich result until it's added.
News publisher
Duplicate script blocks
Article schema
A plugin and a manual snippet both output Article schema on the same page, and the validator flags the conflict.
Local business site
Mismatched content
Organization schema
Schema lists an old phone number no longer shown on the page, passing syntax checks but failing an accuracy review.
Recipe blog
Broken after a theme update
Recipe schema
A theme update strips the JSON-LD script tag from the page template, caught by a routine revalidation pass.

In each case, the code looked fine at a glance — the issue only surfaced once it was actually run through a validator.

Validation tools compared

A look at the main ways to validate JSON-LD, and what each one is actually good for.

Tool Checks Best for Limitation
Google Rich Results Test Syntax + Google eligibility Confirming a specific rich result will be eligible Only covers schema types Google supports for rich results
Schema Markup Validator Full schema.org compliance Types and fields outside Google's rich result list Doesn't predict how Google will actually treat the page
Search Console coverage report Errors on already-indexed pages Ongoing monitoring across an entire site Reports lag behind real-time changes to a page
Manual JSON linting Syntax only Quick sanity check while editing code by hand Says nothing about schema compliance or accuracy

Validate your JSON-LD right now — free

The Rebrixe JSON-LD Validator checks syntax and schema compliance for the most common schema types — Article, Product, FAQPage, Recipe, and more. Paste a URL or raw code, no account needed, and get a clear list of errors and warnings in seconds.

Free JSON-LD Validator Paste a URL or code, get instant error and warning results.
Open JSON-LD Validator & Linter →

Frequently asked questions

A syntax check only confirms the JSON itself is well-formed, with matching brackets and correct commas. A rich results check goes further and confirms Google can actually turn that valid JSON into a specific search feature, which is a stricter and more useful bar to clear.
Syntax validators only check that the code parses correctly, not that it contains the specific fields a schema type requires or that those fields match what's visible on the page, which is exactly what Search Console and the Rich Results Test check for.
Every unique template needs validation once, since pages built from the same template usually share the same structured data pattern. Spot-checking a handful of pages per template catches most issues without testing every single URL by hand.
No. Content updates, plugin changes, and theme edits can all quietly break a JSON-LD block that validated correctly at launch, so a periodic recheck, especially after any site change, catches regressions before they show up in Search Console.
Yes. Passing validation confirms the markup is technically correct and eligible, but Google still decides at its own discretion whether to actually display a rich result for any given search, and validity alone doesn't guarantee that outcome.
Paste the live page URL directly into Google's Rich Results Test. It fetches the page, extracts every structured data block, and reports errors, warnings, and a preview in under a minute with no account or installation needed.
Errors typically block a rich result from appearing and should always be fixed. Warnings usually flag optional fields that are recommended but not required, so they're worth reviewing but won't necessarily stop the schema from working.

Validate your JSON-LD in seconds

The Rebrixe JSON-LD Validator checks syntax and schema compliance for the most common schema types — no account, no watermark, just a clear list of errors and warnings.

Launch the JSON-LD Validator → Launch the JSON-LD Validator & Linter →
← Back to blogs