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 result | schema.org types | Required |
|---|---|---|
| Article | Article, NewsArticle, BlogPosting | Nothing required; headline, image, dates and author recommended |
| Breadcrumb | BreadcrumbList | itemListElement, with position, name and item on each |
| Product snippet | Product | name, and one of offers, review or aggregateRating |
| Review snippet | Review, AggregateRating | author and reviewRating; ratingValue and a count |
| Local business | LocalBusiness and subtypes such as Restaurant or Dentist | name and address |
| Event | Event | name, startDate and location |
| Job posting | JobPosting | title, description, datePosted, hiringOrganization and a location |
| Recipe | Recipe | name and image |
| Video | VideoObject | name, thumbnailUrl and uploadDate |
| Software app | SoftwareApplication, WebApplication | name, offers, and a rating or review |
| Other | Organization, WebSite, Course, FAQPage, HowTo | Checked 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
- 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.
- Missing required properties make the item ineligible for its rich result. Add them, using values that match what's visible on the page.
- Missing recommended properties don't block the rich result, but adding them, such as images and ratings, can make it fuller.
- 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.