99digest is in early access — tools are free while we grow.

JSON Formatter

Beautify or minify JSON, with adjustable indent and optional alphabetical key sorting — instantly, in your browser.

Runs in your browser Private & secure Updated August 10, 2026

A JSON formatter takes messy, minified, or inconsistently indented JSON and makes it readable — or does the opposite, stripping it down to the smallest possible size. Paste your JSON into 99digest’s formatter to beautify or minify it instantly, entirely in your browser.

Runs in your browser

How it works

Your JSON is parsed with the browser’s built-in JSON.parse — the same parser every modern browser and JavaScript runtime uses, not a custom or third-party implementation. If the JSON is valid, it’s re-serialized with your chosen indent (2 spaces, 4 spaces, or a tab), or compacted to a single line if you choose Minify. Optionally, object keys can be sorted alphabetically at every nesting level, which makes it easier to diff two JSON documents or find a specific key by eye.

If the JSON is invalid, the exact line and column of the first syntax error is shown, in plain language rather than a raw parser message.

FAQs

Is my JSON uploaded anywhere?

No. Formatting and validation both happen entirely in your browser — your JSON is never sent to a server, uploaded, or stored anywhere.

What’s the difference between formatting and minifying?

Formatting adds indentation and line breaks to make JSON easy to read. Minifying removes all unnecessary whitespace to make the file as small as possible — useful when you’re about to send the JSON over the network or embed it in code.

Does sorting keys change my data?

No — sorting only changes the order object keys appear in, not the data itself. JSON objects are unordered by the spec, so most parsers and APIs won’t notice a difference, but sorted keys can make two JSON documents easier to compare by eye.

Why does it say my JSON is invalid when it looks fine?

Common causes are a trailing comma after the last item, using single quotes instead of double quotes, or an unquoted object key — all valid in JavaScript object literals, but not in strict JSON. The line and column shown point to where the parser gave up.