JSON Formatter, Validator & Converter
🔒 Runs in your browser
One JSON tool, three modes
Switch modes with the control at the top. Formatter pretty-prints or minifies JSON and validates it; JSON ⇄ YAML converts a config back and forth; JSON ⇄ CSV turns tabular data into records and back. Everything runs in your browser — nothing is uploaded.
Format and fix invalid JSON fast
Parsing uses your browser's native JSON.parse, so validation follows the exact JSON
standard (RFC 8259) — the same rules every API enforces. When parsing fails, the validator points
to the precise line and column of the first error and highlights it inside the input. The usual
culprits: a trailing comma after the last item, single quotes instead of double quotes, unquoted
keys, and comments — none of which JSON allows. One caveat: integers above 253 lose
precision in JavaScript, so transport 64-bit IDs as strings.
Convert to YAML or CSV
JSON ⇄ YAML preserves data types in both directions — numbers stay numbers, booleans stay
booleans — so a round-trip returns identical values while only the surface syntax changes. JSON ⇄
CSV auto-detects the European semicolon delimiter, adds an Excel-friendly UTF-8 BOM so diacritics
survive, and offers an optional parse JSON values step that turns a cell which is itself
an array or object (for example an exported ["a","b"] column) back into real JSON
rather than leaving it as a quoted string. You choose the output indentation, too.
Frequently asked questions
What can this JSON tool do?
Three things from one place, chosen with the switch at the top: format and validate JSON (with exact error locations), pretty-print or minify it, and convert between JSON and YAML or JSON and CSV.
How do I find the error in invalid JSON?
The Formatter shows the exact line and column of the first syntax error and highlights it inside your input — so trailing commas, single quotes and unquoted keys are easy to spot.
Does converting keep my data types, and what about nested values in CSV?
JSON ⇄ YAML preserves numbers, booleans and null in both directions. For CSV, an optional “parse JSON values” step turns a cell that is itself an array or object back into real JSON instead of leaving it as text.
Is my data uploaded to a server?
No. Every mode — formatting, validation, YAML and CSV conversion — runs entirely in your browser using JavaScript. Nothing is transmitted or stored.