DevPik Logo

JSON to CSV Converter

Convert JSON arrays to CSV with nested-object flattening (dot-notation columns), configurable delimiters (comma, semicolon, tab, pipe), and one-click download — safe for Excel, Google Sheets, and bulk imports.

Why Use JSON to CSV Converter?

Marketing, ops, and finance teams live in spreadsheets — and the data they need often lives in JSON-returning APIs. Piping JSON through a converter that preserves structure (flattening nested objects with dot-notation columns) is faster than writing a one-off Python script every time a stakeholder wants to open a report in Excel. The tool also handles the awkward edges: arrays within values become semicolon-joined strings, nulls become empty cells, and regional delimiters (semicolon for EU, tab for Excel imports) are one click away. Useful when exporting Stripe customer lists, Google Analytics reports, or a JSON dump from a MongoDB collection.

How to Use JSON to CSV Converter

  1. Paste your JSON array into the input area or upload a .json file using the Upload button.
  2. The tool automatically converts your JSON to CSV in real-time as you type or paste.
  3. Adjust options: choose a delimiter (comma, semicolon, tab, pipe), toggle headers, or enable nested object flattening.
  4. Copy the CSV output to your clipboard or download it as a .csv file.
  5. Use the Swap button to switch to CSV to JSON conversion mode.

Worked Examples

Basic flat array of records

Input
[{"name":"Jane","email":"j@x.com"},{"name":"Bob","email":"b@x.com"}]
Output
name,email\nJane,j@x.com\nBob,b@x.com

Headers auto-derived from the first object's keys.

Flatten nested address objects

Input
[{"name":"Jane","address":{"city":"NYC","zip":"10001"}}]
Output
name,address.city,address.zip\nJane,NYC,10001

Dot-notation preserves hierarchy in a flat CSV format Excel can read.

European delimiter for spreadsheets

Input
Same JSON, delimiter set to `;`
Output
name;email\nJane;j@x.com

Excel on non-English systems treats comma as a decimal separator — semicolon avoids ambiguous imports.

About JSON to CSV Converter

JSON to CSV Converter is a free online tool that transforms JSON arrays into CSV (Comma Separated Values) format. It handles complex JSON structures including nested objects (flattened with dot notation like address.city), arrays within values, null values, and mixed data types. The tool supports multiple delimiters — comma, semicolon, tab, and pipe — making it compatible with different regional CSV standards and applications. Whether you need to export API response data to a spreadsheet, prepare data for database import, or share structured data with non-technical team members, this converter handles it all. Every conversion runs 100% in your browser — your JSON data never leaves your device.

Troubleshooting & Common Issues

Excel shows all data in one column

Excel's import treats comma as the delimiter only on English locales. On German/Spanish Excel, switch the converter's delimiter to semicolon, or use Excel's Data → Import wizard and specify the separator manually.

Commas inside a string value break the CSV layout

The converter automatically quotes any cell that contains the delimiter, a newline, or a double quote — per RFC 4180. If you see broken layout, check that your importing application also respects RFC 4180 quoting.

Arrays flattened to `1,2,3` conflict with CSV commas

Inner arrays are joined with semicolons by default to avoid colliding with the outer delimiter. Change the join character in settings if your downstream tool expects a different separator (pipes work well for data that might already contain semicolons).

Some rows have missing keys — empty cells appear

The converter collects the union of all keys across every row, so rows missing a field get empty cells for that column. This is correct CSV behavior. If you need a "default value" instead of empty, pre-process your JSON to fill in the blanks.

Frequently Asked Questions

How do I convert JSON to CSV?

Paste your JSON array of objects into the input field. The tool automatically extracts all keys as CSV column headers and converts each object into a CSV row. Click Copy or Download CSV to get the result. For nested objects, enable 'Flatten nested objects' to convert them to dot-notation columns like address.city.

Can I convert nested JSON to CSV?

Yes. Enable the 'Flatten nested objects' option (on by default) and the tool will convert nested properties to dot-notation columns. For example, {"address": {"city": "NYC"}} becomes a column header address.city with value NYC.

What JSON format does this tool accept?

The tool accepts a JSON array of objects, like [{"name":"John","age":30},{"name":"Jane","age":25}]. Each object in the array becomes one row in the CSV. The tool automatically collects all unique keys across all objects as column headers.

Can I change the CSV delimiter?

Yes. Choose from four delimiter options: Comma (default, standard CSV), Semicolon (common in European countries), Tab (TSV format), or Pipe. Select the delimiter that matches your target application or regional standard.

Is my JSON data safe with this converter?

Yes. This JSON to CSV converter runs 100% client-side in your browser. No data is ever uploaded to any server. Your JSON stays on your device, making it safe for converting sensitive or proprietary data.

How does the tool handle arrays inside JSON values?

Arrays within JSON values are joined with semicolons by default. For example, {"skills": ["JS", "Python"]} becomes JS;Python in the CSV output. This preserves all data while maintaining CSV compatibility.

Can I convert large JSON files to CSV?

Yes. The tool processes JSON locally in your browser and can handle files with thousands of rows. For very large files, use the Upload button to load a .json file directly instead of pasting.

Related Tools

Was this tool helpful?