Get a Free Consultation

Schema Markup Validator (JSON-LD Checker)

Paste JSON-LD or a full page’s source and get plain-English errors, warnings and fixes, checked against Google’s structured data requirements. Line-level JSON errors, 20+ schema types. Free, no sign-up, and nothing leaves your browser.

Updated Live validation in your browser
0 lines
Checked locally, never uploaded

What is a schema markup validator?

A schema markup validator checks structured data, usually schema.org JSON-LD, for two things: whether the code is valid, and whether it includes the fields Google expects for that content type.

It finds broken JSON, a missing @context or @type, and missing required or recommended properties before you publish. This one runs entirely in your browser, so unpublished markup is never uploaded.

It does not replace Google’s Rich Results Test, which is the only way to confirm eligibility for a specific live page.

Example: what the validator flags

{
  "@context": "https://schema.org",
  "@type": "Article",
  "headline": "How schema works",
  "datePublished": "13/10/2026",   // not ISO 8601
  "author": { "@type": "Person" }  // missing name
}

✗ author: Person is missing name
▲ datePublished should be 2026-10-13
▲ image is recommended for Article

What are the most common JSON-LD errors?

Most failures come from a handful of causes. Each one has a quick fix.

ProblemSeverityUsual causeFix
Invalid JSONErrorTrailing comma, curly quotes, comments or unescaped quotesFix the character at the reported line and column, then run Format JSON
Missing @contextErrorBlock starts at @typeAdd "@context": "https://schema.org"
Missing @typeErrorObject has properties but no declared typeDeclare a type such as Article or Product
Missing required fieldErrorGoogle needs it for that rich result, for example Offer.priceAdd the field named in the report
Missing recommended fieldWarningOptional property left outAdd it where it is true and visible on the page
Date not ISO 8601WarningDates written as 13/10/2026 or “Oct 13”Use 2026-10-13 or a full timestamp
Relative URLWarning/logo.png instead of a full addressUse an absolute https:// URL
Price with a symbolWarning"price": "$49.99"Use "49.99" plus priceCurrency
Unresolved @idNoteA node points to an id that is not in this blockFine if defined elsewhere on the page, otherwise add the node

Which validator should you use?

Each tool answers a different question. Use this one while you write, then Google’s test before you ship.

ToolQuestion it answersInputGoogle rich result eligibility
This validatorIs my JSON-LD valid and complete for Google’s documented fields?Pasted code or page source, no live URL neededChecks documented required and recommended fields, runs offline
Google Rich Results TestCan this page qualify for a Google rich result?Live URL or pasted codeAuthoritative for Google features
Schema Markup ValidatorIs my markup valid schema.org vocabulary?Live URL or pasted codeNot Google-specific

What does this validator check?

Six checks run on every block, plus field rules for the types listed below.

Syntax

JSON that parses

Reports the line and column of the first syntax error and shows the surrounding lines, with hints for trailing commas and curly quotes.

Structure

@context and @type

Confirms each block declares schema.org and a type, and understands blocks that share one @context across an @graph.

Fields

Required and recommended

Compares each item against Google’s documented properties for its type, including nested offers, authors and breadcrumb entries.

Formats

URLs, dates and numbers

Flags relative URLs, dates that are not ISO 8601, prices with currency symbols and ratings that are not numbers.

Graph

@id references

Notes when a node points to an @id that is not defined in the same block, so you can tell broken links from intentional ones.

Page source

Every block on a page

Paste a whole page and each application/ld+json block is validated on its own. Microdata and RDFa are detected and flagged.

Which schema types are supported?

Any JSON-LD gets the structural checks. These types also get field-level checks.

ArticleBlogPostingNewsArticleProductOfferAggregateRatingReviewFAQPageBreadcrumbListLocalBusinessOrganizationPersonWebSiteVideoObjectSoftwareApplicationServiceRecipeJobPostingHowToEventPostalAddress

Valid is not the same as eligible. Google now shows FAQ rich results only for well-known government and health sites, and has retired HowTo rich results and the sitelinks search box. Markup for these can still be valid, so the validator reports a note rather than an error.

How do you validate schema markup?

Four steps, from paste to publish.

  1. Paste your markup

    Drop in JSON-LD, or paste a page’s full source to check every block on it.

  2. Run the check

    Press Validate, or Ctrl or Cmd plus Enter. Results update as you edit.

  3. Fix errors first

    Errors break the markup. Warnings improve it. Each message names the field and gives an example.

  4. Confirm with Google

    Publish, then test the live URL in Google’s Rich Results Test and watch Search Console.

Schema validation questions, answered

Quick answers on what validation can and cannot tell you.

What is a schema markup validator?

A schema markup validator checks structured data, usually JSON-LD, for valid syntax and for the properties search engines expect. It finds errors such as broken JSON, a missing @type or a missing required field before you publish.

Is this schema validator free?

Yes. It is completely free, with no sign-up, no watermark and no limit on how many times you validate.

Does it replace Google’s Rich Results Test?

No. This tool checks syntax and documented fields in your browser. Only Google’s Rich Results Test and Search Console can confirm whether a live page is eligible for a rich result.

Is my markup sent to a server?

No. The rules are built into the page as JavaScript and your markup is parsed in your browser. Nothing is uploaded, stored or logged, so unpublished or confidential markup stays private.

Can I validate more than one schema block?

Yes. Paste a full page and every application/ld+json block is found and checked separately. Blocks that use @graph are validated item by item.

What is the difference between an error and a warning?

An error is something that breaks the markup or a field Google documents as required for that type. A warning is a recommended field or a formatting issue. Warnings will not invalidate the schema, but fixing them can improve rich result eligibility.

Does valid schema guarantee rich results?

No. Google decides eligibility per page, and some features are limited to certain kinds of sites. Valid markup is necessary for a rich result but never a guarantee.

Does schema markup help AI Overviews?

Google says AI features need no special markup. Structured data still helps search engines understand a page, and it should match the visible content. Clear, crawlable content matters most.

Why does Google show a warning my validator did not?

Google applies its own page-level rules, including content policies and which features each site can use. This tool checks documented fields only, so always confirm important pages with Google’s Rich Results Test.

I do not have schema yet. Where do I start?

Use the Schema Markup Generator Hub to build JSON-LD for common types, then check it here before publishing.

Need schema rolled out and validated across your whole site?

Search Savvy’s technical SEO team implements, tests and monitors structured data on every template, not just one page at a time.

See our SEO services