JSON Schema validator
About JSON Schema Validator
This JSON Schema validator checks JSON data against a schema you paste. Put the data in the first pane and the schema in the second, and every problem is listed with its JSON Pointer path.
It checks the keywords most schemas lean on: type, required, properties, items, enum and const. Other keywords, such as minimum, pattern, format or $ref, are not checked yet, so use a full validator library in your build for those.
Runs in your browser. Neither document is uploaded.
How it works
Two inputs
Paste the JSON data on top and the JSON Schema below. The result updates as you type in either pane. A sample user record and a matching schema are loaded so you can try it.
Errors by path
Each problem is reported on its own line with a path like #/plan/seats, followed by what was expected and what was found. When the data matches, you see a single confirmation line.
Supported keywords
type (including a list of types), required, properties, items, enum and const are checked at every level of nesting. Unknown keywords are ignored rather than reported.
Need a schema first?
Use the JSON Schema generator to infer a draft 2020-12 schema from a sample document, then tighten it and validate other documents here.
Frequently asked questions
Which JSON Schema drafts does it support?
The checked keywords work the same way in draft 4 through draft 2020-12, so the $schema version does not change the result. Keywords outside the supported list are ignored.
Does it check formats like email or date-time?
No. format, pattern, minimum, maximum, length limits and $ref are not checked. Validate those with a library such as Ajv in your code.
Why does it say a required property is missing?
The property is listed in the schema's required array but is not present in the object at that path. A property set to null counts as present.
Is my data uploaded?
No. Parsing and validation run in your browser.
How do I validate JSON syntax only?
Use the JSON validator. It checks that text is valid JSON per RFC 8259 and marks the line and column of the first error.
Sources & last verified
We checked this tool's behavior and the claims on this page against the specifications below on . The tool runs in your browser, so the output you see is exactly what the engine produced.
Found a wrong result or an outdated claim? Report an error and we will check it again.