Free JSON Formatter Online
Parse JSON, produce readable indentation or a compact one-line result, and expose syntax errors before the output is copied into code or an API client.
What this tool is for
Parse JSON, produce readable indentation or a compact one-line result, and expose syntax errors before the output is copied into code or an API client.
How to use
- Paste a complete
JSONvalue, not a JavaScriptobjectliteral. - Choose Format for indentation or Minify for compact output.
- If parsing fails, use the browser error position to correct the source and run it again.
Example
Format `{"name":"Ada","roles":["admin","editor"]}` to inspect the nested array, then minify the same value for transport.
FAQ
Does it accept comments or trailing commas?
No. Those are not valid JSON and will produce a parse error.
Can the root be an array or primitive?
Yes. Any value accepted by JSON.parse is supported.
Reproducible examples
Known inputs and expected results
Run these examples in the workspace above and compare the result with the documented output.
Format a nested value
- Input
- {"user":{"name":"Ada"},"roles":["admin","editor"]}
- Options
- Choose Format with two-space indentation.
- Action
- Parse and format.
- Expected output
- A multiline
JSONdocument with nestedobjectandarrayindentation. - Explanation
- Whitespace changes, but parsed keys and values remain equivalent.
Minify an array
- Input
- [ { "id": 1 }, { "id": 2 } ]
- Options
- Choose Minify.
- Action
- Parse and compact.
- Expected output
- [{"id":1},{"id":2}]
- Explanation
- Insignificant spaces are removed after successful standard
JSONparsing.
Error or unsupported case
JavaScript-like syntax
- Input
- {name:'Ada',}
- Expected error or limit
- Unquoted keys, single quotes, and the trailing comma are rejected by
JSON.parse. - Safer alternative
- Convert the input to standard
JSONor use a JSON5-aware parser.
When not to use this tool
JSONSchema or application business-rule validation- Lossless handling of integers beyond JavaScript's safe range
Algorithm and assumptions
The tool uses standard JSON.parse and JSON.stringify, accepts any JSON root type, formats with two spaces, and does not promise semantic object-key ordering.
Input and output
Input must be valid JSON. Output is semantically equivalent formatted or minified JSON; object key order is not intentionally changed.
Supported formats and behavior
- Objects,
arrays, strings, numbers, booleans, andnull - Readable two-space indentation
- Compact single-line output
Limits
- JSON5 and JavaScript syntax are not supported
- Very large input may be constrained by browser memory
Edge cases and common errors
- Duplicate
objectkeys resolve according toJSON.parse behavior - Large integers can lose precision in JavaScript
- Invalid escape sequences are rejected
Release testing
Release checks cover valid objects and arrays, invalid property syntax, primitive roots, formatting, minifying, copy, and clear actions.
Privacy boundary
The input and result stay in this browser session. ZZP Box does not upload or store the values entered in this tool.
Related reviewed tools
Choose the next tool by the operation you need, then review that page's stated input and limits.
