CSV to JSONL
Convert a CSV into newline-delimited JSON — the format BigQuery, Snowflake, Elasticsearch bulk loads, and most LLM fine-tuning pipelines want. Each row becomes one self-contained JSON object on its own line, so the file streams line by line instead of needing to be parsed whole.
How to convert CSV to JSONL
- Paste the CSV or drop a file — the header row becomes the object keys.
- Leave detect numbers, booleans, null on so
42becomes a number rather than"42". - Tick omit empty fields if blank cells should be absent from the object instead of
"". - Copy or download the
.jsonl.
JSONL vs a JSON array
A JSON array ([{…},{…}]) must be read in full before it's valid, so a 2 GB export needs 2 GB of memory and one corrupt byte ruins the whole file. JSONL has no wrapper and no commas between records: a reader handles one line at a time, a bad line can be skipped, and tail -n 100, split, and grep all work as usual. That's why data warehouses and bulk-load APIs standardised on it. If you need the array form instead, use CSV to JSON.
What type detection does and doesn't touch
42, -1.5, and 2.5e3 become numbers; true/false become booleans; null becomes null. Values that only look numeric are deliberately left as strings: 007, +380…, and anything with a leading zero stay text, because those are identifiers and turning them into numbers destroys them. Turn detection off entirely when the consumer expects every field to be a string.
FAQ
Is JSONL the same as NDJSON?
Yes — JSONL, NDJSON, and "line-delimited JSON" all describe one JSON value per line. The .jsonl and .ndjson extensions are interchangeable.
Can I get nested objects?
Not from a flat CSV — every column becomes a top-level key. Dotted column names stay literal keys; nest them afterwards in your pipeline if needed.
How do I go back to CSV?
JSONL to CSV, which unions the keys across all lines and can flatten nested objects.
Is anything uploaded?
No. Conversion happens in your browser.
Privacy
100% client-side. No upload. See the privacy policy.