Convert JSON records to CSV

Turn a JSON object or array of objects into a CSV table with predictable headers and visible notes for nested values.

All data conversion happens locally in your browser. No JSON, CSV, YAML, or XML is sent to our servers.
JSONCSV

Quick examples

Use JSON to CSV when your data is already record-shaped

The cleanest JSON to CSV conversion starts with one object per row: users, products, events, inventory items, or API records. Object keys become CSV headers, and each object becomes one row in the output.

This converter keeps the table shape predictable. It does not invent flattened column names for nested paths; nested arrays and objects stay inside a single CSV cell as JSON strings so you can decide how to reshape them.

Output rules to review

JSON input shape CSV output behavior
Array of objects Each object becomes one row; keys become headers.
Single object The object becomes one CSV row.
Nested array or object value The nested value is preserved as a JSON string inside the cell.
Primitive array Values are written under a single value column.
Do not use this as a flattener: if you need columns such as address.city, tags.0, or one row per nested item, reshape the JSON before converting.

Before importing the CSV elsewhere

  • Check columns that contain JSON strings; spreadsheet tools may display quotes differently.
  • Confirm missing keys and null values are acceptable as empty cells.
  • Rename headers before export if another system expects exact column names.
  • Keep IDs and codes as text in spreadsheet software if leading zeroes matter.

JSON to CSV FAQ

Why are nested arrays or objects still visible in one CSV cell?

CSV is a table format, so the converter preserves nested values as JSON strings instead of guessing how many columns or rows they should become.

Can I convert a JSON array of strings or numbers?

Yes. Primitive arrays are written to one column named value. Mixed arrays that combine objects and primitives are rejected because the table shape is ambiguous.

Why are some CSV cells blank?

Blank cells usually mean that row did not include the matching key, or the source value was null or undefined.