Online CSV and JSON converter: auto-detects headers, type inference. Convert CSV to JSON array, JSON to CSV table. Essential for data cleaning and API development.
TL;DR: Free online CSV and JSON converter with auto header detection and type inference. Convert CSV to JSON array or JSON to CSV table. Runs locally in browser.
For local tools, open DevTools → Network and search your input — it should not appear in requests.
Next steps
Usage Guide
CSV and JSON sit at the two ends of a data pipeline: CSV for spreadsheets and humans, JSON for programs and APIs. This tool converts both ways (header row maps to JSON keys), with comma/semicolon/tab delimiters, processed locally — good for API integration, data cleaning and feeding formatted data to reports.
1. Both directions
- CSV → JSON: paste CSV with a header row, pick a delimiter; get an array of objects with the header as keys — values stay strings.
- JSON → CSV: paste an array of objects (keys are unioned into columns); get table text you can paste straight into Excel.
- Copy or download the output for APIs, database imports or spreadsheets.
2. Edges worth knowing before converting
- No automatic type inference: every CSV cell becomes a JSON string. "001", "true", and "1.50" remain strings — coerce numbers/booleans downstream so leading zeros and booleans are not mangled.
- Delimiters and escaping: fields containing commas/quotes/newlines are quoted per the CSV spec, and this tool follows the spec — non-compliant downstream parsers may still misalign columns.
- Encoding decides the fate of non-ASCII text: GBK-sourced CSV garbles on conversion — transcode to UTF-8 first.
3. When not to convert at all
Very large datasets (hundreds of thousands of rows) belong in streaming or database tools; in-browser conversion slows down. Nested JSON is a poor fit for CSV — this page expects an array of objects on the JSON side. Flatten first (see JSON tools on this site) or keep the data as JSON.
4. Column alignment and dirty data
- A row whose field count disagrees with the header errors out (field-count mismatch) — safer than silent padding; fix the sheet first.
- Unclosed quotes or mid-field quotes without proper escaping are flagged; "Save as CSV" from Excel is usually cleaner than hand-built strings.
- JSON→CSV unions keys across objects into the header: missing keys become empty cells; unexpected keys widen the header — eyeball width before export.
5. When to pick the Excel path instead
For flat table ↔ array-of-objects, this page is the fast path. For multi-sheet workbooks, typed cells, or a real .xlsx download, use the Excel↔CSV / CSV→Excel / JSON→Excel chain. This page emits text CSV/JSON, not a binary workbook — a deliberate lightweight boundary.
6. A practical integration order
Ops sends CSV, API wants JSON: convert here, sample-check critical columns (IDs, amounts, dates) still look like the strings you expect, then parse in code if needed. Exporting API JSON to ops: confirm you have an array, not a single object or a pagination envelope ({ data: [...] }) — unwrap to the array first, or you will see a "not an array" error.
7. Header and type checks
For CSV→JSON, confirm header row and delimiter. Quoted commas must stay quoted or columns shift. JSON→CSV may flatten nests or need a path. Spot-check rows after convert; use scripts for huge batches. Keep sensitive tables local.
FAQ
No. Every cell stays a string, so "001", "true", and "1.50" enter JSON verbatim — coerce types explicitly in downstream code when needed, before leading zeros quietly disappear.
Comma, semicolon, and tab. A few thousand to tens of thousands of rows is usually smooth; beyond that, switch to streaming or database tools because browser memory hits the wall first. If everything lands in one column, the delimiter is probably wrong — European CSVs often use semicolons and TSV uses tabs.
An array of objects. A single object or a pagination envelope like { data: [...] } must be reduced to the array itself first, and nested structures need flattening. JSON→CSV takes the union of keys as the header: missing keys become empty cells, extra keys show up at the far end of the header.
Garbled text usually means GBK encoding — re-save the CSV as UTF-8 and retry. A field-count mismatch means some row has more or fewer columns than the header; the tool fails loudly instead of silently padding, so fix the row in a spreadsheet first. Fields containing commas, quotes, or line breaks must be quoted per the CSV spec.
For plain flat-table-to-array round trips, this page is the fastest route. When you need multiple worksheets, cell types, or an actual .xlsx file, use the Excel↔CSV / CSV→Excel / JSON→Excel chain — this page outputs text CSV/JSON only, a deliberate lightweight boundary.
It is free to use with no account and no usage caps; both directions of the conversion run locally in your browser with no server-side calls.
Related Tools
Related Articles
Online CSV/JSON Converter: Convert Between Table Data Formats
CSV ↔ JSON with RFC 4180 quoting, Excel dialects, BOM handling, and this site's real boundaries. Links to SQL, YAML, and TSV workflows.
Online JSON/CSV Converter: Convert Between JSON and Table Formats
JSON arrays to CSV: nested flatten, delimiter and header options, array-field boundaries, and how this page differs from the bidirectional CSV/JSON tool.
The Complete Guide to Table Format Conversion: Excel, CSV, JSON, Markdown, and HTML
Convert between Excel, CSV, JSON, Markdown, and HTML tables — delimiters, headers, empty cells, merged-cell boundaries, and matching browser tools.