jsontoolskit.org
JSON and JSON Schema utilities, in the browser
Say hi →

Free Online JSON Tools — Format, Validate, Convert, Query

30 browser-based JSON and JSON Schema utilities · updated 20 May 2026

Every JSON tool you need, all in your browser. 30 free utilities — format, validate, repair LLM-mangled JSON, convert between JSON / CSV / YAML / XML / TOML / NDJSON / Base64, query with jq and JSONPath (RFC 9535), diff and patch (RFC 6902 + 7396), infer schemas (draft 2020-12), generate TypeScript / Go / Pydantic / Zod. Nothing is uploaded — your data never leaves the tab.

Format, validate, repair

JSON formatter pretty-prints with 2/4/tab indent and optional key sort. Minifier strips whitespace and shows before / after savings. Validator is strict RFC 8259 with plain-English errors and line / column pointers. JSON repair fixes the kinds of breakage LLMs love to produce — trailing commas, single quotes, unquoted keys, smart quotes, JS-style comments. Stringify escapes JSON for embedding in JavaScript, Python, Go, Java, or shell source.

Convert JSON to / from other formats

JSON ↔ CSV with a column picker, nested-flatten strategies, and type inference on the way back. JSON ↔ YAML with key-order preservation and Norway-problem detection. JSON ↔ XML with configurable attribute and array handling. JSON ↔ TOML for pyproject.toml / Cargo / Hugo workflows. JSON ↔ NDJSON bridges to jsonlkit.com for line-mode work. JSON ↔ Base64 with standard and URL-safe variants.

Transform JSON → JSON

Sort keys recursively for stable diffs and stable hashes. Flatten nested objects to user.address.city shape; unflatten back. Deep merge two or more documents with picky conflict strategies. Extract all keys or values matching a literal / glob / regex pattern. Escape / unescape a JSON document into a backslash-encoded string and back.

Query & explore large JSON

jq playground runs full jq in WebAssembly with a 30+ snippet gallery. JSONPath tester supports the modern RFC 9535 dialect alongside legacy Goessner / Jayway. Tree viewer is a collapsible explorer with breadcrumb-path copy. Graph view renders the document as a tree / radial / force layout, exports SVG and PNG.

Diff, patch, merge

JSON diff compares semantically, ignoring key order and whitespace. JSON Patch generates and applies RFC 6902 ops (kubectl-style). Merge Patch handles the simpler RFC 7396 (GitHub-API-style) semantics.

JSON Schema (draft 2020-12 first-class)

Schema generator infers a JSON Schema (draft 2020-12 by default) from one or more sample documents, with format detection. Schema validator validates with Ajv across drafts 04 / 06 / 07 / 2019-09 / 2020-12. Schema visualizer diagrams the schema with $ref resolution. Schema faker generates realistic fake data conforming to the schema. Schema → types emits TypeScript / Zod / Pydantic / Go / Rust from the schema. OpenAPI → JSON Schema extracts each component as a stand-alone schema.

Generate typed code from JSON

JSON → TypeScript interfaces / types (plus optional Zod). JSON → Go struct with JSON tags and pointer-for-nullable. JSON → Python Pydantic v2 / dataclass / TypedDict. JSON → Zod with strict / optional handling and inferred TS types alongside.

Inspect

Size analyzer shows raw / minified / gzip / brotli sizes, the heaviest keys, and duplicate strings. Stats profiles the shape — key / value counts, type histogram, max depth, longest key / value.

What they have in common

Everything runs in your browser. The JSON you paste or drop never leaves your machine — there is no server component handling data, no upload step, no account required. See the privacy policy for the longer version.

Modern specs, draft 2020-12 by default. JSON Schema 2020-12, RFC 9535 JSONPath, RFC 6902 / 7396 patches. The older draft-07 / Goessner / Jayway dialects are available as toggles where it matters.

Free to use, with no warranty. Read the terms of use before relying on the output for anything load-bearing. Bug reports and feature requests are always welcome — drop me a line.

— S., [email protected]