Format, validate and minify JSON instantly — free, private, runs in your browser
Copy any JSON string — from an API response, config file, database export, or code — and paste it into the input box.
JSON is formatted automatically as you type. Choose indent size (2 spaces, 4 spaces, or tab) and optionally sort keys alphabetically.
Click Copy to grab the formatted JSON, or Download to save it as a .json file. Use Minify to compress it for production.
Paste raw JSON from API calls, Postman, or browser DevTools to read it in a structured, readable format.
Format package.json, tsconfig.json, .eslintrc, or any other configuration file for clean version control diffs.
Remove all whitespace from JSON before embedding in JavaScript bundles or sending over the network.
Check if a JSON string is syntactically valid. The formatter shows exactly where errors occur with line numbers.
Sort all keys alphabetically to make large JSON objects consistent and easier to compare or diff.
Works entirely in your browser. Paste API keys, tokens, or internal data — nothing is uploaded anywhere.
A JSON formatter takes minified or poorly indented JSON and reformats it with consistent indentation, line breaks, and spacing. This makes the structure immediately readable — nested objects are visually separated, array items are on their own lines, and keys are clearly visible.
Paste your JSON and click Validate (or Format). If the JSON is invalid, you'll see an error message with the exact location of the problem — missing comma, unclosed bracket, wrong quote type, etc.
Formatting adds indentation and newlines for human readability. Minifying removes all unnecessary whitespace to produce the smallest possible JSON string — useful for APIs, config files shipped in production, and network payloads.
JSON.stringify(JSON.parse(jsonString), null, 2) — parse to object, then stringify with 2-space indent. For minifying: JSON.stringify(JSON.parse(jsonString))
import json; print(json.dumps(json.loads(s), indent=2)) — or from the command line: echo '{"a":1}' | python3 -m json.tool
Yes. All formatting uses the browser's built-in JSON.parse() and JSON.stringify(). Nothing is sent to a server. Safe for API keys, database exports, and internal configuration files.