Paste the schema
Add a JSON Schema. The draft is detected from $schema or inferred from the keywords used.
Validate a JSON document against a JSON Schema, with support for draft-04 through 2019-09 keywords. Fully local, so your data never leaves the device.
The document is checked against the schema above.
Three simple steps, with your content kept on your device.
Add a JSON Schema. The draft is detected from $schema or inferred from the keywords used.
Add the JSON document you want to check against the schema.
See a per-path report: every error names the path, the expected type, and the actual value.
Fast, focused, and made to be clear on every screen.
type, properties, required, items, enum, const, pattern, minimum/maximum, and more.
Each error reports the exact JSON path and the offending value.
Validation runs in your browser. Documents and schemas never leave your device.
To validate JSON against a schema, you write a set of rules and the validator applies them automatically. It is the same engine behind jsonschema tooling in many languages, and it answers a different question than plain parsing: is this document shaped correctly, not just syntactically valid. JSON Schema is a declarative way to describe the shape of a document. Instead of writing code that walks through an object and checks each field, you write a schema that states the rules, and the validator applies them automatically. That shift matters: the schema becomes a single source of truth that documents, tests, and API contracts can all share.
Type checking — every value must match the type declared in its schema node, such as string, number, integer, boolean, array, or object.
Structural rules — required properties, property counts, and additional-property behavior are enforced at the object level.
Value constraints — minimums, maximums, patterns, enumerations, and constant values narrow what counts as valid data.
Nested schemas — arrays and objects are validated recursively, so a rule deep inside a document is caught with a precise path.
Validation is most valuable where a wrong shape would be expensive to discover later. API request and response bodies, configuration files, and data exchanged between services all benefit from a contract that is checked before anything else runs.
API development — validate incoming payloads against a published schema so handlers never see malformed data.
Configuration files — catch a typo or a wrong type in JSON config before it reaches production.
Data pipelines — confirm that extracted or transformed records match the expected structure before they are consumed.
Contract testing — keep the schema itself as the reference so producers and consumers stay in sync.
JSON Schema has evolved through several drafts, and the same keyword can behave differently between them. The validator detects the draft from the $schema keyword and applies draft-appropriate behavior automatically.
exclusiveMinimum and exclusiveMaximum are booleans in older drafts but plain numbers in newer ones.
$ref resolution is local-only here, so schemas must reference parts of the same document rather than remote URLs.
The 2019-09 style adds keywords like unevaluatedProperties, which older drafts do not define.
When $schema is missing, the validator falls back to a sensible default draft so the document still gets checked.
The usual pattern is short and repeatable. Paste the schema and the document, read the reported path-level errors, fix the offending values, and re-run until the document is clean.
Start with the schema — a good schema catches most problems before they reach runtime.
Read errors top-down — each message names the exact path, so the first fix often resolves several downstream errors.
Test boundary values — minimums, maximums, and patterns are where off-by-one mistakes hide.
Keep the schema versioned — schema changes should be reviewed like code changes, because they define the contract.
Schema errors are reported per path, which turns debugging into a focused walk down the document rather than a search. Each message names the exact location and the rule that failed.
Start at the first reported path — fixing one rule violation often clears several downstream errors.
Match the error against the schema node for that path; a type error usually means the schema and the data disagree about what the field should be.
Schema validation earns its keep wherever wrong data would be expensive to discover late. The tool is local and instant, so it works well as a quick check inside a larger workflow.
Prototyping an API — validate a sample payload against the draft schema before the contract is written in stone.
Onboarding data files — run incoming JSON through the schema before it is imported, so bad records are rejected early.
Refactoring a schema — when the contract changes, re-validate existing documents to see exactly what would break.
Teaching or reviewing — a schema doubles as executable documentation, and the per-path errors explain the rules to newcomers.
Draft-04, draft-06, draft-07, and 2019-09 style schemas. The draft is detected from the $schema keyword, and draft-specific behavior for keywords like exclusiveMinimum is honored.
Local $ref inside the same document is resolved. Remote $ref requires network access and is not attempted — everything stays local.
Errors are reported per path, for example: "/age: expected integer, got string (actual: "3")".