Convert JSON to CSV

Convert JSON to CSV free in your browser. No upload, no signup, no watermark. Files stay on your device.

privatepowered by PapaParse
jsoncsv

drop a .json file

or click to browse

related

more json & csv

see all spreadsheet converters →

guide

how to convert json to csv

  1. Drop your JSON file

    Drag your JSON file into the drop zone above, or click the box to pick a file from your computer or phone. The browser reads the file directly — nothing uploads.

  2. Click Convert

    The page runs PapaParse on your device to decode the JavaScript Object Notation and encode it as Comma-Separated Values. Most conversions finish in a few seconds; large or codec-heavy files (RAW, video) can take longer.

  3. Download the CSV file

    When the conversion finishes, the CSV file is ready to download. Save it anywhere on your device.

FAQ

common questions

What JSON structure does the converter expect?

An array of objects works best — each object becomes a row, with object keys becoming column headers. The CSV needs a fixed columnar shape; nested objects or arrays-of-arrays don't translate cleanly to flat CSV. If your JSON is deeply nested, flatten it first (e.g., dot-notation column names) or accept that complex fields will serialise as JSON-stringified text in a single column.

Will my JSON's data types survive in the CSV?

Type information is lost — CSV stores everything as text. Numbers, booleans, null all become string representations: '123', 'true', '' (or 'null', depending on convention). Whoever consumes the CSV needs to parse types back from the text content. This is fundamental to CSV; if type fidelity matters, use JSON, XLSX, or another format with native type support.

What if my JSON has nested objects?

They don't fit cleanly into a flat CSV cell. The converter typically flattens them with dot-notation column names (`address.city`, `address.zip`) or serialises them as JSON-stringified text inside one cell. Either way, the structure is lost; you'd need to re-parse to recover it. For nested data, JSON-to-XLSX with multi-sheet output is a better target.

How are arrays inside object fields handled?

Typically joined into a single string with a delimiter (semicolon or pipe), since CSV cells can't naturally hold lists. Example: `tags: ['red', 'urgent']` becomes a column value like `red;urgent`. Whoever reads the CSV needs to split that field back. If your arrays are meaningful structure (not just simple lists), consider keeping JSON.

Why convert JSON to CSV?

Three common reasons: (a) feeding data into a spreadsheet for analysis or reporting; (b) importing into systems that expect CSV (legacy databases, BI tools, accounting software); (c) handing data to non-technical users who want to view it in Excel. JSON is the programming-friendly format; CSV is the universal tabular interchange format.