top of page

What is structured data validation?

An image of author Crystal Carter, accompanied by various search-related iconography, including sliders, mock HTML, a link icon, etc.

In technical SEO, validating structured data markup (also known as schema markup) is the process of testing and confirming that your structured data can be read (or “parsed”) by search engine crawlers and bots.


If the code is valid then it is “parsable,” and if it’s not valid, then it is “non-parsable.” It is important to validate your structured data markup because parsable markup on your website can help your business enjoy the many benefits of structured data, including Google rich results and better semantic entity recognition for your content.


On the other hand, non-parsable structured data can trigger errors in Google Search Console, prevent rich results from showing, and potentially reduce your visibility in the SERP. So, whether it’s for new or existing content, validating your structured data should be an important part of your SEO workflow.


Table of contents:



How do you validate structured data?


To validate your structured data markup, use a tool to test the code for parsability, identify errors, and verify that the code can be read by machines. Ideally, this should be carried out before you add any code to a live web page, but validators can also be an important tool to find and fix errors on existing pages.


You can use structured data markup validator tools to test:


  • The code snippet (independent of the page) by extracting the markup and testing the code itself. You’ll typically test the code if you created your markup using a structured data generator or have access to the original code. The benefit of this tool is that you can see the code in a clear, uncluttered way, making it easy to find and fix errors on a single section of your markup.

  • The URL, which includes the structured data. For this purpose it should be a live URL, but does not need to be indexed. When you are validating a whole page, you may see multiple types of structured data markup at the same time if you have structured data present in the <head>, <body>, and/or <footer> of your HTML. The benefit of this approach is that your page is likely to be crawled by the testing tool. This means that if you have included any URL based node identifiers, then the tool will be able to extract the schema from those pages and show it in the test result.


A screenshot of the Google Rich Results Test Tool asking “does your page support rich results?” There are separate tabs for URL and code input.
You can run the Rich Results Test using your page's URL or the code snippet.

In my experience, it pays to use more than one validator to confirm that your schema is parsable. Different tools will have different configurations and priorities (for instance, some check primarily for rich results and will ignore other markup), so getting a second opinion makes it more likely that everything will be in working order.


What do the errors mean in a structured data validator?


When validating your code, here are some examples of warnings and errors that you may come across:


  • Parsing errors

  • Warnings

  • Errors


What is a “Parsing error” in schema?


Parsing errors occur when schema validator tools cannot read your schema markup. Consequently, if you have a parsing error when you input your URL or code into a validator tool, you may not see any schema markup declared.


This doesn’t mean that the code isn’t there, but it does likely mean that there is a syntax error or that the code has been added to the page incorrectly.


It is important to validate that your code is parsable because unparsable structured data is not machine-readable—it is also not eligible for rich results. In cases where there is more than one set of structured data on a page, search engines may be able to parse some of the code but not all of it. In these cases, you will need to update and revalidate that section that is broken, taking care not to compromise the other code.


In the example below, the validator on the SEO Pro Extension shows a message reading “No Structured Data found” when the code cannot be parsed.


The schema section of the SEO pro extension showing a message that says “no structured data found.”

Alternatively, you may see a note for an “Uncategorised Error,” as in this example from Schema.org. In this case, we see that the markup has an extra comma and the validator highlights the line of code that is incorrect with an X.


The schema.org validator highlighting an uncategorised error, with an X on the line next to two consecutive commas.

Common syntax mistakes that can prevent your schema from being machine readable include:


  • Missing or unbalanced commas, [], {}, or ()

  • Using curly “” instead of straight "" quotation marks


An example of curly quotation marks within Movie structured data—the structured data type uses curly instead of straight quotation marks, triggering an error as indicated by a red X icon next to that particular line of code.

  • Using straight quotation marks in the content of the schema so that it breaks the string.


An example of straight quotation marks within Movie structured data—the structured data property (“name”) uses straight instead of curly quotation marks, triggering an error as indicated by a red X icon next to that particular line of code.

How do you fix a parsing error in your JSON-LD schema markup?

If the error is in the code, you will need to find which part of the code is incorrectly written and update the code with the correct syntax.


What are “Warnings” in structured data validation?

If you see a yellow warning for “Non-critical issues detected” in the Rich Results Testing tool (RRTT) or Google Search Console, this does not mean that your schema is unreadable.


A screenshot of a non-critical issue on article structured data within the rich results testing tool.

This is because these alerts typically show in Google tools when you omit a recommended schema property or type, rather than a required schema property. But, these “nice-to-have” recommendations are general guidelines and may or may not accurately reflect your content. Google’s documentation explains that accuracy is key:


“In general, defining more recommended features can make it more likely that your information can appear in Search results with enhanced display. However, it is more important to supply fewer but complete and accurate recommended properties rather than trying to provide every possible recommended property with less complete, badly-formed, or inaccurate data.” Google

So, while you should certainly review these warnings, you should do so with the understanding that they may or may not apply to your current content. If the recommendations do not apply to your content, then you can ignore them and still be eligible for rich results.


Examples of how to resolve structured data validation warnings


Here are a few potential ways you can respond to structured data validation warnings:


  • Update your schema if you have content on the page that could address the warning, or change your code to be more accurate.

  • Plan to improve your page or adjust your strategy if you could eventually add content to your page or site that matches the field.

  • Ignore the warning if you do not have content that matches the field and don’t plan to create any.

  • If you see a warning for your product listing pages, review the Google Merchant listing structured data requirements. The requirements for Google Merchant Center are slightly different from the requirements for product snippets. Some product types, like clothing, have unique requirements, so review the required fields for your product type and include the relevant attributes in your markup.


A screenshot of a non-critical issue warning in a google merchant listing.

To illustrate what I mean, here are a few assessment scenarios:


Warning on video schema without “contentURL” or “embedURL” when there is a video URL

In this example, the warning suggests that the “VideoObject” schema markup doesn’t declare a “contentURL” or “embedURL.” Since the video has either: 1) a URL for where the content is hosted on the site, or 2) an embed link, you can fix this warning by updating the schema and reinspecting the page.


A screenshot of a warning in the rich results test tool for video structured data with the warning “Either ‘contentUrl’ or ‘embedUrl’ should be specified (optional)”

The code includes a property that is not related to the schema type

If you include a property that is not related to the schema type, you may see a warning that looks like this:


A screenshot of a warning on restaurant structured data for the author property. The warning states “The property author is not recognised by the schema (e.g. schema.org) for an object of type Restaurant.”

In this case, where we have an author property added to restaurant schema, the easiest way to fix this is to delete the author property because it is nonsensical to assume that a restaurant has an author.


But when I create schema, I sometimes see this warning for information that’s relevant. When this happens, you can visit the page for the Schema.org type, find a more relevant property and update your code with the best property for the page. For instance, in this case, I have changed the code to indicate that Bryant Terry is the founder of the restaurant (not the author).


Person type schema indicating that Bryant Terry is a founder.

Product listing pages with warnings for “review” schema when the site has no reviews

Product schema often includes warnings recommending that you add information like “review” and “aggregateRatings” into the schema. This is here because (generally speaking) reviews have the potential to offer great value to product listing pages for users and search engines. So, this warning is a general recommendation for product reviews.


Warnings for missing the optional “review” and “aggregaterating” fields.

However, if you do not have reviews or ratings for this particular product, there is no current requirement to add them to your schema. Though you will still be eligible for rich results without these fields, you should review this recommendation for possible updates in the future. “Often warnings are a signal of future requirements,” said SEO consultant Jeannie Hill, “These schema warnings are a fantastic chance to give a business a competitive lead.”


Blog pages with warnings for missing author “url” when there is no author page URL

In this example from real BlogPosting markup on a blog article, there is a non-critical issue for Missing field "url" (optional). When I reviewed this warning, the most important thing I looked for was whether the website actually had an author page with a URL. If it had an author page, then adding the URL here could improve the demonstrable E-E-A-T for the page and site overall.


A warning for a missing optional “url” field for an author in blogposting schema.

But in this case, the blog did not have an author page, so we initially ignored this warning and planned to start incorporating linkable author pages into the SEO strategy for the site. If you follow this workflow, you can update the BlogPosting schema when the author page URLs are live.


What are “Errors” in structured data validation?


General errors can be identified via structured data validation and they should be addressed immediately.


In a non-Google validator, you may see errors that mean that your content cannot be read properly by machines. In Google’s validators (i.e., GSC and RRTT) the errors may be directly related to Google’s requirements for rich results eligibility.


It is therefore possible to be error-free on a tool like validator.schema.org but also generate warnings on Google Search Console. Consequently, it’s very important to ensure that your code is valid across multiple validators.

To illustrate what I mean, here are examples of when an error might occur in structured data validation:


Using a schema type or property that is not a defined type

Within Schema.org’s vocabulary, there are over 1,000 schema types and properties. But when you write schema, you can only use types and properties that are referenced in this documentation. If you misspell or mistype a name for a property or type, you will get an error.


An error that says “The property businessName is not recognised by the schema for an object type Restaurant.”

The code is missing the required properties or types for Google’s rich results.

Google’s documentation explains that certain aspects of the structured data are required in order to be eligible for rich results.


In the example below, this web page is not displaying price information for their product within their structured data. This means that even though the markup is technically valid (i.e., would show as valid on validator.schema.org) it still doesn’t meet Google’s specifications, triggering an error in Google Search Console. Fixing these errors can help to improve your SEO quickly, so it is worth investing time here.


A warning stating “either ‘price’ or ‘pricespecification.price’ should be specified in ‘offers’”

Which tools can you use to validate structured data?


Whether you are carrying out a technical SEO audit or reviewing the SEO on a single page, you will need to use tools to test if your structured data is machine readable. The following tools can help you to validate, troubleshoot, and optimize the structured data on a single page or on your website at large.


Validator.schema.org

Created by Schema.org (which manages the schema vocabulary), this tool replaced Google’s structure data testing tool in 2020 and can help you troubleshoot syntax issues and parsing problems.


A screenshot of the input field for validator.schema.org, showing options to fetch a URL or input a code snippet.

Validator.schema.org allows you to test your schema markup via URL or using a code snippet.


ChatGPT

ChatGPT is also a reliable tool for troubleshooting errors in your structured data. If I notice an error and I am having difficulty identifying which part of the syntax is causing the problem, sometimes I can run it through ChatGPT to find the issue.

I tend not to use ChatGPT for creating and validating code because if you are not careful with your prompts, then it will output code that is not valid and adds additional irrelevant information into your fields. So if you’re using a generative AI tool for schema review, always be sure to get a second opinion.


Test.schema.dev

Test.schema.dev is a free schema validation tool and has the added bonus of being able to prettify your schema. This makes it easier to see which lines in the code have issues or can be amended.


Additionally, this validator is particularly strict with what is and is not allowed. When testing code, I have occasionally seen markup that showed as valid in validator.schema.org, but did not show as valid here. This can be an important tool in making sure that your code is robust and readable on multiple devices.


Rich Results Testing tool

The Rich Results Testing tool (RRTT) is a validator from Google that tells you if the schema on your page is valid and eligible for rich results. If you test your page or your code with this tool, you may not see all of the schema elements reflected in the testing output. That is because this tool specifically focuses on schema that generates rich results on Google.


If you have a page that includes schema that does not trigger rich results, you may not see that schema in the RRTT. If the page includes structured data that has a combination of rich result-eligible schema markup and general schema markup, the RRTT may only validate the schema that is eligible for rich results.

In the example below, the URL includes AboutPage structured data but the only structured data that the RRTT recognizes is the rich results-eligible FAQ.


The rich results test tool showing only one valid item detected: FAQ structured data.

SEO Pro Extension

SEO Pro Extension’s Schema panel gives you a snapshot of the valid schema that is present when your page loads. Since it’s a browser extension and doesn’t require you to leave the page, this tool is incredibly useful for a quick assessment of your content.


Though you cannot manipulate the code to make corrections or adjustments, you can see the order of your schema types as they load on the page. If you added schema to your page and you do not see it displayed in the Schema panel, then there is an error in your code.


Wix Advanced SEO panel

Wix site owners have a built-in schema markup validator that will not allow you to submit schema markup unless your code is error-free. Accessible via the Advanced SEO panel in Wix pages, this is a tool that is incredibly helpful and allows you to mitigate mistakes before they happen.


“We know writing structured data code may be a bit complex at times, so to make sure users don’t add broken and non-functional code to their site, we added validations to make sure there are no errors,” Einat Hoobian-Seybold, SEO product lead at Wix, said about the Wix structured data validator, adding, “If a Wix user has an error in the syntax, they will be notified about it before they push it live”


Wix Velo

In Velo, the Wix JavaScript Framework, you can also create schema markup using the Wix SEO API.


Here, you can create variables based on visual elements on the page and add dynamic markup to your pages. Within this framework, you have a structured data markup validator that will trigger an error message if your code is incorrectly parsing and will suggest how you can improve your code.


Single page validator

URL inspection

Code block inspection

All schema

Rich results validation

Code editor panel

Supported

Supported

Supported

Not supported

Yes

N/A

Supported

N/A

N/A

No

Supported

Supported (freemium)

Supported

Not supported

Yes

Supported

Supported

Not supported

Supported

Yes

Supported

Not supported

Supported

Not supported

No

N/A

Supported

N/A

N/A

Yes

N/A

Supported

N/A

N/A

Yes

Supported

Supported

Not supported

Some rich results

No


Tools to validate structured data in bulk

While single-page assessments are valuable, bulk validation of websites or website folders can help you identify systemic issues in your schema markup. When you have content that uses the same schema template (such as a collection of recipes, for example) it is possible to have the same error repeat on multiple pages.


Google Search Console

Google Search Console Enhancements reports can show you which pages have valid schema markup and which pages are invalid. They also show warnings or errors for structured data that is eligible for the rich results that are included in these reports.


A screenshot of the google search console enhancements report showing 21 invalid items and 1 valid item.

For the purposes of SEO and general search visibility, this report is extremely important and any errors here should be resolved as quickly as possible.


Brenda Malone, SEO technical strategist at NP Digital, carries out regular GSC audits and explains that structured data is an integral part of the process: “Correcting schema that is ‘on-error’ has made the [client’s] website eligible for rich snippets again,” she said, adding that these tasks are “crucial to maintaining the advantages that good, connected, properly-implemented schema provides.”


It is important to remember that Google’s rich results reports do not include all of the structured data that is eligible for rich results. For instance, BlogPosting and LocalBusiness structured data markup are eligible for rich results and are present on the rich results gallery, however there is no dedicated rich results report for these structured data types in Google Search Console. In the past, I worked with teams that worried that since they do not see LocalBusiness results in Google Search Console, that the code is not valid, but this should be assessed separately with another tool.


Screaming Frog

With Screaming Frog, you can configure your web crawl to show which schema markup is valid across each of your web pages.


Filtering options in Screaming Frog to configure a crawl to validate JSON-LD Schema.org structured data and for Google rich result validation.

This can allow you to identify gaps in your structured data markup and to audit your content at scale. For instance, in the example output below, you can see there are warnings for one of the pages.


A spreadsheet output from a screaming frog crawl, showing 4 warnings for a particular page, and various data about structured data for other pages, including schema type.

You can use Screaming Frog to generate a report and give recommendations for how to fix the issue.


A spreadsheet compiling various structured data issues, with a column detailing the issue.

Semrush Markup Report

The Semrush Markup report gives you information on which pages you have with:


  • Valid structured data for Google rich results, and

  • Valid Schema.org structured data.


The semrush markup report, showing pages with markup, pages by markup type, and structured data by valid and invalid implementations.

Wix GSC Site Inspection



Using data from the Google Search Console API, you can carry out a bulk inspection of your Wix website with the Wix Site Inspection tool. Within the full report you can filter your results to show valid rich results or issues, optional fixes, unspecified issues, or no data.


As you can see in the example below, there are filters to show the pages that have valid rich results.


The Wix site inspection tool rich result filter, showing options to filter by valid, issues, optional fix, unspecified, and no data.

From the bulk report, you can click on a single page to see which rich results type is valid or to address other issues.


The single-page panel in the wix site inspection tool, showing valid breadcrumbs rich results for a particular page.

Auditing your structured data: More than a valid argument


Structured data can provide a range of benefits (including greater search visibility) depending on your business and how it operates online. But, your rich results must be valid in the first place to start seeing any of those benefits.


Whether you’re working with just a few web pages or thousands, there are tools available to help you turn errors into parsable structured data that enhances the content you’re already creating. Start by validating schema on your high-value pages, then keep the momentum going until every part of your customer journey is enhanced with the relevant schema to improve your audience’s experience with your brand.


 

Crystal Carter

Crystal is an SEO & digital marketing professional with over 15 years of experience. Her global business clients have included Disney, McDonalds, and Tomy. An avid SEO communicator, her work has been featured at Google Search Central, Brighton SEO, Moz, DeepCrawl, Semrush, and more. Twitter | Linkedin

Get more SEO insights right to your inbox

* By submitting this form, you agree to the Wix Terms of Use and acknowledge that Wix will treat your data in accordance with Wix's Privacy Policy

bottom of page