Schema validator
Paste a URL and get its JSON-LD extracted and linted: parse errors, dangling @id references, empty properties, missing recommended properties and schema that describes content not on the page.
Public http and https URLs only. Private and link-local address ranges are refused, and the fetch is capped at 2MB with a hard timeout.
How to use it
- 01Paste a public URLhttp and https only. Private and link-local ranges are refused, redirects are not followed, and the fetch is capped and timed out.
- 02Read the errors firstA dangling @id reference or a parse failure means the block is not being read at all.
- 03Then the warningsMultiple JSON-LD blocks, empty properties, and breadcrumb schema with no visible breadcrumb.
- 04Fix, redeploy, revalidateStructured data changes are cheap to verify, which is why they belong in a test rather than a checklist.
Questions
What does this validator check?
This validator checks that JSON-LD parses, that every @id reference resolves to a node declared in the same document, that no property is an empty string, that recommended properties are present, and that breadcrumb schema has matching visible navigation.
Is this the same as Google's Rich Results Test?
No. Google's Rich Results Test reports rich result eligibility and has no public API. This validator checks structural correctness, which is the part you can automate. Use both.
Why does it refuse some URLs?
URLs are refused when the scheme is not http or https, when the hostname resolves to a private or link-local address, or when the URL redirects. Those constraints prevent the endpoint being used to reach internal services.
Where this comes from
This tool uses the same modules SEO for Solos sells in the Code Kit, so the output and the product cannot diverge. The reasoning behind it is in the playbook.