Back to Developer Tools

CSV ↔ JSON Converter

Convert between CSV and JSON in your browser with RFC 4180 quoting, custom delimiters, NDJSON, dot-path flattening, and safe type inference. Zero uploads.

Input0 chars · 0 lines
Output

CSV options

Delimiter

Off keeps leading zeros and long IDs as strings.

Drop a .csv, .tsv, .json, or .jsonl file

About this CSV ↔ JSON converter

Convert between CSV and JSON in either direction. Supports RFC 4180 quoting, custom delimiters, header rows, type inference, NDJSON, and dot-path flattening for nested objects. Everything runs locally in your browser.

CSV → JSON

Paste a CSV (or drop a .csv / .tsv file) to get a JSON array. Pick a delimiter, toggle whether the first row is a header, and decide if you want numbers and booleans inferred. Type inference is off by default to protect long IDs and leading zeros.

JSON → CSV

Paste a JSON array of objects, an array of arrays, or NDJSON. Nested objects are flattened with dot paths by default; switch to JSON-string columns if you'd rather keep them intact. Choose LF or CRLF and whether to quote every field.

RFC 4180

Our parser follows RFC 4180: fields with commas, quotes, or newlines are wrapped in double quotes; embedded quotes are escaped by doubling them. Empty trailing fields are preserved.

FAQ

Is type inference safe for IDs?
Off by default. Turning it on will coerce things that look like numbers, including long IDs and values with leading zeros — keep it off if that matters.
How are nested objects represented in CSV?
Two strategies: flatten with dot paths (`address.city`) or keep them as JSON strings in a single column. Pick the one that matches what your downstream tool expects.
Is NDJSON supported?
Yes. Set the JSON source to NDJSON / JSONL when each line is its own JSON value, or pick NDJSON as the JSON output mode.
Are my files uploaded?
No. Parsing and stringifying happen entirely in your browser via FileReader and Blob APIs.

Related Tools