JSON Formatter & Validator

Paste JSON. It formats as you type, points at any error, and offers a fix.

Runs entirely in your browser — nothing you paste is uploaded. Read exactly what that means.

Input
Output
size nodes depth integers beyond 2⁵³

About this tool

Json Beautifier formats, validates and minifies JSON entirely in your browser. Paste a document and it re-formats as you type — no Format button to find, no upload, no waiting on a server.

When something is wrong, you do not get a parser string like Unexpected token }. Every problem is named in plain English, with the exact line and column, and the ones that can be fixed automatically get a Fix it button.

Two details most tools get wrong, handled correctly here: integers larger than 2⁵³−1 (Discord and Twitter ids, database bigints) are preserved exactly — never silently rounded — and a share link encodes your JSON in the URL itself, so sharing never sends your data anywhere.

How to use it

  1. Paste your JSON, drop a .json file onto the input pane, or load it from a URL.
  2. Formatting happens live as you type. Switch Pretty / Minify and the indentation (2 spaces, 4 spaces, tabs) any time; the choice is remembered on this device.
  3. Read the output pane, or copy, download, or create a share link. The readout under the output shows the size change, node count, depth, and any integers that would lose precision elsewhere.

Worked example

Given the object below, most tools report a syntax error and stop. This tool says: Line 4, Col 3 — there is an extra comma before this closing brace, delete the comma after email. One click fixes it.

{
  "name": "Sam",
  "email": "s@x.io",
}

A trailing comma, found and explained

Frequently asked questions

Is my JSON uploaded anywhere?
No. Formatting, validation, repair and conversion all run inside your browser tab. Nothing you paste is sent to a server, logged, or stored. You can verify this yourself: open your browser's Network tab while you work — there is no request carrying your data.
What is the largest JSON I can format?
The work runs in a background thread, so the tab stays responsive even on documents of tens of megabytes. The practical limit is your device's memory, not the tool.
Why does my 19-digit number look different in other tools?
JavaScript stores numbers as 64-bit floats, which can only represent integers exactly up to 2⁵³−1 (9,007,199,254,740,991). Most JSON tools convert every number to a float, so 1234567890123456789 silently becomes 1234567890123456800. This tool keeps the exact digits from your source, so a snowflake id round-trips byte-for-byte.
Can it fix broken JSON, not just find the problem?
Yes. Trailing commas, single quotes, unquoted keys, comments, Python True/False/None, missing brackets and truncated files are all auto-fixable, and you always see a before/after diff of exactly what changed. Pasted an AI reply wrapped in a code fence? The repair tool strips that too.
What is the difference between pretty and minified JSON?
Pretty JSON has indentation and line breaks so a person can read it. Minified JSON removes every byte that is not data, which is what you want for transfer size. They are the same data, two shapes — toggle between them and the readout shows the size difference.
Does the share link upload my JSON?
No. The share link compresses your JSON into the URL itself — the fragment after # never leaves the browser or appear in a server log. Anyone opening the link decompresses it locally. Very large documents make very long URLs, but the data still goes nowhere.