What is a JSON Schema Validator?
A JSON Schema Validator checks whether a JSON document conforms to a set of rules defined in a JSON Schema. This tool validates your JSON data against a schema instantly in your browser — powered by AJV (Another JSON Validator), one of the fastest and most standards-compliant JSON Schema implementations available.
How to Use
- Paste your JSON data into the left textarea
- Paste your JSON Schema into the right textarea
- Click Validate — or let the live validator run automatically as you type
- Review the results: a green status means valid, red means errors were found
- Click any error in the list to jump to the relevant line in your JSON data
- Use Load Example to see a working person-object schema with matching data
What is JSON Schema?
JSON Schema is a vocabulary for describing the structure and validation rules of JSON data. It is defined in a series of specifications called “drafts”. The most widely used version is Draft-07, which this tool supports by default via AJV.
A JSON Schema is itself a JSON document. It can specify:
- Type constraints:
"type": "string","type": "integer","type": "array", etc. - Required properties:
"required": ["name", "age"] - Property definitions: rules for each key in an object
- Additional properties: forbid unknown keys with
"additionalProperties": false - String formats:
"minLength","maxLength","pattern"(regex) - Numeric ranges:
"minimum","maximum","multipleOf" - Array rules:
"items","minItems","maxItems","uniqueItems" - Enum values:
"enum": ["active", "inactive"] - Composition:
"allOf","anyOf","oneOf","not"
JSON Schema Draft Versions
| Draft | Release | Key Features |
|---|---|---|
| Draft-04 | 2013 | First IETF version; $schema, $ref, definitions |
| Draft-06 | 2017 | const, contains, propertyNames, examples |
| Draft-07 | 2019 | if/then/else, readOnly, writeOnly, $comment |
| Draft 2019-09 | 2019 | $anchor, $recursiveRef, unevaluatedProperties |
| Draft 2020-12 | 2020 | $dynamicRef, prefixItems, simplified $ref |
This tool validates using JSON Schema Draft-07 — the most widely adopted version, supported natively by AJV without additional plugins.
Common JSON Schema Patterns
Required object with typed fields
{
"type": "object",
"properties": {
"name": { "type": "string", "minLength": 1 },
"age": { "type": "integer", "minimum": 0 }
},
"required": ["name", "age"],
"additionalProperties": false
}
Array of strings
{
"type": "array",
"items": { "type": "string" },
"minItems": 1,
"uniqueItems": true
}
Enum with fixed values
{
"type": "string",
"enum": ["draft", "published", "archived"]
}
Understanding Error Paths
Errors use JSON Pointer notation (RFC 6901):
(root)— the top-level value failed (e.g. wrong root type)/name— thenameproperty at the root/address/city— thecityproperty insideaddress/items/2— the third element (index 2) of an array
Clicking on an error in the list focuses the JSON editor on the corresponding line.
Why AJV?
AJV is used by millions of projects including webpack, eslint, and fastify. It compiles schemas to optimised JavaScript functions, making validation extremely fast even for large documents. Unlike regex-based validators, AJV correctly handles all JSON Schema semantics including $ref resolution, allOf/anyOf/oneOf composition, and conditional schemas with if/then/else.
Privacy
All validation is performed entirely in your browser. No JSON data or schema is sent to any server, stored, or logged. The AJV library runs locally after the page loads — you can even disconnect from the internet and the tool will continue to work.