JSON to CSV Converter

Convert a JSON array to CSV, or CSV back to JSON. Handles nested objects, arrays, special characters, and custom delimiters. Copy or download the output.

JSON to CSV — How It Works

The converter expects a JSON array of objects where each object represents a row. It extracts all unique keys from the first object as column headers, then maps each object's values to the corresponding columns. Nested objects are flattened with dot notation (e.g. address.city). Values containing the delimiter character or quotes are automatically wrapped in double quotes and any internal quotes are escaped.

An array of objects: [{"key":"value"}, {"key":"value"}]. Each object becomes one CSV row. Keys of the first object become the column headers.
Yes — use the CSV → JSON tab. The first row is treated as headers. Each subsequent row becomes a JSON object with those headers as keys.
Values containing the delimiter, line breaks, or double quotes are quoted as per RFC 4180 (the CSV standard). Internal double quotes are doubled: "he said ""hello""".