Why paste JSON here and not just anywhere
Because JSON payloads routinely contain tokens, emails, and internal IDs — and most online formatters are servers you're uploading that data to. This one is a page of JavaScript: parsing happens with your browser's native JSON.parse, the network tab stays silent, and it works offline. The error message includes the exact line and column, which is the difference between fixing a trailing comma in five seconds and staring at a 2,000-line blob.
The errors you'll actually hit
Ninety percent of invalid JSON is one of: a trailing comma after the last item, single quotes instead of double, unquoted keys ({name: …}), comments (JSON has none), or a stray control character from a copy-paste. JavaScript object literals allow all of these — JSON allows none, which is why "it works in my code" JSON fails validation.
Frequently asked questions
Is my JSON uploaded when I format it?
No — parsing and formatting run entirely in your browser with JSON.parse and JSON.stringify. You can disconnect from the internet and the tool keeps working.
Why is my JSON invalid when JavaScript accepts it?
JSON is stricter than JS object syntax: keys must be double-quoted, strings must use double quotes, and trailing commas plus comments are forbidden. The validator reports the first offending position.
Should I minify or pretty-print?
Pretty-print for reading, diffs, and config files; minify for network payloads and storage, where removing whitespace shrinks typical JSON by 20–40% before gzip.
What's the maximum size this can handle?
Browsers comfortably parse tens of megabytes; the textarea gets sluggish before the parser does. For 100 MB+ files, stream-based command-line tools like jq are the right instrument.