JSON validator
The browser's native parser reports the position of the character that breaks — that is the useful information, and that is what we show, rather than an 'invalid JSON' that leads nowhere.
How the check works
- 1
The text is parsed
By JSON.parse, the browser's parser: exactly the one your application uses.
- 2
The error is shown as-is
Native message and character position. That is what lets you find the extra comma.
- 3
The output is reformatted
Indented at 2, 4 or 8 spaces, or minified down to the data alone.
The three mistakes that always come back
The trailing comma after the last element of an array or object: JavaScript tolerates it in code, JSON never does. Single quotes: JSON accepts only double ones. And comments, which do not exist in JSON — JSONC and JSON5 are different formats.
Nothing leaves the page
An API payload often carries tokens, identifiers or customer data. Here it stays in your tab: no upload, no log.
Frequently asked questions
Why is my JSON rejected when it works in JavaScript?
Because JavaScript is not JSON. A JavaScript object literal accepts unquoted keys, single quotes, trailing commas and comments. JSON accepts none of the four.
Should JSON be indented in production?
No. Indentation serves human reading only and inflates the payload by 10 to 30%. Serve minified JSON and let developer tools pretty-print it on display.
Is my data sent anywhere?
No. Parsing uses the browser's own parser, in your tab. Nothing is transmitted — which matters when the payload contains an access token.
The same check over API
This tool runs in your browser. To run the same check from your code, in bulk or server-side, the API answers in JSON.
Read the documentation