Schema Markup Validator
This free schema markup validator and structured data testing tool checks a live URL or pasted JSON-LD for an SEO score, errors, warnings and rich-results readiness — no account needed.
Why use a schema.org validator before you publish
A single missing comma, an unclosed bracket, or a forgotten @type can silently break your JSON-LD — search engines will simply ignore the markup instead of showing an error on your site. Validating before you publish catches these mistakes early, so the rich results, Knowledge Panels or AI citations you built the markup for actually have a chance to appear. This tool runs the same two checks that matter most: is the code syntactically valid JSON, and does it contain the @context and @type properties every schema.org type needs to be recognized.
What this JSON-LD validator checks — and what it doesn't
This describes the "Validate Code" tab specifically. It performs two layers of checking. First, JSON syntax: braces, quotes, commas and brackets must all be balanced and correctly placed, exactly what JSON.parse enforces. Second, schema.org completeness at a basic level: the code must have an @context (normally "https://schema.org") and an @type identifying what is being described — either directly on the top-level object (e.g. Organization, Product, Recipe) or, for the common @graph pattern that bundles several entities in one script tag (e.g. an Organization cross-linked with a WebSite), an @type on each entry inside @graph. Everything in this tab runs locally in your browser; pasted code is never sent anywhere. "Validate URL" works differently and goes much further — see below.
Example of valid JSON-LD
A minimal but valid piece of schema.org markup needs at least @context and @type, plus whichever properties matter for that type. A correct Organization example looks like this:
{
"@context": "https://schema.org",
"@type": "Organization",
"name": "ACME Corporation",
"url": "https://www.example.com"
}Reading your URL results: SEO score and rich results eligibility
When you validate a URL, our server fetches the page and scores every recognized schema on it. "Completeness" is simply the share of tracked fields (required + recommended) that are actually filled in. The "SEO score" is a weighted blend of five metrics shown on the SEO Analysis tab: Required Fields (are the fields Google needs at all present), Recommended Fields (the fields that strengthen the result but aren't strictly required), Technical SEO (are URLs absolute, dates in valid ISO 8601 format, and @context set correctly), Content Quality (heuristics like a description of reasonable length, and no obvious placeholder text or images), and Rich Results (how close this schema is to the specific fields Google needs for its rich result). The overall score at the top is the average SEO score across every recognized schema, mapped to a letter grade from A+ (95+) down to F (below 55). The Rich Results Preview tab is an illustrative mockup built from your data — it approximates how the rich result could look, not a guarantee of how Google will actually render it.
Which schema types get a full SEO scorecard
"Validate URL" gives a complete SEO scorecard, rich-results preview and improvement suggestions for these 16 types: Organization, WebSite, Product, Article/BlogPosting/NewsArticle, Recipe, LocalBusiness (and its subtypes like Restaurant or Store), Event, Person, BreadcrumbList, FAQPage, JobPosting, Course, VideoObject, SoftwareApplication, HowTo and standalone Review. Note that Google discontinued FAQ rich results and sharply restricted HowTo rich results, so those two are still validated for correct structure but shown without a rich-results badge. Any other schema type on the page is still detected and shown in full in the Schema Tree tab — it just doesn't get a scorecard yet.
Frequently asked questions
Is this a schema.org validator or a structured data testing tool?
Does this replace Google's Rich Results Test?
When should I use this instead of Google's Rich Results Test?
What does "valid JSON, but not valid schema.org markup" mean?
Is my pasted code sent to a server?
Can @type be more than one value?
My page has multiple JSON-LD script blocks — can I check them all at once?
How does "Validate URL" work, and is it safe to use on private pages?
Is there a limit on how many URLs I can check?
The URL I checked has no structured data at all — now what?
Can "Validate URL" see JSON-LD injected later by JavaScript or a tag manager?
What does it mean when a schema type "isn't covered by scoring yet"?
What's the difference between the four results tabs?
Does "Validate URL" follow redirects?
Is the SEO score a guarantee of better rankings?
Related tools
Organization Schema Generator
Generate Organization JSON-LD with logo, social profiles and contact for E-E-A-T.
Local Business Schema Generator
Generate Local Business JSON-LD structured data for your business.
IBAN Validator
Check whether an IBAN is valid, instantly and for free.
FAQ Schema Generator
Generate FAQPage JSON-LD for AI search and structured Q&A data.
Product Schema Generator
Generate Product JSON-LD with price, GTIN and ratings for Google Shopping.
Article & Blog Posting Schema Generator
Generate Article, Blog Posting or NewsArticle JSON-LD for your posts.
