Paste JSON into the box and the tool tells you at once whether it is valid. If it is, you get a clean, indented version you can copy or download, or a minified one with all whitespace removed. If it is not, you get a plain-language explanation, the line and column of the problem, and a button that jumps the cursor straight to it.
It runs entirely in your browser. API responses, configuration files and tokens you paste are never uploaded, which matters when the data is private.
The most common JSON mistakes
JSON looks like a JavaScript object but is stricter. These are the errors people hit most often, and the tool names each one:
- A trailing comma after the last item, such as
[1, 2, 3,]. - Single quotes instead of double quotes around strings.
- Unquoted property names, such as
{name: "x"} instead of {"name": "x"}. - Comments. Standard JSON has none, so
// note and /* note */ are errors. - Numbers with a leading zero or plus sign, such as
01 or +5, or ending in a dot such as 1.. - Raw line breaks inside a string. Inside a string, a new line must be written as an escape sequence.
- Missing brackets or quotes, which show up as "ends too early".
- Values JSON does not have, such as
undefined, NaN and Infinity.
Your numbers stay exactly as written
Many online formatters parse the data into JavaScript values and print it again. That silently changes some numbers: an ID like 12345678901234567890 becomes 12345678901234567000, and 1.50 becomes 1.5. This tool reads and prints the original text of every number, so formatting never alters your data. Key order is preserved too, unless you choose to sort.
Duplicate keys
An object with the same key twice, such as {"a": 1, "a": 2}, is technically valid, but most programs keep only the last value. The tool still formats it and warns you about the repeated key so you can decide what you meant.