Formatting, Validating, and Minifying JSON
What this tool does
JSON is the default format for API responses, config files, and data exchange, but raw JSON often arrives as one dense line. This tool takes any JSON you paste and re-prints it with consistent two-space indentation and line breaks so nested objects and arrays become readable. At the same time it validates the input, analyzes the structure, and reports statistics — how many keys there are, how deep the nesting goes, and how many objects, arrays, strings, numbers, booleans, and null values it contains.
When to use it
Reach for it when an API returns a minified payload you need to inspect, when a config file won't parse and you have to find the offending character, or when you want to shrink a readable file back down for production. Because the formatted and minified output are produced together, you can copy whichever one fits the moment — the indented version for debugging and documentation, the single-line version for transmission or embedding.
Example: minified to indented
Paste {"user":{"name":"Ada","roles":["admin","editor"],"active":true}} and the output expands into a nested block where user holds name, a roles array with two entries on their own lines, and active: true kept as a boolean rather than a quoted string. The statistics panel then shows a depth of 2 and counts each value type. Copy Minified returns it to the compact single-line form whenever you need it back.
Notes and edge cases
Validation runs as you type, so a missing comma, an unclosed bracket, or a stray trailing comma is flagged with a message pointing at where parsing failed. Standard JSON rules apply: keys and strings need double quotes, and comments are not allowed, so formats like JSONC won't pass. Large payloads format fine, though very deep or very long structures produce a long, scrollable result. Numbers, booleans, and null keep their types intact instead of being coerced into strings.