JSON to CSV Converter Online

Convert JSON arrays to CSV instantly. Supports multiple delimiters and download.

Delimiter:
JSON INPUT
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 (CSV) file. Each object in the array becomes a row, and the object keys become the column headers. This is useful when you need to import data into spreadsheet applications like Excel or Google Sheets, load data into a database, or share structured data in a universally readable format. This online JSON to CSV converter runs entirely in your browser — no data is sent to a server.

How to Use JSON to CSV Converter

  1. Paste a JSON array of objects into the Input area.
  2. Choose a delimiter: Comma (standard CSV), Semicolon (common in European locales), Tab (TSV), or Pipe.
  3. The CSV output appears instantly on the right.
  4. Click Copy to copy the CSV, or Download to save it as a .csv file.

Features

  • Multiple delimiters — comma, semicolon, tab (TSV), and pipe
  • RFC 4180 compliant — special characters and quotes are properly escaped
  • Mixed-key support — handles objects with different keys across rows
  • Download as .csv — save the result directly to your machine
  • Clear error messages — invalid JSON or non-array input is reported immediately
  • Privacy-first — all processing is local, no server involved

FAQ

What JSON format does this converter accept?

The converter accepts a JSON array of objects, where each object represents a row and its keys become the CSV column headers. For example: [{"name":"Alice","age":30},{"name":"Bob","age":25}].

How are special characters handled in CSV output?

Cells containing the delimiter character, double quotes, or newlines are automatically wrapped in double quotes. Any double quotes inside the value are escaped by doubling them (""), following the RFC 4180 CSV standard.

What if my JSON objects have different keys?

The converter collects all unique keys from all objects in the array and uses them as column headers. If an object is missing a key, the corresponding cell is left empty.

Is my data sent to a server?

No. All conversion happens entirely in your browser using JavaScript. No data is sent to any server.