ZumaTools

JSON Formatter & Validator

Paste JSON below to validate it as you type, then format or minify it with one click.

Processed on your device — nothing is sent anywhere.

How it works

  1. Paste or type your JSON into the text area.
  2. Check the status line — errors are reported with their line and column.
  3. Click Format to pretty-print, Minify to compact, or Copy to copy the result.

Frequently asked questions

Is my JSON sent to a server?
No. Parsing, formatting and minifying all happen locally in your browser using the built-in JSON engine. Your data never leaves your device, so it is safe to paste configuration files or API responses that contain private values.
What is the difference between formatting and minifying?
Formatting adds line breaks and indentation so the structure is easy to read, which helps when debugging or reviewing data. Minifying removes all unnecessary whitespace to produce the smallest possible output, which is what you want when sending JSON over the network or embedding it in code.
Why does my JSON fail to validate?
The most common causes are trailing commas, single quotes instead of double quotes, unquoted keys, and comments — none of which are allowed in strict JSON. The error message shows the line and column where parsing stopped, which is usually at or just after the actual mistake.
How do I fix an “Unexpected token” error?
Go to the line and column in the error message and look at the character just before that point — the token itself is usually fine, and the real mistake is a missing comma, an unclosed quote or bracket slightly earlier. Formatting a nearly valid copy of the data first can make the broken spot much easier to see.
Can this handle large JSON files?
Yes, within the limits of your browser. Because parsing uses the native JSON engine, documents of several megabytes format in well under a second on a typical machine. Extremely large payloads, in the tens of megabytes, may make the text area sluggish to scroll — for those, minify first or work with an excerpt.

About this tool

This tool takes raw JSON — pasted from an API response, a log line, a configuration file — and makes it readable. Validation runs continuously as you type, with a status line that either confirms the document is valid or points to the exact line and column where parsing failed. One click pretty-prints the data with your choice of 2 or 4 space indentation; another collapses it to a single minified line; a third copies the result to your clipboard.

Under the hood it uses the JSON parser built into every modern browser — the same engine that powers JSON.parse and JSON.stringify — so validation follows the strict JSON specification exactly, with no quirks or extensions. Everything happens locally on your device: the text you paste is never transmitted, stored or logged. That makes it safe to inspect payloads that contain API keys, tokens, customer records or other values you would not want passing through a third-party server.

Typical situations where it earns its place: a REST API returns a wall of unformatted JSON and you need to find one field; a config file fails to load and the application’s own error message is unhelpful; you are handcrafting a request body and want to confirm the syntax before sending it; or you need to shrink a formatted document before embedding it in code or a query string. Formatting for reading and minifying for transport are two sides of the same workflow, and this page does both.

Two tips for faster debugging. When an error message points at a line, the actual mistake is almost always just before that position — a missing comma or an unclosed bracket earlier in the document shifts the failure point forward. And remember that strict JSON is stricter than JavaScript: no comments, no trailing commas, no single quotes and every key quoted. Data copied out of JavaScript source often fails for exactly these reasons.

Related tools