Convert JSON to CSV

Paste a JSON array and get a CSV you can open in Excel or Google Sheets. Nested objects become columns like address.city. Lists stay in one cell or spread across columns.

Paste JSON, drop a file, or try a sample

A list of objects works best. Nested objects become columns like address.city.

Layout

The result shows here

Pick a format above. Copy it or download the file once your table is in.

Waiting for a table

    Your data stays on this device. Reading, converting and saving all happen in this browser tab.

    Keyboard shortcuts

    Open a file
    Ctrl O
    Copy the output
    Ctrl Enter
    Download the output
    Ctrl S
    Paste a file or text (outside the editor)
    Ctrl V
    Move around the table
    ↑ ↓ ← →
    Jump a screen
    Page Up Page Down
    First or last cell
    Ctrl Home End
    Column options (on a column name)
    Enter
    Copy the cell
    Ctrl C
    Search the source or output
    Ctrl F
    This list
    ?

    To convert JSON to CSV, paste a JSON list of objects above (or drop a .json file) and press Download. Each object becomes a row, each key becomes a column, and nested objects are flattened into dotted column names such as address.city.

    How do I convert JSON to CSV?

    1. Paste the JSON into the editor or drop a .json, .jsonl or .ndjson file on it.
    2. Check the Table tab. You see one row per object and one column per key.
    3. Use Nested lists in the toolbar to choose how lists inside objects look.
    4. On the CSV tab, pick the delimiter. Use a semicolon if your spreadsheet expects one. This is common in Europe.
    5. Press Download for a .csv file, or Copy to paste it elsewhere.

    How does nested JSON become columns?

    A CSV is flat, so nested values need names. This object:

    {"id": 1, "address": {"city": "Lagos", "country": "NG"}, "tags": ["research", "beta"]}

    becomes these columns:

    idaddress.cityaddress.countrytags
    1LagosNG["research","beta"]

    With Nested lists set to One column each, tags becomes tags.0 and tags.1 instead.

    What if my JSON is not a list?

    API responses often wrap the list, as in {"data": [ … ], "page": 2}. The converter finds the first list of objects one level down and uses it. A single object becomes a one-row table. If the JSON has a syntax error, you see the parser’s message. The JSON Formatter shows the exact line and offers to fix common slips like trailing commas.

    Opening the CSV in Excel

    Excel can misread UTF-8 text in a CSV that has no byte-order mark. It also strips leading zeros from codes like 00412. Tick UTF-8 mark for Excel before downloading. Or pick the Excel format to get an .xlsx file where text stays text.

    Need the reverse?

    The CSV to JSON converter turns a spreadsheet back into JSON, with numbers typed for you.

    Questions

    My JSON is wrapped in an object like {"data": [ … ]}. Will it work?

    Yes. When the JSON is an object, the converter looks one level down for the first list of objects, such as "data", "results" or "items", and converts that. The status line tells you which key it used.

    What happens to arrays inside each object?

    By default, a list stays in one cell as JSON, for example ["research","beta"]. Set “Nested lists” to “One column each” to spread it into tags.0, tags.1 and so on.

    Why do some rows have empty cells?

    The columns are every key found in any object, in the order they first appear. An object that lacks a key gets an empty cell in that column. No data is dropped.

    Can it convert JSON Lines (NDJSON)?

    Yes. Paste or drop a file with one JSON object per line and each line becomes a row.

    Can I get an Excel file instead of CSV?

    Yes. Pick Excel in the output formats to download an .xlsx workbook. This avoids Excel’s guessing when it opens a CSV. You can also pick TSV, Markdown, HTML, SQL or YAML.

    Is my JSON sent to a server?

    No. This browser tab parses and converts the JSON, so API responses with tokens or customer data stay on your device.

    Save what you find in one click.

    Kortex is a Chrome extension for Gemini Notebook (formerly NotebookLM). It sends AI chats, web pages, posts and YouTube videos into the notebook you pick. It keeps your notebooks organized. It exports them back out.

    Add to Chrome

    No card needed.

    Talk to the Kortex team

    This opens a pre-filled email in Gmail. We usually reply within a day.