Check it here, before you send it
Drop a JSON file here, , or paste it below.
Nothing uploads. The file is read in your browser, which matters for JSON specifically: most JSON files are an API response, a config, or a database export, and none of those belong on a stranger's server just to be looked at.
The error message is the point
A browser will tell you Unexpected token } in JSON at position 84. That is technically
true and practically useless, because nobody counts to 84.
So the viewer converts that position into a line and column, prints the line with its neighbours, and puts a caret under the exact character. Then it names the likely cause, because in practice invalid JSON is almost always one of four mistakes:
| What you wrote | Why JSON refuses it |
|---|---|
"tags": ["x", "y",] |
a trailing comma before the closing bracket |
'role': "engineer" |
single quotes. JSON only allows double |
{ role: "engineer" } |
an unquoted key. JSON needs "role" |
"score": NaN |
NaN, undefined and Infinity are not valid JSON |
Press Load a broken sample and it shows three of the four at once.
What the tree tells you that a text editor does not
- How many keys there are, counted through the whole structure rather than at the top.
- How deep the nesting goes. A depth of 12 is usually the real reason a script cannot find the field it wants.
- Whether the top level is an object or an array, which is the first thing that breaks an import expecting one and getting the other.
Arrays and objects collapse, so a 500 item list stops being a wall of text. The viewer draws the first 500 entries of any one list and says how many it left out.
What this will not do
It will not edit the data or let you save changes. It reformats and it displays, nothing more, because a tool that edits your data has to be trusted with it and this one is not asking to be.
It will not repair broken JSON. It tells you precisely where it broke and what is most likely wrong, and then you fix it in your editor.
It will not handle JSON Lines as one document. A .jsonl file is one JSON object per line,
so it is not valid JSON as a whole, and the viewer will say so at line 2.
| Limit | Value |
|---|---|
| Characters read in this viewer | 400,000 |
| Entries drawn per list | 500 |
| One uploaded file | 150MB |
| Free storage | 1GB |
