How to check your structured data: JSON-LD errors, missing properties and what to expect
Structured data helps search engines understand a page, but only if it parses and is complete. How to find the errors, which properties matter for common types, and what markup can't promise.
Structured data is machine-readable information about a page — that it's an article with this headline and author, a product with this price, a business at this address — written in the schema.org vocabulary. Search engines use it to understand content and, for some types, to show enhanced results such as product prices or breadcrumbs.
Google recommends JSON-LD: a <script type="application/ld+json"> block containing a JSON object, separate from the visible HTML. It's the easiest format to add and to check, and it's what this guide focuses on.
What valid JSON-LD looks like
A minimal article: {"@context": "https://schema.org", "@type": "Article", "headline": "How to check structured data", "datePublished": "2026-09-26", "author": {"@type": "Organization", "name": "Example Team"}}. Every object has an @type; nested things (the author) are objects with their own type; dates use ISO 8601; URLs are absolute.
The errors that break structured data
1. JSON that doesn't parse
One syntax error and search engines ignore the whole block. The usual causes: a trailing comma after the last property, "smart" curly quotes pasted from a word processor, an unescaped double quote or line break inside a value, and template variables that output nothing, leaving "name": ,. If the JSON comes from a CMS field, a stray HTML tag inside it does the same.
2. Missing key properties
Each search feature documents required properties (without them, the page isn't eligible for that feature) and recommended ones (they improve it). An Organization without a name, a Product without any offers, review or aggregateRating, or a breadcrumb item without a position is incomplete. Google's search gallery documentation lists the requirements per feature; they change from time to time, so check it rather than relying on memory.
3. Invalid URLs
url, logo and image should be absolute, working URLs. Relative paths, placeholders like # and staging hostnames are common in templates.
4. Duplicate or conflicting blocks
A theme and an SEO plugin both outputting an Organization or WebSite block, with different names or logos, is confusing at best. Generate each type once.
5. Markup that doesn't match the page
Structured data must describe what visitors can see: reviews that aren't on the page, prices that differ from the displayed price or FAQ answers that don't appear are against Google's guidelines and can lead to a manual action. No automated checker can judge this for you.
Check a page's structured data
Rudra's free SEO checker parses each JSON-LD block and reports parse errors, duplicate types, invalid URLs and missing key properties for common schema.org types.
What Rudra's SEO checker looks for
The free SEO checker reads every JSON-LD block in the HTML your server sends (including blocks wrapped in HTML comments or CDATA, and blocks typed with a charset). It reports:
- blocks that fail to parse, with the parser's error (a warning that costs points, because the markup is unusable);
- the same
@typedeclared more than once; url,logoorimagevalues that aren't valid absolute URLs;- missing key properties for a conservative set of common types:
nameandurlfor Organization and WebSite;headline,datePublishedandauthorfor Article, BlogPosting and NewsArticle;nameandaddressfor LocalBusiness;nameplus one ofoffers,revieworaggregateRatingfor Product; questions with anameand an answertextfor FAQPage; and items with apositionand anameoritemfor BreadcrumbList.
These are sensible minimums, not a copy of every search engine's requirements — for some features Google requires more, and for Article it lists these properties as recommended rather than required. The checker only reads the HTML before JavaScript runs, so structured data injected by a tag manager won't be seen. Treat its findings as a first pass, then confirm with the tools below.
Other tools to use
- Google's Rich Results Test shows which Google features a page is eligible for and the errors that prevent it. It renders JavaScript, so it also sees injected markup.
- The Schema Markup Validator (validator.schema.org) checks any schema.org markup against the vocabulary, independent of Google's features.
- Search Console's enhancement reports show errors and warnings for each structured data type across the pages Google has crawled.
What structured data can't promise
Valid, complete markup makes a page eligible for enhanced results. It doesn't guarantee them: search engines decide per query whether to show them, and features change. For example, Google limited FAQ rich results to a small set of authoritative government and health sites in 2023, and stopped showing HowTo rich results. Structured data also isn't a ranking shortcut; its value is helping search engines understand your content accurately.
A simple workflow
- Generate JSON-LD from your CMS or templates, from the same data that renders the page, so they can't drift apart.
- Output each type once per page.
- Check a page of each template with the SEO checker and the Rich Results Test after every template change.
- Watch Search Console's enhancement reports for new errors after deployments.
Frequently asked questions
Is JSON-LD better than Microdata or RDFa?
All three are supported, but Google recommends JSON-LD because it's separate from the visible HTML and easier to maintain. Rudra's SEO checker reads JSON-LD.
My structured data is valid. Why don't I get rich results?
Valid markup only makes a page eligible. Search engines decide whether to show rich results based on the query, the page's quality and their current features, and some features are restricted to certain sites.
What's the difference between required and recommended properties?
Without a required property, the page isn't eligible for that search feature. Recommended properties add useful detail and can improve the result, but their absence doesn't disqualify the page.
Can structured data hurt my site?
Markup that misrepresents the page, such as fake reviews or hidden content, goes against Google's guidelines and can lead to a manual action that removes rich results. Accurate markup has no downside.