Convert between JSON and CSV in either direction. Paste data or drag & drop a file.
JSON ↔ CSV Input:
CSV ↔ JSON Input:
Have questions? Check our FAQ page.
JSON and CSV are two of the most widely used data formats. JSON (JavaScript Object Notation) excels at representing hierarchical, nested data structures, while CSV (Comma-Separated Values) is the standard for tabular data that can be opened in spreadsheet applications like Excel, Google Sheets, or LibreOffice Calc.
When converting JSON to CSV, the tool expects a JSON array of objects. Each object becomes a row, and each unique key becomes a column header. Nested objects are automatically flattened using dot notation (e.g., address.city), so you never lose data in the conversion.
Converting CSV to JSON transforms each row into a JSON object, using the first row as property names. The tool correctly handles quoted fields, commas within values, and various delimiter formats. The result is a clean JSON array ready for use in APIs, databases, or applications.
Converting between JSON and CSV is one of the most common data transformation tasks developers face. These two formats represent fundamentally different approaches to organizing data: JSON uses hierarchical, nested structures that can represent complex relationships, while CSV uses flat, tabular data organized in rows and columns. Understanding these differences is essential for successful conversion.
JSON (JavaScript Object Notation) excels at representing hierarchical data. Objects can contain other objects, arrays can hold multiple values, and data relationships can be expressed naturally through nesting. This makes JSON ideal for API responses, configuration files, and document databases where data has varying structures.
CSV (Comma-Separated Values) represents data as a simple table with rows and columns. Each row contains the same number of fields, and each field has a single value. This flat structure is perfect for spreadsheet applications, relational databases, and data analysis tools that expect uniform records.
When JSON contains nested objects, conversion tools must flatten the hierarchy into columns. This tool uses dot notation to preserve the path to each value. For example, a JSON object like {"user": {"name": "Alice", "address": {"city": "NYC"}}} becomes columns named user.name and user.address.city. This approach maintains data relationships while creating a valid CSV structure.
Alternative flattening strategies include underscore notation (user_name, user_address_city) and bracket notation (user[name], user[address][city]). The choice depends on your target application and any existing naming conventions in your workflow.
Arrays present a special challenge for JSON to CSV conversion because CSV has no native way to represent multiple values in a single cell. Different conversion approaches handle this differently:
"[1, 2, 3]""1|2|3" or "1;2;3"items.0, items.1, items.2This tool uses the stringify approach for nested arrays to preserve data integrity without creating excessive columns. You can always post-process the CSV to handle arrays differently based on your needs.
CSV is a text-only format with no native data types. When converting JSON to CSV, all values become strings. Numbers, booleans, and null values lose their type information. The number 42 becomes the string "42", the boolean true becomes "true", and null typically becomes an empty string or the literal "null".
When importing CSV into applications like Excel, type inference attempts to restore appropriate types. This usually works for numbers and dates but can cause issues. For example, leading zeros in ID fields may be stripped, and long numbers may be converted to scientific notation. Be aware of these transformations when working with sensitive data.
While commas are the standard delimiter, CSV files can use other separators depending on regional settings and application requirements:
Several issues frequently cause problems during JSON to CSV conversion:
Analytics and Reporting: Export API data to CSV for analysis in Excel, Google Sheets, or business intelligence tools. CSV is the universal import format for spreadsheet applications.
Data Migration: Move data between systems that speak different formats. Extract JSON from a NoSQL database and import CSV into a relational database, or vice versa.
Data Visualization: Many charting libraries and visualization tools accept CSV input. Convert your JSON data for use in tools like Tableau, Power BI, or D3.js.
Archival and Backup: CSV files are human-readable and universally supported. Converting JSON to CSV creates backups that can be opened without specialized software.
Reverse conversion from CSV to JSON is generally simpler because you are going from a flat structure to one that can be flat. The first row becomes property names, and subsequent rows become array elements. However, you may want to post-process the result to restore data types (converting string numbers to actual numbers) or reconstruct nested structures based on column naming patterns.
This tool handles both directions with automatic delimiter detection for CSV input and proper escaping for JSON output. The preview table shows exactly how your data will be transformed before you download or copy the result.