Free Online JSON to CSV Converter
Paste a JSON array, download a clean CSV
Try these next
Why use JSON to CSV Converter
- Flattens nested objects with dot notation -- complex API responses become usable columns without reshaping.
- RFC 4180 escaping prevents broken columns when values contain commas, quotes, or newlines.
- UTF-8 BOM means Excel opens the file without garbling accented characters.
- Four delimiter options handle regional conventions where commas serve as decimal separators.
- Handles null, boolean, and numeric-string edge cases that naive converters mangle.
How it works
The converter parses input as JSON and validates it is an array of objects. It scans every object to build a column header set (including nested paths via dot notation). Each object produces one CSV row by extracting values at each header path. Values containing the delimiter, quotes, or newlines are wrapped in double quotes with internal quotes doubled, per RFC 4180. Arrays become comma-separated strings in quotes. The header row is prepended unless disabled. The final string is assembled by joining rows with newlines and offered as a Blob download or clipboard copy.
About this tool
The API returns JSON but your boss wants a spreadsheet. Paste the JSON array here and download a CSV that opens cleanly in Excel or Google Sheets -- no script, no pandas, no jq. Column headers come from your JSON keys automatically. Nested objects flatten with dot notation (address.city becomes its own column). Arrays within objects join into a single cell so nothing gets silently dropped. Values containing commas, quotes, or newlines are escaped per RFC 4180, which prevents the broken-column problem that plagues naive converters. Delimiter options: comma, tab, semicolon, and pipe. European locales that use commas as decimal separators can switch to semicolons. The download includes a UTF-8 BOM so Excel handles accented characters correctly. Edge cases work: null becomes an empty cell, booleans stay as true/false, and numeric strings that look like scientific notation are kept verbatim so Excel does not mangle them.
How to use JSON to CSV Converter
- Paste your JSON. Drop a JSON array of objects into the input field. The tool validates the structure immediately.
- Pick a delimiter. Choose comma (standard), tab (TSV), semicolon (European), or pipe.
- Review the preview. Check the output table to confirm headers and values look correct.
- Download or copy. Click Download for a .csv file (with UTF-8 BOM) or Copy to paste directly into a spreadsheet.
Use cases
- Pulling an API response into Google Sheets for pivot table analysis without writing a script.
- Converting Stripe webhook payloads into CSV for a finance team that reconciles in Excel.
Frequently Asked Questions
A JSON array of objects, where each object is a row and each key becomes a column header. Objects do not need identical keys -- missing values become empty cells.
Nested objects flatten with dot notation. An object containing {"address": {"city": "NYC", "zip": "10001"}} produces columns 'address.city' and 'address.zip'. Arrays within objects become comma-separated strings in quotes.
This tool is one-direction: JSON to CSV. For the reverse, use a dedicated CSV-to-JSON converter. JSON handles hierarchical data well; CSV is best for flat, tabular data.
Comma (standard), tab (TSV -- great for pasting into spreadsheets), semicolon (European locales), or pipe.
Download and double-click. If columns do not separate properly, use Data > From Text/CSV and specify the delimiter. For non-English locales, the semicolon delimiter usually works better.
CSV has no native types, so numbers, booleans, and null are converted to strings. Dates remain in whatever format they appear in the JSON. Spreadsheet apps may auto-detect and reformat certain values on import.
Values containing commas, double quotes, or newlines are enclosed in double quotes per RFC 4180. Internal double quotes are doubled (escaped). This ensures compatibility with all standard CSV parsers.
Related Tools
Discover more free utilities to enhance your productivity.
JSON Formatter & Validator
Paste messy JSON, get clean indented output
Base64 Encoder / Decoder
Encode text to Base64 or decode Base64 back to readable text
URL Encoder / Decoder
Percent-encode text for URLs or decode %20-style strings back to readable text
Case Converter
Switch text between 8 case formats in one click