Data Converter

JSON ↔ CSV Converter

Convert JSON arrays of objects to CSV for spreadsheets and reports, or turn a CSV export back into JSON.

CSV Output
Output will appear here

Convert JSON to CSV and CSV to JSON, free and client-side

Product managers pull JSON API responses into spreadsheets to build reports. Engineers export CSV test fixtures and need them as JSON for a seed script. This tool handles both directions without installing anything — paste your data, pick a direction, and convert.

How the JSON → CSV conversion works

  • Accepts a JSON array of objects (the most common shape for tabular data), or a single object.
  • Nested objects are flattened using dot notation, e.g. address.city, address.zip.
  • Arrays of primitive values (like ["admin","user"]) are joined with ; in a single cell.
  • The column header row is built from the union of every key across all rows, so rows with missing fields still line up correctly.
  • Values containing commas, quotes, or newlines are automatically quoted and escaped per RFC 4180.

How the CSV → JSON conversion works

The first row is treated as the header. Each subsequent row becomes one JSON object, using the header values as keys. Quoted fields (including ones containing commas or embedded newlines) are parsed correctly. Turn on "Auto-detect numbers & booleans" to convert numeric-looking cells to JSON numbers and true/false cells to JSON booleans instead of leaving everything as a string — useful when you're about to feed the output into code that expects real types.

Typical use cases

  • Reporting: Turn an API's JSON response into a CSV you can open in Excel, Google Sheets, or Numbers.
  • Data migration: Convert a CSV export from one system into JSON for import into another.
  • QA & test data: Build test fixtures in a spreadsheet, then convert to JSON for your test suite.
  • Analytics handoff: Give a product manager or analyst a spreadsheet-friendly view of structured data without writing a script.

Not sure which format actually fits your data? See CSV vs JSON: Choosing the Right Format for Your Data.

Frequently Asked Questions

Yes. Nested objects are flattened into dot-notation columns (for example user.address.city), so the resulting CSV stays flat and spreadsheet-friendly.
Arrays of simple values (strings, numbers) are joined into a single cell separated by semicolons. Arrays of objects are flattened using indexed keys like items[0].name.
CSV has no native type system, so every cell is a string by default. Enable “Auto-detect numbers & booleans” to convert numeric-looking and true/false cells into proper JSON types automatically.
There's no hard-coded limit, but very large files (tens of megabytes) may be slow since everything runs in your browser's JavaScript engine rather than on a server.
No. The conversion runs entirely in your browser. Nothing you paste or upload is sent to a server.