Schema Markup Checker
Schema Markup Checker reads a page's JSON-LD, Microdata and RDFa, checks it against Google's rich result rules, flags pages whose content only appears after JavaScript runs, and suggests markup to add.
At a glance
- Accepts
- A page URL, or pasted HTML or JSON-LD
- Outputs
- Each structured-data item with its errors, warnings and rich-result eligibility, plus ready-to-paste JSON-LD suggestions
- Where it runs
- On our server
- What leaves your device
- In URL mode our server downloads the page you name; pasted code is checked in your browser and never sent
- Limits
- Reads the HTML before JavaScript runs; covers Google's common rich result types, not every schema.org type
- Account
- Not required - there is no sign-up
- Price
- Free, with no watermark and no usage cap
- Made by
- Visrut
- Last updated
- 14 October 2026
Structured data - usually a JSON-LD block in the page's HTML - is how a page tells Google it's a product with a price, a recipe with a cooking time, or an article with an author and date. Get it right and the page can show as a rich result with stars, prices or images; get it wrong and Google quietly ignores it. This checker reads every JSON-LD, Microdata and RDFa item on a page, tests it against Google's rules for each rich result, explains each problem in plain words, and suggests markup the page is missing.
How to use it
- Paste a page's URL and press Check page. Or switch to Paste code and paste the page source or a JSON-LD block, for pages that aren't live yet or block automated requests.
- Fix the errors first: each one stops a rich result. Warnings are recommended properties that give Google more to show.
- Copy any suggested markup, replace the TODOs, and add it to the page's HTML.
Pages rendered by JavaScript
The checker reads the HTML your server sends, before any JavaScript runs - which is what most crawlers, AI search tools and link previews see. If that HTML is an empty shell that a JavaScript app fills in, it says so, because it's a bigger SEO problem than any missing property: Google renders such pages later and less reliably, and many other services never do.
Honest limits
- Eligible means the markup is complete. Whether Google shows a rich result also depends on the page and the search.
- Markup added by JavaScript after the page loads isn't seen in URL mode. Paste the rendered HTML from your browser's developer tools to check it.
- It checks Google's rules for the common rich result types, not every schema.org type and property.
Frequently asked questions
Does this send the page to your server?
In Check a URL mode, yes: browsers can't read another site's HTML, so our server downloads the page you name, checks it and sends back the report. We don't store the URL or the page. In Paste code mode nothing leaves your browser - the same checks run on your device.
What does "eligible" mean?
That the markup has everything Google requires for that rich result and no errors that block it. Google still decides whether to show a rich result, based on the page's quality and the search, so eligible is not a promise.
Why does it say my page is rendered by JavaScript?
Because the HTML your server sends is nearly empty - an empty <div id="root"> plus scripts - and the content only appears after JavaScript runs in a browser. Google renders JavaScript eventually, but many crawlers, AI search tools and link previews (Slack, WhatsApp, LinkedIn, X) don't, so they see a blank page. Server-side rendering, static generation or prerendering fixes it.
My structured data is added by JavaScript (e.g. Google Tag Manager). Why isn't it found?
This checks the HTML as your server sends it, the way most crawlers see it. Markup injected later by JavaScript isn't in that HTML. Google can still pick it up after rendering, but it's slower and less reliable - put JSON-LD in the server-rendered HTML where you can.
Which formats and types does it check?
JSON-LD (Google's preferred format), Microdata and RDFa. It checks Google's required and recommended properties for Article, Product, Offer, Review and ratings, Recipe, Event, Breadcrumb, Organization, LocalBusiness, Video, JobPosting, SoftwareApplication, Course, FAQ, HowTo and WebSite, and value formats such as dates, durations, prices, currencies and URLs.
Why are FAQ and HowTo marked "limited"?
Google cut them back in 2023: FAQ rich results now appear only for well-known government and health sites, and HowTo rich results were removed. The markup isn't wrong, it just rarely produces anything in search.
Some sites fail with HTTP 403 or a timeout. Why?
Some sites block automated requests or answer slowly. Open the page in your browser, view its source (Ctrl+U or Cmd+Option+U), copy it, and use Paste code instead.