Diysb Tools

JSON to CSV

Convert JSON data to CSV format. Supports nested objects and arrays, automatic header detection, and configurable delimiters and quoting — ready for Excel, Google Sheets, or any spreadsheet application.

JSON-инструменты
Input JSON
Output CSV
Параметры инструмента
Delimiter
Character used to separate values in each row (e.g. comma, semicolon, tab)
String Quoting
Auto (recommended)
Only quote cells that contain the delimiter, a double-quote, or a newline. Keeps output clean and minimal.
Always quote
Wrap every cell in double-quotes, regardless of its content.
Headers
Use JSON keys as column names in the first row. Recommended for readability and import compatibility.
JSON to CSV Примеры

Array of objects

Convert multiple JSON objects into CSV rows, one row per object.

[ { "name": "John Doe", "age": 25, "city": "New York" }, { "name": "Jane Doe", "age": 30, "city": "Los Angeles" }, { "name": "Bob Smith", "age": 22, "city": "Chicago" } ]
[ { "name": "John Doe", "age": 25, "city": "New York" }, { "name": "Jane Doe", "age": 30, "city": "Los Angeles" }, { "name": "Bob Smith", "age": 22, "city": "Chicago" } ]
name,age,city John Doe,25,New York Jane Doe,30,Los Angeles Bob Smith,22,Chicago
name,age,city John Doe,25,New York Jane Doe,30,Los Angeles Bob Smith,22,Chicago
Delimiter
Character used to separate values in each row (e.g. comma, semicolon, tab)
String Quoting
Auto (recommended)
Only quote cells that contain the delimiter, a double-quote, or a newline. Keeps output clean and minimal.
Always quote
Wrap every cell in double-quotes, regardless of its content.
Headers
Use JSON keys as column names in the first row. Recommended for readability and import compatibility.

Nested object (dot notation)

Nested keys are flattened using dot notation (e.g. address.city).

[ { "name": "John Doe", "age": 25, "address": { "street": "123 Main St", "city": "New York", "state": "NY", "postalCode": "10001" }, "hobbies": ["reading", "running"] } ]
[ { "name": "John Doe", "age": 25, "address": { "street": "123 Main St", "city": "New York", "state": "NY", "postalCode": "10001" }, "hobbies": ["reading", "running"] } ]
name,age,address.street,address.city,address.state,address.postalCode,hobbies[0],hobbies[1] John Doe,25,123 Main St,New York,NY,10001,reading,running
name,age,address.street,address.city,address.state,address.postalCode,hobbies[0],hobbies[1] John Doe,25,123 Main St,New York,NY,10001,reading,running
Delimiter
Character used to separate values in each row (e.g. comma, semicolon, tab)
String Quoting
Auto (recommended)
Only quote cells that contain the delimiter, a double-quote, or a newline. Keeps output clean and minimal.
Always quote
Wrap every cell in double-quotes, regardless of its content.
Headers
Use JSON keys as column names in the first row. Recommended for readability and import compatibility.

Sparse rows

Missing keys are filled with empty values to keep columns aligned.

[ { "name": "Alice", "age": 30 }, { "name": "Bob", "city": "Paris" }, { "name": "Carol", "age": 25, "city": "Rome" } ]
[ { "name": "Alice", "age": 30 }, { "name": "Bob", "city": "Paris" }, { "name": "Carol", "age": 25, "city": "Rome" } ]
name,age,city Alice,30, Bob,,Paris Carol,25,Rome
name,age,city Alice,30, Bob,,Paris Carol,25,Rome
Delimiter
Character used to separate values in each row (e.g. comma, semicolon, tab)
String Quoting
Auto (recommended)
Only quote cells that contain the delimiter, a double-quote, or a newline. Keeps output clean and minimal.
Always quote
Wrap every cell in double-quotes, regardless of its content.
Headers
Use JSON keys as column names in the first row. Recommended for readability and import compatibility.