← All tools

Schema Validator

Find the structured data in your page’s code, check that it is valid, and see whether each item has the properties Google asks for.

What is structured data?

Structured data is a short description of a page written for machines. It says, in a fixed vocabulary, what the page is about: this is an article with this headline and this author, this is a product with this price, this is a list of questions and answers. The vocabulary almost everyone uses is called schema.org.

Google reads it to understand a page and, for some types, to show a richer result in search: stars under a product, a recipe’s cooking time, the path to a page as breadcrumbs. Google is clear that correct structured data makes a page eligible for these, not entitled to them.

How this test works

Our server downloads your page and reads its code without running scripts. It finds every block of JSON-LD, the format Google recommends, and checks each one in two steps.

First, the block has to be valid JSON. A missing comma or a stray quote makes the whole block unreadable, and everything in it is lost. Second, each item in the block is compared with what Google’s documentation asks for from its type: the properties it lists as required, and the ones it lists as recommended. Dates are checked for the form Google expects.

The report shows the result three ways: the overall picture in two rings, a checklist for each item, and further down every item as a tree with its properties and their values.

What is a good result?

The two rings at the top answer one question: is everything there? The first is the share of required properties that are present, across all the items we could check, and the second is the same for recommended ones. A full green ring means nothing is missing. They are counts, not a quality score: 5 of 6 present shows as 83.

Under them, every item has its own checklist: one tile for each property Google asks for from its type, with a tick where it is present. A missing required property is red, because it keeps the item out of the rich result for that type. A missing recommended one is yellow. If a block can’t be read at all, there is nothing to count, and the report shows a cross instead of the rings.

Some types, such as WebPage, have no rich result of their own, so Google asks nothing of them. They get the same row of tiles, one for each property the item has, marked “optional”. These don’t count towards the rings.

Required and recommended are Google’s words, from its structured data documentation. The checks cover the types used most: articles, products, breadcrumbs, FAQ pages, organisations, local businesses, sites, events, recipes, videos, reviews, job postings and software. Other types are listed without a property check, because Google has no rich result for them or we don’t cover them yet.

What this test can’t tell you

Google’s own Rich Results Test is the authority on whether a page qualifies, and its requirements change. Ours is a quicker first check and can be out of date for a type. We don’t check every nested detail, and we don’t check that the data matches what visitors see on the page, which Google requires.

We read the page as it arrives from the server. Structured data that a script adds in the browser, for example through a tag manager, is not seen here, though Google can usually read it. Microdata and RDFa, two older formats written into the page’s tags, are counted in the report but not checked yet.

Some rich results are shown only for certain sites whatever the markup says. FAQ results, for instance, are limited to well-known government and health sites.