{}JSON FYI
JSON Schema Validator

Validate JSON against a schema

Paste a JSON Schema on the left and your data on the right. Powered by Ajv — the fastest JSON Schema validator available. Supports draft-07, 2019-09, and 2020-12. Nothing leaves your browser.

JSON Schema
JSON Data
Ajv-powered

Uses Ajv under the hood — the industry-standard JSON Schema validator, trusted by millions of Node.js projects.

All error paths

Every failing field is reported with its JSON Pointer path and the exact schema rule that rejected it.

Multi-draft support

Draft-06, 07, 2019-09, and 2020-12 are all supported. Declare your draft with $schema.

Format validation

Validates format keywords: email, uri, date, date-time, ipv4, ipv6, uuid, and more via ajv-formats.

100% private

All validation runs in your browser. Your schema and data are never sent to a server.

Instant feedback

Validation reruns on every keystroke with a short debounce — no button to click.

Examples

Type mismatch
Input
Schema: { "type": "object", "properties": { "age": { "type": "integer" } } }
Data:   { "age": "thirty-six" }
Output
/age · type
must be integer
Missing required field
Input
Schema: { "type": "object", "required": ["name", "email"] }
Data:   { "name": "Ada" }
Output
(root) · required
must have required property 'email'
Enum violation
Input
Schema: { "properties": { "role": { "enum": ["admin","editor","viewer"] } } }
Data:   { "role": "superuser" }
Output
/role · enum
must be equal to one of the allowed values

Use cases

From the JSON FYI guides

In-depth explanations for common JSON errors and patterns.

Frequently asked questions

What is JSON Schema?+

JSON Schema is a vocabulary for annotating and validating JSON documents. You write a schema — a JSON document that describes the allowed structure, types, required fields, and constraints — and then validate data against it. The current standard is draft 2020-12, though draft-07 is still widely used.

What JSON Schema drafts are supported?+

This validator uses Ajv, which supports JSON Schema draft-06, draft-07, draft-2019-09, and draft-2020-12. Declare your draft with the $schema keyword and Ajv automatically selects the right validation rules.

What do the error paths mean?+

Error paths use JSON Pointer notation (RFC 6901): a leading slash followed by property names and array indices, e.g. /users/0/email. A path of '(root)' means the top-level value itself failed validation.

Is my data uploaded anywhere?+

No. All validation runs in your browser using Ajv. Nothing is sent to a server.

What is 'additionalProperties: false'?+

It tells the schema validator to reject any property not listed under 'properties'. Useful for strict API contracts where unknown fields should be flagged.

Can I validate arrays of objects?+

Yes. Set the schema type to 'array' and use the 'items' keyword to define the schema each element must match.

Related tools & guides