JSON to CSV Converter — Export JSON to Excel Free
Transform JSON arrays of objects into clean, ready-to-open CSV files for Excel, Google Sheets, or any spreadsheet application. Supports nested object flattening and multiple delimiters. No signup, no server upload required.
Drag & drop a .json file here,
or browse to upload
How to Convert JSON to CSV Online
- Paste your JSON array of objects into the input area, or drag and drop a .json file onto the upload zone.
- Choose a delimiter — Comma for standard CSV, Tab for TSV, Semicolon for European Excel, or Pipe.
- Toggle Include header row to control whether column names appear on line 1.
- Toggle Flatten nested objects to expand
{"user":{"name":"Alice"}}into auser_namecolumn. - Review the first 5 rows in the live preview table to verify the output looks correct.
- Click Copy CSV or Download .csv — the download uses UTF-8 with BOM for correct Excel rendering.
Key Features
- Accepts any JSON array of objects, including objects with varying keys
- Nested object flattening with underscore-joined key names
- Four delimiter options: comma, tab, semicolon, pipe
- RFC 4180-compliant quoting — values with delimiters or quotes are safely wrapped
- UTF-8 with BOM download for correct Excel encoding on Windows
- Live preview table for the first 5 rows before downloading
- Row and column count statistics
- 100% browser-based — JSON data never leaves your device
JSON to CSV Use Cases
Exporting API responses to Excel for reporting
Paste a JSON array returned by any REST API and click Download .csv. Non-technical stakeholders can then open the file in Excel or Google Sheets without writing a single line of code. The flattening option handles nested user or address objects automatically.
Preparing JSON data for SQL database import
Most SQL databases support bulk import via CSV using LOAD DATA INFILE (MySQL) or COPY (PostgreSQL). Converting your JSON payload to CSV first is often the fastest way to import thousands of records without a custom ETL script.
Converting API response to Google Sheets
Download the CSV, then import it into Google Sheets via File → Import. The UTF-8 encoding ensures international characters display correctly. You can also paste the raw CSV text directly into Sheets using the Import from text option.
Flattening nested JSON for data analysis
Analytics tools like Tableau, Power BI, and Metabase work best with flat, tabular data. Enabling nested object flattening converts deeply nested API responses into a single-level table that these tools can ingest without custom transformations.
FAQ's
The tool expects a JSON array of objects — for example [{"name":"Alice","age":30},{"name":"Bob","age":25}]. Each object becomes a CSV row. All unique keys across all objects become column headers; missing keys produce empty cells.
Flattening recursively traverses nested objects and joins key names with underscores. {"address":{"city":"Paris","zip":"75001"}} produces columns address_city and address_zip. Arrays within objects are JSON-stringified as a single cell value.
Yes. The downloaded CSV uses UTF-8 encoding with a Byte Order Mark (BOM) so Excel on Windows recognises the encoding and displays international characters correctly. Google Sheets handles UTF-8 natively without the BOM.
Arrays within objects are not expanded into multiple rows — they are JSON-stringified and stored as a single cell value. If you need array rows expanded, post-process the CSV in a spreadsheet or use a dedicated ETL tool.
Yes. All conversion runs entirely in your browser. No data is uploaded to any server. The tool works offline once the page is loaded, making it safe for sensitive or proprietary JSON data.
Paste your JSON array here, download the CSV, then import it into Google Sheets via File → Import. Alternatively, copy the CSV output and paste it into a blank sheet — Sheets will parse it automatically.
The converter collects all unique keys across every object in the array to build the full column header set. Objects that are missing a key produce an empty cell in that column. No data is lost.