Book a free consultation
JSON-LD structured data check

Schema Markup Validator

Paste JSON-LD or a page's HTML and find syntax errors, missing required properties and wrong values in common schema types, with the exact line to fix.

Validate structured data

Check JSON-LD for syntax errors and common mistakes. Paste markup, a whole page's HTML, or enter a URL.

Runs entirely in your browser. Nothing is uploaded.
In practice

Structured data mistakes that break markup

MistakeWhat happens
Curly quotes, a trailing comma or a missing commaThe JSON cannot be read at all, so every property in the block is ignored.
No @context, or a typo in the typeSearch engines cannot tell this is schema.org data. Types are case-sensitive: Localbusiness is not LocalBusiness.
Required properties missingThe markup may be ignored for rich results. A local business needs at least a name and an address.
Markup that does not match the visible pageGoogle's guidelines require structured data to describe content users can see. Hidden or mismatched markup can be ignored.
Ratings or reviews a business wrote about itselfGoogle does not show review rich results for these self-serving reviews.
Placeholder text such as "Your Business Name"It gets published as if it were real, which confuses search engines and customers.
On this tool

Before you trust a clean result

  • The markup describes things a visitor can see on that page, with the same name, address and phone number.
  • You tested the same page with the Rich Results Test from Google for the final word on eligibility.
  • You removed duplicate blocks added by both a plugin and your theme.
  • Structured data added by JavaScript was pasted from the rendered page, not just the source.
  • You re-validated after every change.
Read this

What a good result should show

Input

A <script type="application/ld+json"> block with a LocalBusiness or FAQPage, or a whole page's HTML containing one or more of them.

What you should see

One panel per block. A syntax error shows its line and column and a hint for the usual cause. Valid JSON shows failures, warnings and notes for each entity, plus a formatted copy. Press Load sample markup to see both kinds.

Be clear about what this is

A syntax and common-rules check, not Google's tester

The tool checks JSON syntax and documented rules for the types it knows. It does not contain the whole schema.org vocabulary and it cannot predict rich results. Use it to catch mistakes early, then confirm with Google's Rich Results Test and the Schema.org validator.

How it works

How the validation runs

  1. Find the blocks. Raw JSON is used as it is. If you paste HTML, every application/ld+json script is pulled out. Microdata and RDFa are detected and reported but not checked.
  2. Parse the JSON. If parsing fails, the tool works out the line and column and looks for the usual causes: curly quotes, trailing commas, single quotes, comments, unquoted names and HTML entities.
  3. Walk the entities. Nested objects and @graph arrays are followed, so a business, its address, its hours and its FAQ are each checked.
  4. Apply rules. Required and recommended properties follow Google's structured data documentation where it defines them. Value formats are checked: URLs, phone numbers, ISO dates, prices, ratings, coordinates and times.
  5. Report honestly. Types outside the tool's rule list are reported as notes, not failures, because their properties cannot be judged here.
Detail

How severity is decided

LevelMeaning
FailInvalid JSON, a missing @context or @type, a missing required property, or a value that is the wrong kind (a text price, a latitude of 120).
WarningProbably a mistake or a weakness: a mistyped type name, a URL without https, a phone number that is not a phone number, placeholder text, an empty value.
NoteInformation only: a recommended property you left out, an unknown type that cannot be checked, or a Google policy to be aware of.

Google lists no required properties for some types, such as Organization and Article. For those the tool reports missing properties as notes, not failures.

Results

Limits worth knowing

  • Only a curated set of common types has property rules. Other valid types are checked for syntax only.
  • The rules reflect documentation at the time of writing. Google changes its requirements, so re-check important pages.
  • Passing here does not mean Google will show a rich result. Google decides based on page quality, policy and eligibility.
  • URL mode reads the HTML as delivered, so markup injected by JavaScript is not seen.
On this tool

Schema Markup Validator questions

Is this the same as Google's Rich Results Test?

No. This tool checks JSON syntax and a curated set of documented rules. Google's Rich Results Test uses Google's own systems to say whether a page is eligible for rich results. Use both: this tool to catch mistakes quickly, and Google's to confirm.

Why does it say my type is not in its rule list?

Schema.org has hundreds of types and the tool only has rules for common ones. A type outside the list is reported as a note, and its syntax is still checked. Use the Schema.org validator for the full vocabulary.

What does the line and column in a JSON error mean?

It is where the parser noticed the problem, which is usually at or just after the real mistake. A missing comma is typically reported at the start of the next item.

Can it check Microdata or RDFa?

No. It detects them in pasted HTML and tells you, but it validates JSON-LD only, which is the format Google recommends.

Why is a missing recommended property not a failure?

Recommended properties improve how well your data is understood but are not required. The tool lists them as notes so you can decide.

Is my markup stored or sent anywhere?

No. In paste mode everything stays in your browser. In URL mode only the web address goes to our server to fetch the page, which is returned to you without being saved.

Why did it flag my review markup?

Google does not show review rich results for reviews a business writes about itself (self-serving reviews). The tool mentions this when a LocalBusiness carries its own ratings, so you can decide whether to keep them.

Want it handled for you?

Turn this report into a fix plan.

Our Local SEO team can review your results, fix the issues that matter and track the calls and enquiries that follow.