JSON to Table Converter — View, Sort & Export JSON as CSV, Excel or Markdown
Paste any JSON array or object and get a readable, sortable table. Export to CSV, TSV, Markdown, Excel, or filtered JSON — free, and it never leaves your browser.
What it does
Paste a JSON array or object into JSON to Table and it turns into a real, readable table you can sort, filter, and export — as CSV, TSV, a Markdown table, an Excel file, or JSON again. It handles the shapes JSON actually comes in: an array of objects with different fields, an array of plain values, a single object, or an array of arrays. Nothing you paste is uploaded anywhere; the conversion runs entirely in your browser tab.
How it works
Most “JSON to CSV” tools break the moment your data isn’t a flat, uniform array of objects. This one handles the messy cases properly:
- Column detection takes the union of every key across every row, in the order it first saw them — so a row missing a field just gets a blank cell instead of throwing an error.
- Flatten toggle turns nested objects into dot-notation columns (
address.city,address.zip) so you don’t end up with a column full of raw{...}text. Turn it off and you get the nested value as-is. - Parse errors point to a line and column, not just “invalid JSON” — so a stray trailing comma or a missing quote is easy to find in a large paste.
- Column type detection right-aligns numeric columns and recognizes ISO date strings, formatting them for reading while keeping the original value for export.
How to use it
- Paste your JSON into the input box, or drop a
.jsonfile onto it. - If your objects have nested fields, leave Flatten nested objects checked to spread them into their own columns — or uncheck it to keep them as raw JSON in one cell.
- Click a column header to sort by it; click again to reverse, a third click clears the sort.
- Use the filter box to narrow down to matching rows, and the column list in the sidebar to hide ones you don’t need.
- Copy the current view as CSV, TSV, or a Markdown table, or download it as a CSV, XLSX, or JSON file — exports always reflect whatever you’re currently looking at (filtered, sorted, and with hidden columns left out).
FAQ
Why do some cells show up empty? That row’s object simply didn’t have that key. The table still shows the column so you can see which rows are missing which fields, rather than silently dropping data.
What happens with an array that mixes objects and other values? If every item is an object, you get one column per field. If every item is a plain value (numbers, strings, booleans), you get a single “Value” column. A genuinely mixed array falls back to a single column showing each item as-is, so the tool never crashes on odd input.
Does the Excel export keep numbers as numbers? Yes — numeric and boolean values are written as real Excel cell types, not text, so sorting and formulas work normally once you open the file.
Is there a row limit? No hard limit, but very large tables (several thousand rows) are capped in the on-screen preview for performance; every row is still included when you export, regardless of what’s currently rendered.
Can I send the table straight into another tool? Yes — use the “Send to” button to hand the current table off to another tool that accepts tabular data, without re-uploading or re-copying anything.
Related tools
If your JSON came out of a spreadsheet in the first place, you may not need this detour at all — the spreadsheet viewer can open the original file directly. And if you’re troubleshooting oddly-formed JSON before converting it, the JSON formatter is a faster way to pretty-print and validate it on its own.