JSON ↔ CSV Converter
Convert between JSON and CSV formats instantly — free, browser-based
Input (JSON)
Output (CSV)
Free JSON to CSV Converter & CSV to JSON Converter Online
JSON and CSV are the two most common data formats used across software development, data analysis, and business intelligence. JSON (JavaScript Object Notation) is the standard data format for web APIs and modern applications. CSV (Comma-Separated Values) is the universal format for spreadsheets, databases, and data exports. You frequently need to convert between them — and this tool makes that conversion instant, accurate, and free.
The OmniWebKit JSON to CSV Converter works in both directions. Paste a JSON array of objects to convert it to a properly formatted CSV file with configurable delimiters and optional header rows. Paste a CSV file to convert it back to a structured JSON array, with automatic type coercion (numbers, booleans, and null values are detected and converted automatically). All processing happens in your browser — your data never leaves your device.
Four delimiter options are supported: comma (the default), semicolon (common in European locales where commas are used as decimal separators), tab (for TSV files), and pipe. The "Swap" button reverses the conversion direction and moves the output to the input area, so you can quickly convert back and forth.
JSON to CSV Conversion — How It Works
Converting JSON to CSV requires the input to be a JSON array where each element is an object (row). The converter handles several edge cases automatically:
Missing keys
If different objects in the array have different keys, the converter collects all unique keys across all objects. Missing values for a given row appear as empty cells in the CSV output.
Nested objects and arrays
If a JSON value is an object or array, it is serialised to a JSON string and placed in a single CSV cell, surrounded by quotes. This preserves the data without losing it.
Special characters
Values that contain the delimiter character, double quotes, or newlines are automatically wrapped in double quotes per the RFC 4180 CSV standard. Double quotes within values are escaped by doubling them.
Header row
The first row of the CSV output uses the JSON object keys as column headers. You can disable this for header-less CSV output.
Custom delimiters
Choose from comma, semicolon, tab, or pipe. Semicolons are common in German, French, and other European locales where commas are decimal separators. Tab-separated values (TSV) are often easier to paste into Excel.
CSV to JSON Conversion — Smart Type Detection
When converting CSV to JSON, the converter doesn't just produce strings for every value — it applies smart type coercion to produce the most useful JSON output:
Numbers
Numeric strings are automatically converted to JavaScript numbers. "42" becomes 42, "3.14" becomes 3.14.
Booleans
"true" becomes true (boolean), "false" becomes false. Case-sensitive.
Null values
"null" is converted to JSON null instead of the string "null".
Nested JSON
Strings that look like JSON objects or arrays ({...} or [...]) are parsed into nested structures.
Empty cells
Empty CSV cells become empty strings "" in the JSON output.
Column names
If "First row is header" is unchecked, columns are named column_1, column_2, etc.
