TOOLS WORLD logoTOOLS WORLD

JSON to CSV Converter

Convert JSON arrays of objects into comma-separated values for Excel, Google Sheets, or data pipelines. Auto-detects columns and supports custom delimiters.

CSV output

What is a JSON to CSV converter?

A JSON to CSV converter transforms a JSON array of objects into a comma-separated values file suitable for spreadsheets, data analysis tools, and legacy systems that expect tabular input. JSON is the native format of modern APIs; CSV is the native format of Excel, Google Sheets, and most business-intelligence pipelines. This tool bridges the two in one click.

The conversion expects a specific shape: a top-level JSON array where each item is a flat object with string, number, boolean, or null values. That pattern matches how most REST APIs return paginated records, how ORMs serialize query results, and how analytics platforms export datasets. Paste the array, click convert, and copy the CSV into your spreadsheet or save it for import elsewhere.

How to use the JSON to CSV converter

  1. Paste JSON into the left panel. Click Load sample to see the expected array-of-objects format.
  2. Click Convert to CSV. Headers and rows appear in the right panel.
  3. Copy the CSV and paste it into Excel, Google Sheets, or any CSV-compatible tool.
  4. Read error messages carefully. If the input is not an array of objects, the tool explains exactly what shape is required.

Example

JSON input:

[
  {"name": "Ada Lovelace", "role": "engineer", "active": true},
  {"name": "Grace Hopper", "role": "admiral", "active": true}
]

CSV output:

name,role,active
Ada Lovelace,engineer,true
Grace Hopper,admiral,true

Object keys become the header row. Each object becomes one data row with values aligned to the corresponding columns.

Handling edge cases

Values containing commas, quotes, or line breaks are automatically quoted and escaped according to standard CSV rules. Boolean values appear as true/false text. Null values produce empty cells. If objects across rows have different sets of keys, the converter includes all unique keys as columns — rows missing a key leave that cell blank.

Deeply nested JSON — objects inside objects, or arrays of arrays — is not ideal for CSV, which is inherently flat. Flatten nested structures before converting, or keep complex fields as JSON strings within a single cell.

Related tools

Frequently asked questions

What JSON structure is required for CSV conversion?
The input must be a JSON array where every element is a plain object (not nested arrays or primitive values). Each object's keys become CSV column headers, and each object's values become a row. This is the standard shape for tabular data exported from APIs and databases.
How are column headers determined?
Headers are derived from the keys of the objects in the array. The converter collects all unique keys across every row and uses them as column names. Missing keys in some rows produce empty cells in those columns.
What happens to nested objects or arrays inside rows?
Nested structures are serialized as JSON strings within the CSV cell. For flat tabular export, flatten your data first so each column contains a simple scalar value.
Can I convert a single JSON object to CSV?
A single object is not an array, so it cannot be converted directly. Wrap it in an array with one element — [{ ... }] — to produce a CSV with one data row plus headers.
Is my data uploaded during conversion?
No. Parsing and CSV generation happen entirely in your browser. Your data never leaves your device.
How do I convert CSV back to JSON?
Use the CSV to JSON Converter. Paste CSV with a header row and get a JSON array of objects with syntax-highlighted output.

Related tools

More free tools you might find useful alongside the JSON to CSV Converter.