What is verified
The complete document is parsed as JSON before output. Invalid syntax is rejected instead of silently rewriting uncertain data.
Safety limits
10 MB input and 12 million decoded characters. Processing happens locally in the browser.
Numeric precision protection
Formatting rejects numeric values that JavaScript would round, including unsafe integers and decimals that cannot be represented exactly in the output. Use a text-preserving workflow when original numeric lexemes must remain unchanged.
Why valid JSON can still be unsafe to reformat
JSON allows deeply nested arrays and objects, but adding indentation at every level can multiply the output size. This formatter stops at 128 nesting levels and 100,000 object/array containers; output is capped at 25 million characters. A syntax check alone would not prevent a browser from exhausting its memory.
How to check the formatted file
Before download, the result is parsed again and its JSON values are compared with the input after parsing. Duplicate property names and decimal numbers that would change through JavaScript numeric conversion are rejected. Formatting can change whitespace and the textual spelling of equivalent numbers; it does not preserve original bytes. For tabular exports use JSON to CSV, which applies additional CSV-specific safety checks.
Example: nested configuration
A configuration such as {"api":{"retry":2,"enabled":true}} becomes readable with two-space indentation. If a service requires exact source bytes or signatures, do not reformat a signed document. For malformed JSON, fix the syntax at its source instead of assuming indentation can repair it.