JSON Schema validator
Paste a JSON Schema and your data to check them: each error in plain words with its line and column, one click away. Draft 2020-12, 2019-09 and Draft-07.
How to validate JSON against a JSON Schema
- Paste the schema on the left and the JSON data on the right (or open or drop a file on each box).
- The result appears right away: valid, or a list of errors with where they are in the data.
- Click an error to jump to that line in the data box and fix it.
Frequently asked questions
Draft 2020-12, 2019-09 and Draft-07. In Auto mode the version is read from the $schema line; without one (or with an older draft such as Draft-04 or Draft-06) data is checked against Draft-07.
Yes: email, date, time, date-time, uri, uuid, ipv4, ipv6, hostname, regex and more are really checked, not skipped.
The schema is valid JSON but breaks the JSON Schema rules, for example "type": "text" (there is no text type) or a $ref to another file. Schemas are not downloaded from links, so put the referenced part under $defs in the same schema.
When data matches none of the options in anyOf/oneOf, the reason each option fails is listed, so you can see which way to fix it.
Numbers with more than 15–16 digits are rounded when compared with minimum, maximum or multipleOf; other checks such as type and required are not affected.
It is completely free and needs no sign-up.
Related tools
JSON to JSON SchemaGenerate a JSON Schema from a JSON sampleJSON FormatterFormat, minify and validate JSONJSON RepairAutomatically fix broken JSONJSON to ZodGenerate a Zod schema from a JSON sampleJSON to Go structGenerate Go structs from a JSON sampleJSON to Python dataclassGenerate dataclasses or Pydantic models from JSONJSON to Java classGenerate Java classes or records from JSONJSON to Kotlin data classGenerate Kotlin data classes from a JSON sampleJSON Escape / UnescapeTurn text into a valid JSON string and back