Structured data

Schema Markup Validator

Test the JSON-LD structured data on any page, or paste code before you publish it. Every item is checked for valid JSON, the properties Google requires and recommends for its rich result, and values in the right format.

Types checked against Google's requirements

Rich resultschema.org typesRequired
ArticleArticle, NewsArticle, BlogPostingNothing required; headline, image, dates and author recommended
BreadcrumbBreadcrumbListitemListElement, with position, name and item on each
Product snippetProductname, and one of offers, review or aggregateRating
Review snippetReview, AggregateRatingauthor and reviewRating; ratingValue and a count
Local businessLocalBusiness and subtypes such as Restaurant or Dentistname and address
EventEventname, startDate and location
Job postingJobPostingtitle, description, datePosted, hiringOrganization and a location
RecipeRecipename and image
VideoVideoObjectname, thumbnailUrl and uploadDate
Software appSoftwareApplication, WebApplicationname, offers, and a rating or review
OtherOrganization, WebSite, Course, FAQPage, HowToChecked for their recommended properties, with notes on current support

Every item, of any type, is also checked for values search engines can't read: dates that aren't ISO 8601, relative URLs, prices with currency symbols, and ratings that aren't numbers.

How to fix structured data errors

  1. Invalid JSON makes search engines skip the whole block. Look for a trailing comma after the last property, quotes inside values that aren't escaped, or comments, which JSON doesn't allow.
  2. Missing required properties make the item ineligible for its rich result. Add them, using values that match what's visible on the page.
  3. Missing recommended properties don't block the rich result, but adding them, such as images and ratings, can make it fuller.
  4. Re-test, then ask Google to recrawl the page with the URL Inspection tool in Search Console.

Questions

How is this different from Google's Rich Results Test?

Google's test is the final word on what Google will use, and it runs JavaScript. This validator reads the HTML as served, shows every item and property at once, explains each problem, and lets you check code before it's live. Use both: this one while you write, Google's to confirm.

Is it the same as the Schema.org validator?

The Schema.org validator checks that your markup uses the vocabulary correctly, for any type. This tool adds Google's own requirements for rich results, which are stricter than the vocabulary.

My markup is valid. Why is there no rich result?

Valid markup makes a page eligible; Google decides whether to show a rich result, based on the search, the device and its assessment of the site. Markup must also describe content visible on the page. FAQ and how-to rich results are now limited or retired, whatever the markup says.

Does it check microdata and RDFa?

It counts them and tells you they're there, but validates JSON-LD only, the format Google recommends. If your site uses microdata, Google's Rich Results Test checks it.