Turn messy JSON into a clean table.
Paste or drop a JSON file. JSON Mill shows it as a table, a tree or code, finds the errors, and exports exactly the CSV or Excel file you need.
Everything happens on this device. Your JSON is never uploaded unless you choose to save or share it. How your data stays local.
Problems
JSON Mill is a free JSON workbench that runs in your browser. Open a JSON or JSON Lines file and see it as a table, a collapsible tree or formatted code; find and repair errors; sort, filter and edit records; and export CSV, TSV, Excel or JSON Lines.
It is built for real exports: product catalogs, API responses, logs and database dumps with nested arrays. Your JSON is processed on your device in a background worker and is not uploaded.
How to use JSON Mill
- Open your JSON. Paste it, drop a file anywhere on the workspace, or press Open file. Press Sample to load a small fictional product catalog.
- Pick a view. Table shows arrays of records as a grid, Tree shows any JSON as a collapsible outline, and Code shows it formatted or minified.
- Fix what is broken. If the JSON is invalid, JSON Mill shows the line and column of the error. Repair proposes fixes for common mistakes and lists each one before you apply it.
- Export. Press Export, choose CSV, TSV, Excel, JSON Lines or JSON, decide how nested arrays are handled, check the row count, and download.
Example: a store export as a table
A store export with a wrapper object around the products. JSON Mill finds the products array and shows it as a table.
{
"store": "Fernway Outfitters",
"exported_at": "2026-10-28T14:05:00Z",
"products": [
{
"id": 1001,
"title": "Cedar Camp Chair",
"price": { "amount": "89.00", "currency": "USD" },
"tags": ["camping", "furniture"],
"in_stock": true
},
{
"id": 1002,
"title": "Trail Lantern",
"price": { "amount": "34.50", "currency": "USD" },
"tags": ["camping", "lighting"],
"in_stock": false
},
{
"id": 1003,
"title": "Wool Hiking Socks",
"price": { "amount": "18.00", "currency": "USD" },
"tags": [],
"in_stock": true,
"note": "Sold in pairs"
}
]
}
| id | title | price.amount | price.currency | tags | in_stock | note |
|---|---|---|---|---|---|---|
| 1001 | Cedar Camp Chair | 89.00 | USD | [2 items] | true | |
| 1002 | Trail Lantern | 34.50 | USD | [2 items] | false | |
| 1003 | Wool Hiking Socks | 18.00 | USD | [0 items] | true | Sold in pairs |
The price object became two columns, price.amount and price.currency. The tags arrays show as [2 items] chips you can click to open. note exists in only one record, so the others have an empty cell. Prices keep their text exactly, trailing zeros included.
What makes JSON Mill different
- It does not upload your data. Parsing, views and exports run in your browser, and your JSON goes to the server only if you choose to save or share it.
- It keeps numbers exact. JSON Mill reads JSON without converting numbers, so 20-digit IDs and prices such as
19.90are shown, edited and exported exactly as written. - It handles nested arrays deliberately. You choose between joined cells, one row per nested item, and linked Excel sheets, and you see the row count before you download.
- It stays responsive on big files. Parsing runs off the main thread and the views draw only the rows on screen. See the large file viewer for measured times.
Options
| Option | What it does |
|---|---|
| Format and Minify | Pretty print with 2 spaces, 4 spaces or tabs, or minify. See the JSON formatter. |
| Export | JSON (formatted or minified), CSV, TSV, Excel (.xlsx) and JSON Lines, with column choice, renaming and cleaning options. |
| Drafts | Your work on each page is saved in this browser as you go, for documents up to 25 MB, and comes back when you return. It is stored only on this device. |
Limits
- JSON Mill needs JavaScript and a recent browser. Without JavaScript the page shows this text but the workspace does not run.
- Very large files are limited by your device's memory. JSON Mill asks before it opens a file over 25 MB.
- Saving documents to your account and share links need an account with a verified email address. Everything else works without one.
Questions
- Is there a JSON tool that runs locally in the browser?
- Yes, JSON Mill. It parses, displays and converts JSON in your browser, in a background worker on your device, and it does not send your document anywhere unless you choose to save or share it. You can check this in your browser's developer tools while you use it.
- Is JSON Mill free?
- Yes. Viewing, repairing and exporting JSON are free and need no account. An account is only needed to save documents online and create share links.
- What file types can I open?
- JSON and JSON Lines (also called NDJSON), from files ending in
.json,.jsonl,.ndjsonor.txt, or pasted as text. JSON Mill detects JSON Lines from the content too. - Is my data uploaded?
- No. JSON Mill processes your JSON in your browser, in a background worker on your device. Nothing leaves your device unless you choose to save or share a document, which needs an account, and JSON Mill tells you before it sends anything. How your data stays local explains how to check this yourself in your browser's developer tools.
Related tools
Last updated