Free JSON Tools

Browser-based JSON utilities for developers: format, validate, beautify, minify and convert JSON to CSV. Your data stays in your browser.

100% private — JSON is parsed in your browser. Nothing uploaded.
📐JSON Formatter / ValidatorBeautify, minify and validate JSON with helpful error messages. 📊JSON to CSVConvert a JSON array of objects to CSV. Choose delimiter.

Which tool for which problem

Most JSON work is one of two jobs: making a payload readable so you can find a field, and getting it into something a spreadsheet or database will accept. Use the formatter when an API hands you 40KB on one line, or when a config file is rejected with an unhelpful error. Use JSON to CSV when ops or finance needs the data and will not open a .json file.

Reading an error message properly

Parser errors point at where the parser gave up, not at where you made the mistake. A trailing comma is the usual case: {"a": 1, "b": 2,} is invalid JSON even though JavaScript object literals allow it, and Chrome and Node answer with Expected double-quoted property name in JSON at position 16. Position 16 is the closing brace, not the comma at 15; engines word it differently, so trust the offset. Other frequent causes:

If validation passes but a downstream system complains, check for duplicate keys. The grammar does not forbid them, RFC 8259 only says names should be unique, and browser parsers keep the last one, so {"id": 1, "id": 2} quietly becomes 2.

Flattening JSON into CSV without losing data

CSV is a flat grid and JSON is a tree, so conversion forces a decision about nesting. An array of flat objects maps cleanly. Anything deeper needs a rule: dot-notation column names (address.city), or the nested value serialised back to a string in the cell. Two things to check:

Delimiter and encoding

Excel splits rows on the list separator the OS reports, which is the semicolon wherever the comma is the decimal mark, so a comma-delimited file opened in Germany or France lands entirely in column A. Send those recipients semicolons, or tabs when the text holds both. Write UTF-8, and for Excel put the EF BB BF byte order mark at the front: without it Excel falls back to the system code page and é arrives as é, the signature of UTF-8 bytes read as Latin-1.

Common questions

Is my JSON uploaded anywhere? No. Both tools parse in your browser, so a response body holding bearer tokens or customer emails never leaves the machine. Open the network tab: no request fires when you click format.

Why does my file fail when it looks fine? Most often it is JSON Lines rather than JSON: one object per line, no wrapping array, no commas between records. BigQuery exports and many streaming APIs use that shape. Wrap the lines in [ ] and comma-separate them.

What size file can it handle? The limit is browser memory, not a server quota. A few megabytes format instantly; above roughly 50MB the tab can stall while the string is parsed and re-rendered, so switch to jq.

Does minifying change my data? A minifier that parses and re-serialises does more than delete whitespace. Numbers are normalised: 1.0 returns as 1, 1e3 as 1000. Keys that look like non-negative integers jump to the front in numeric order: {"b":1,"2":2,"1":3} comes back as {"1":3,"2":2,"b":1}. And 9007199254740993 is past the safe integer range for a JavaScript number, so it returns as 9007199254740992. Keep large IDs as strings.

Why browser-side JSON tools?

JSON often contains sensitive data — API keys, customer records, configuration secrets. Pasting that into a server-based formatter sends it to a third party. The tools on this page parse and transform JSON entirely inside your browser, so confidential payloads never leave your machine.

Other categories