301→302301→302
A temporary redirect where a permanent one belongs.
Found by Redirect checker →
redirect loopredirect loop
The URL redirects back to itself and never settles.
Found by Redirect checker →
Audit

Structured data and schema validator

Parse JSON-LD, validate it against the bundled Schema.org vocabulary, report parse errors and build new markup with schema-build.

Structured data and schema validator

Check

schema-check validates the structured data a page publishes and reports what failed to parse.

Structured data and schema validator

Build

schema-build drafts JSON-LD for common types from the page.

How it works

Three steps, one saved scan

  1. Validate against the Schema.org vocabulary

    schema-check reads the page's structured data and tests every type and property against the bundled Schema.org vocabulary.

  2. Check the markup as a graph

    It maps which entities carry an @id, which are linked, which stand alone, and whether any @id reference points nowhere.

  3. Build missing markup

    schema-build suggests a connected @graph using only facts visible on the page, and lists the recommended fields still missing.

What it checks

Checks in this feature

CheckWhat it meansSeverityEvidence
SCHEMA_VALIDATION_ERRORThe page's structured data has validation errors against the Schema.org vocabularyImportantValidation error count per page
STRUCTURED_DATA_PARSE_ERRORA JSON-LD block is present but does not parse as valid JSON, so search engines ignore itImportantBlocks found vs blocks parsed
STRUCTURED_DATA_MISSINGThe page has no Schema.org markupTipPage with zero structured data blocks
How to run it

One command

bash
seohead schema-check --url https://example.com/product

Install first: installation guide. Every command also runs as an MCP tool for AI agents.

Related checks

From the check registry

SCHEMA_VALIDATION_ERRORSTRUCTURED_DATA_PARSE_ERRORSTRUCTURED_DATA_MISSING
FAQ

Questions

Structured data and schema validator
seohead schema-check --url https://example.com/product. You can also pass HTML directly to check markup offline.
Yes. Layer one is the Schema.org vocabulary: whether a type exists, whether a property is allowed on it, and whether a value type matches. Layer two is Google rich-result eligibility for each type.
No. It builds the graph from facts visible on the page. It shows the signals and its confidence. If the type guess is low-confidence, set the type yourself with --type.
No. Both commands only read the page. The JSON-LD it drafts is a suggestion you review and deploy yourself.

Check your redirects locally