HomeToolsDeveloper Tools › JSON to CSV Converter

JSON to CSV Converter — Free Online Tool

Convert JSON to CSV instantly. Paste or upload a JSON array — Array of Objects, Array of Arrays, or JSONLines — and download a clean .csv spreadsheet. Flatten nested objects. No sign-up, nothing stored.

Processed on our server — your JSON is never stored or logged.
JSON Input 0 chars
Upload .json / .txt (up to 20 MB)
Input format
Advanced options
Delimiter
Quote character

About JSON to CSV Converter

JSON to CSV Converter takes any JSON array — an API response, a database export, a structured log file — and converts it to a clean CSV spreadsheet in one step. Paste JSON or upload a file up to 20 MB. The converter processes everything server-side using PHP's native json_decode() and fputcsv(), which handles special characters, embedded quotes, and custom delimiters correctly. Nothing is stored or logged after the response is sent.

Three input formats

Array of Objects (default): The most common JSON structure from REST APIs — [{"name":"Alice","age":30},{"name":"Bob","age":25}]. Object keys become CSV column headers.

Array of Arrays: Rows without named keys — [["Alice",30],["Bob",25]]. Headers are auto-generated as col0, col1, col2, etc. when "Include header row" is on.

JSONLines / NDJSON: One JSON object per line, no wrapping array. Standard format from Kafka, Elasticsearch exports, and ML training pipelines.

Nested object flattening

When "Flatten nested objects" is on (the default), a nested object like {"address":{"city":"NYC","zip":"10001"}} produces columns named address.city and address.zip using dot notation. When off, the nested object is serialized as a JSON string in the cell — useful when the consuming tool can parse JSON values in cells.

Output format options

The default delimiter is a comma and the default quote character is a double quote — the standard RFC 4180 CSV format. You can switch to tab (TSV), semicolon (European format), or pipe in the Advanced section. Quote character switches between " and '. The header row toggle controls whether the column names appear as the first row.

Privacy

Your JSON data is sent to the server only for the duration of the conversion and discarded immediately after. Nothing is written to disk, logged, or retained between requests.

Common use cases

Frequently asked questions

How do I convert JSON to CSV?

Paste your JSON array into the text area or upload a .json or .txt file (up to 20 MB). Select the input format (Array of Objects is the default), then click "Convert to CSV". The output panel shows a CSV preview with Copy and Download buttons.

What happens to nested JSON objects when converting to CSV?

When "Flatten nested objects" is on (the default), nested objects are flattened to dot-notation column headers — {"address":{"city":"NYC"}} produces an "address.city" column. When off, the nested object is serialized as a JSON string inside the CSV cell.

Can I convert a large JSON array to CSV?

Yes. The tool accepts files up to 20 MB and processes them server-side using PHP's streaming fputcsv() function. Files up to 20 MB process reliably; very large arrays with many columns may produce large CSV output.

How do I convert JSONLines (NDJSON) to CSV?

Select "JSONLines" in the input format group. The converter splits the input by newlines and parses each line as a separate JSON object, then writes each as a CSV row.

Is my JSON data uploaded to a server?

Yes — conversion happens server-side using PHP's json_decode() and fputcsv() functions. Your JSON is sent over HTTPS and discarded immediately after the response is sent. Nothing is written to disk or retained between requests.

What delimiter options are available for the CSV output?

The default is comma (standard CSV). You can switch to tab (TSV format), semicolon (common in European locales), or pipe in the Advanced section. The quote character can be set to a double quote (default) or single quote.

Keep going

More developer tools

LiveDeveloper

CSV to JSON Converter

The inverse tool — convert CSV spreadsheets to JSON. 4 output formats: Array of Objects, Array of Arrays, Keyed JSON, and JSONLines.

Open tool
LiveDeveloper

JSON Formatter & Validator

Format and validate your JSON before converting — pretty-print minified input to confirm the structure is correct before running the CSV conversion.

Open tool
LiveDeveloper

YAML to JSON Converter

Convert YAML config files to JSON first, then use this tool to export to CSV — useful when your data pipeline starts with YAML-formatted configuration.

Open tool
LiveDeveloper

JSON Diff Checker

Compare two JSON arrays before converting — verify the structure and content are what you expect before committing to a CSV export.

Open tool