JSON Schema Validator

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.

Work in your browser

Local and private

The document is checked against the schema above.

How to use JSON Schema Validator

Three simple steps, with your content kept on your device.

01

Paste the schema

Add a JSON Schema. The draft is detected from $schema or inferred from the keywords used.

02

Paste the document

Add the JSON document you want to check against the schema.

03

Validate

See a per-path report: every error names the path, the expected type, and the actual value.

Built for useful work

Fast, focused, and made to be clear on every screen.

Common keywords

type, properties, required, items, enum, const, pattern, minimum/maximum, and more.

Path-level errors

Each error reports the exact JSON path and the offending value.

100% local

Validation runs in your browser. Documents and schemas never leave your device.

What JSON Schema validation actually checks

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.

Common use cases for schema validation

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.

Draft differences worth knowing

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.

A typical validation workflow

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.

Reading JSON validation errors efficiently

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.

When to reach for JSON Schema

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.

Frequently asked questions

Which JSON Schema drafts are supported?

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.

Can the schema use $ref?

Local $ref inside the same document is resolved. Remote $ref requires network access and is not attempted — everything stays local.

What does an error look like?

Errors are reported per path, for example: "/age: expected integer, got string (actual: "3")".