JSON to CSV Converter

Convert an array of objects to CSV, or CSV with headers back to JSON, in your browser. Nested values stay as JSON text in cells. Not a universal flattener.

Last updated: October 2, 2026

Tool

This tool will load here.

What JSON to CSV conversion does

JSON to CSV conversion maps a table-shaped JSON value onto comma-separated rows, and maps a header-plus-rows CSV file back to an array of objects. It does not flatten arbitrary nested JSON into a universal spreadsheet. JSON is a tree. CSV is a grid. Those shapes only overlap when each record is a row and each field is a column.

This JSON to CSV tool accepts three JSON shapes on the way to CSV: an array of objects (the usual API list), a single object (one data row), or an array of arrays (rows without names — columns are labeled col1, col2, …). Anything else is refused with a reason. A JSON string, number, boolean, or null is not a table. A mixed array of objects and numbers is not a table.

Nested objects and arrays are the honest limitation. They are not exploded into dotted column names. They are written as compact JSON text inside the cell, and the status tells you how many nested values were stored that way. Spreadsheet programs will show that cell as text, not as extra columns. If you need a truly flat export, reshape the JSON in your application first, then convert.

How to use

  1. Paste JSON for JSON to CSV, or paste CSV with a header row for CSV to JSON.
  2. Choose the direction. Example loads a two-row array of flat objects.
  3. Copy output, or Download CSV after a successful JSON to CSV. Clear empties both boxes.

CSV to JSON keeps every cell as a string. 2 stays "2", not a JSON number. Zip codes and leading zeros survive. If you need typed numbers, convert them in your own code after you see the array. Quotes and commas inside fields follow CSV quoting (a field with a comma is wrapped in quotes; a quote is doubled).

Example

Supported input:

[
  { "sku": "A1", "qty": 2, "name": "Ada" },
  { "sku": "B2", "qty": 1, "name": "Tom" }
]

JSON to CSV writes a header sku,qty,name and two data rows. CSV to JSON on that output returns an array of two objects whose values are strings.

Nested input is still converted, with a warning:

[ { "sku": "A1", "meta": { "ok": true } } ]

The meta column contains {"ok":true} as text. That is not a flat table. Use the JSON Viewer first if you are not sure whether a payload is a list of flat records.

What this converter will not do

  • It will not invent columns from every nested key
  • It will not merge two JSON documents
  • It will not run formulas or execute CSV cells
  • It will not accept tab-separated files in this version (comma only)
  • It will not repair invalid JSON; parse errors stop JSON to CSV

If parse fails, use the JSON Validator. If the JSON is valid but you cannot see whether it is an array of objects, view the tree, then convert. Format is optional; conversion uses the parsed value, not the whitespace.

Practical use cases

  • Exporting a JSON API list into a spreadsheet for a non-developer
  • Turning a simple CSV export back into JSON fixtures
  • Checking that an endpoint really returned rows, not a nested envelope
  • WordPress or Magento reports that already look like arrays of objects

If the API wraps rows in {"data":[...]}, convert the inner array, not the envelope. This page will otherwise make data a single nested JSON cell.

The table-versus-tree tradeoff is JSON vs CSV.

Privacy

Conversion runs in this browser. The file is not uploaded to YallaSolve. Download CSV saves a local file from the output box. Treat customer tables like any other paste: clear the tab when you are done.

Need another tool ?

Open the free tools — no signup.

FAQs

newsletter signup

Lorem ipsum dolor sit amet, consectetur adipiscing elit.
Innovative Solutions For Modern Needs
Copyright © 2026 Yallasolve. all rights reserved.