Format without silently changing values
This formatter validates JSON syntax and changes structural whitespace. It preserves the spelling of every number and string escape, the order of object properties, and duplicate properties. For example, 9007199254740993, 1.2300e+04 and -0 are not converted through JavaScript’s number type.
Choose two spaces, four spaces, tabs or compact output. A final newline is optional. Minify JSON selects compact output without a final newline in one step. Spaces inside strings are preserved. Editor line wrapping changes only the display. The source remains in the input editor until you explicitly choose Use output as input; that replacement can be undone. Undo change restores your last replacement or Minify action, including indentation, final-newline and editor-wrap choices and the source filename. Ordinary edits clear this one-step history.
Find problems without losing your input
Errors show a line and column and select the position to correct. Columns count UTF-16 units. Standard JSON uses double-quoted property names and strings, with no comments or trailing commas. A single top-level object, array, string, number, boolean or null is accepted.
Duplicate property names are reported within each object, including names written with equivalent escapes. Both entries remain in the output; receiving software may handle duplicates differently. Unpaired Unicode escapes are preserved and reported. A leading byte-order mark is accepted but removed from output, with a notice. Actual unpaired surrogate characters in the source are rejected because they cannot be faithfully saved as UTF-8.
Local files, bounded processing
File import accepts one UTF-8 JSON or TXT file up to 1,048,576 bytes. It replaces the editor with an Undo step. The browser editor normalizes line endings; this is text formatting, not a byte-for-byte file archive. Reading or processing can be cancelled. Edits invalidate old results and prevent an obsolete operation from replacing newer work.
Input is limited to 1 MiB, output to 4 MiB, nesting to 100 container levels and total values to 100,000 including containers. Processing runs in a local worker with a ten-second deadline. Oversized output can often be handled by compact mode. No content is uploaded or stored automatically.
Formatting is not JSON Schema validation and does not prove that a value is appropriate for an application. Other software can still round number values or handle duplicate names differently. Grammar and interoperability reference: RFC 8259.