Schema
JSON-LD structured data validation
How it Works
The schema pillar extracts all <script type="application/ld+json"> blocks from the page, parses the JSON, and validates that each schema has an @type and the required fields for that type.
Supported @types
| @type | Required Fields |
|---|---|
| Organization | name, url |
| WebSite | name, url |
| Product | name |
| Article | headline, author |
| BlogPosting | headline, author |
| LocalBusiness | name, address |
| Person | name |
| BreadcrumbList | itemListElement |
| FAQPage | mainEntity |
| Event | name, startDate, location |
| Recipe | name, recipeIngredient |
| VideoObject | name, uploadDate |
| Service | name |
| Course | name, provider |
| Review | reviewBody, author |
| HowTo | name, step |
Rules
| Rule | Severity | Description |
|---|---|---|
| schema/missing | moderate | No JSON-LD found on the page |
| schema/invalid-json | serious | JSON-LD block contains invalid JSON |
| schema/no-type | serious | JSON-LD block is missing @type property |
| schema/missing-field | moderate | Schema is missing a required field for its @type |
The schema pillar supports @graph arrays, so a single JSON-LD block with multiple schemas will be validated individually.