Your data is never sent to a server or stored anywhere. All processing happens in your browser.

JSON to CSV Converter

CSV delimiter
Header row
Quoting
CSV output Rows: 0 · Columns: 0
 

How to Use


Paste a JSON array into the input. If the elements are objects, their keys become the CSV column headers; if they are primitives, they become a single-column table labeled "value". Choose a delimiter (comma, semicolon, or tab for TSV), toggle whether to include a header row, and optionally force every field to be quoted. The CSV output updates in real time and can be copied with one click.

What Is CSV


CSV (Comma-Separated Values) is a plain-text tabular format widely accepted by spreadsheets (Excel, Google Sheets, Numbers), databases, and data-analysis tools. Each line is a row; cells are separated by a delimiter (usually a comma). Cells that contain the delimiter, a quote, or a newline are wrapped in double quotes, and internal quotes are escaped by doubling them. This implementation follows RFC 4180.

Conversion Behavior


Keys are unioned across all rows, so missing keys produce empty cells rather than errors. Nested objects and arrays are stringified as JSON ({"x":1}) inside a single cell — if you need flattened columns, pre-process the JSON first. null and undefined become empty cells. Numbers and booleans are emitted as their literal string form. The tool rejects mixed arrays that combine primitives and objects.

Common Use Cases


  • Exporting API responses into spreadsheet-ready CSV for business users.
  • Transforming JSON logs into CSV for data analysis in Excel or Pandas.
  • Preparing JSON data for import into databases or ETL pipelines that expect CSV.
  • Quick ad-hoc conversion during debugging to compare records at a glance.
  • Generating sample CSV files from API fixtures for testing.

Tips


  • Choose the semicolon delimiter when exporting for European locales that use comma as the decimal separator.
  • Tab delimiter produces TSV, which is also accepted by Excel and avoids quoting for most content.
  • Toggle 'Quote every field' when downstream consumers expect RFC 4180 strict mode.
  • Omit the header row when concatenating multiple CSVs that already share a single header elsewhere.
  • Nested objects are stringified as JSON inline — run the data through a flattening step first if you need proper columns.

Privacy


All JSON parsing and CSV encoding happens in your browser. Your data is never sent to any server or stored anywhere.

FAQ


What input does the converter expect — a single object or an array?

It expects a top-level JSON array. If the elements are objects, their keys become columns; if they are primitives, you get a single column labeled "value". A bare object or other non-array input is not converted.

What happens to nested objects and arrays inside a row?

They are not flattened into separate columns. Each nested value is stringified back to JSON (e.g. {"x":1}) and placed inside a single cell. If you need real columns, flatten the JSON before converting.

Is it safe to convert JSON that contains private or internal data?

Yes. Parsing and CSV encoding run entirely in your browser — nothing is uploaded, logged, or stored. You can convert exported user records or internal data without it leaving your device.

How do I produce a TSV file instead of comma-separated output?

Choose the tab delimiter. This emits tab-separated values, which Excel and most spreadsheet tools accept and which usually avoids the need to quote fields.

Why does my array get rejected as invalid?

The tool rejects arrays that mix primitives and objects, since the column structure would be ambiguous. Keep the array uniform — either all objects or all primitives — and missing keys across object rows will simply produce empty cells.