Export JSON Data to CSV
Paste a JSON array of objects and the converter produces a CSV with a header row derived from the union of all keys across rows, quoting values that contain commas, quotes, or newlines according to RFC 4180 so spreadsheets import cleanly. Nested objects are flattened into dotted columns (address.city, address.zip) so no structural information is lost.
Reach for this when you need to load an API response into Excel, Google Sheets, or a BI tool; build a quick pivot from a JSON export; hand JSON data to a non-technical teammate who only works in spreadsheets; or produce a diffable text export for data stored in JSON at rest. It is equally useful for one-off exports before a demo and for scripted data extraction pipelines.
Common wrapper shapes like {"data": [...]} and {"results": [...]} are auto-detected and unwrapped so you don't have to edit the input. A single object without an enclosing array is converted to a one-row CSV. Arrays of primitives become a single-column CSV, and rows with differing key sets are reconciled to a stable column order. The result can be copied to the clipboard or downloaded as a .csv file.
The entire conversion runs in your browser — nothing is uploaded, nothing is tracked.
About JSON to CSV conversion
Convert JSON data to CSV for use in spreadsheets and data tools. Handles nested objects by flattening keys with dot notation, and automatically extracts arrays from API response wrappers.
- Flat arrays of objects convert directly to CSV
- Nested objects flattened with dot notation (e.g. address.city)
- API wrappers like {data: [...]} auto-extracted
- Single objects converted to one-row CSV
- Download result as .csv file
100% client-side. Your inputs never leave your browser. Ads via AdSense (consent required).
Frequently asked questions
How do I convert JSON to CSV?
Paste a JSON array of objects and the converter flattens each object into a row with keys as column headers. Nested objects are flattened with dot notation (user.profile.email becomes a single column), and arrays of primitives are joined with a configurable separator. The result is RFC 4180-compliant CSV that opens cleanly in Excel, Google Sheets or any database import. You can customize delimiter, quote character and line ending.
Is the JSON to CSV converter free?
Yes, completely free with no signup or row limit. Export arrays of any length your browser can handle — tens of thousands of records work without trouble on a modern machine. JSONCraft has a single open tier for every tool, so there's no feature gate between you and a clean spreadsheet.
Does the converter upload my JSON?
No. The flattening and CSV serialization run entirely in your browser. Nothing is transmitted — useful when the JSON contains customer records, analytics exports or internal audit data. You can safely convert then download the CSV without any byte leaving your device.
How are nested objects and arrays handled?
Nested objects are flattened with dot-path keys: {user:{name:'A'}} becomes a 'user.name' column. Arrays of primitives (['red','blue']) are joined as a single cell with a configurable separator. Arrays of objects are more complex — you can choose to stringify them as JSON inside one cell, or expand to multiple rows. Values containing commas, quotes or newlines are escaped per RFC 4180.
When should I use CSV over JSON for tabular data?
CSV when the data is genuinely flat (rows and columns) and the consumer is a spreadsheet or database — Excel and BI tools ingest CSV natively. JSON when the data is hierarchical or when types matter (CSV is string-only at the wire). This converter is most useful when an API returns JSON but your analyst needs a spreadsheet; it bridges the two without writing a script.