Skip to content
LocalOnly

JSON Tools

Format, validate, transform and inspect JSON - everything you need to work with JSON, running entirely in your browser.

What these tools have in common

Every tool here parses your input against RFC 8259, the JSON specification, before it does anything else. That matters because JSON is stricter than most people remember: keys must be double-quoted, trailing commas are invalid, comments do not exist, and NaN, Infinity and single quotes are not part of the grammar. A surprising share of "broken JSON" is actually valid JavaScript that was never valid JSON.

Because parsing happens first, an invalid document fails with a position and a reason rather than silently producing mangled output. If a tool reports an error at line 42, that is the parser's honest opinion of where the grammar broke - which is usually a few characters after the real mistake, since a missing comma is only detectable once the next token arrives.

Which one do you actually need?

The names overlap, so it helps to separate them by intent. Formatting and beautifying change whitespace only - the parsed value is identical before and after, which is why they are safe on anything. Minifying is the same operation in reverse, stripping insignificant whitespace to shrink a payload for transport.

Validating answers a different question: is this document well-formed, and does it match a schema? Well-formedness is syntax. Schema validation is meaning - required fields, types, ranges, enum membership - and needs a JSON Schema to check against, which you can infer from a sample document if you do not have one.

The remaining tools transform structure rather than presentation. Sorting keys, flattening to dot-paths, removing nulls, merging two documents and diffing two versions all produce a genuinely different value from the input. Those are the ones worth reading the page for before you run them on something you cannot re-fetch.

Working with large documents

Parsing and rendering are separate costs, and rendering is usually the one that hurts. A 20 MB document parses in well under a second; painting a few hundred thousand DOM nodes for it does not. These tools offload parsing to Web Workers and virtualize the output so only visible rows are rendered, which keeps scrolling smooth on files that would lock up a naive viewer.

There is still a ceiling, and it is your tab's memory rather than an upload limit. A parsed JavaScript object graph is several times larger than the source text, so a file that opens fine in a text editor can still be heavy once it becomes live objects. If you routinely work above a few hundred megabytes, a streaming parser such as jq is the right instrument.

Everything here runs in your browser

None of these json tools send your input anywhere. LocalOnly is a static site with no application backend, so the work happens in your tab and the payload you paste - API keys, tokens, customer records - stays on your machine. Read more about how and why the site is built this way, or the Privacy Policy for what the site itself does collect.

Explore other categories

Command Palette

Search for a tool or command