Want to convert JSON Lines (JSONL / NDJSON / LDJSON) to CSV file?
Try Withdata Data File Converter, a JSON lines to CSV converter for Windows, Mac, and Linux, Convert JSON Lines to CSV, Easy and Fast.
- Can run in GUI mode, Step by Step, just a few mouse clicks.
- Can run in Command line, for Scheduled Tasks and Streams.
- Convert files locally and privately, avoid uploading large JSON file(s) to online services.
Download Withdata DataFileConverter
JSON Lines text format (JSONL), also called Newline-delimited JSON (NDJSON), or Line-delimited JSON (LDJSON). JSON Lines files may be saved with the file extension .jsonl, *.ndjson, *.ldjson.
Convert JSON Lines (JSONL / NDJSON / LDJSON) to CSV file
Choose JSON Lines (JSONL / NDJSON / LDJSON) file -> Set target CSV file -> Convert JSON Lines (JSONL / NDJSON / LDJSON) to CSV
Click “Start a New Convert” at task dialog.

then show the wizard.
Select source/target file type.

1. Open a JSON Lines (JSONL / NDJSON / LDJSON) file.

2. Config target CSV file.

3. Set rows options.

4. Convert JSON Lines (JSONL / NDJSON / LDJSON) to CSV.

See CSV file

Convert JSON Lines (JSONL / NDJSON / LDJSON) to CSV in command line
Save “JSON Lines (JSONL / NDJSON / LDJSON) to CSV” session, then you can:
- Convert JSON Lines (JSONL / NDJSON / LDJSON) to CSV in Windows command line.
- Convert JSON Lines (JSONL / NDJSON / LDJSON) to CSV in Linux command line.
- Convert JSON Lines (JSONL / NDJSON / LDJSON) to CSV in macOS command line.
Set scheduled tasks for converting JSON Lines (JSONL / NDJSON / LDJSON) to CSV
You can schedule and automate this converting task by:
- Save session and create .bat (Windows) or .sh (Linux/macOS) file for “JSON Lines to CSV” conversion.
- Set scheduled task for “JSON Lines to CSV” conversion.
FAQ
More tools for JSONL / NDJSON / LDJSON.
JSON Lines → CSV reference
Type mapping
| Value kind | in JSON Lines | in CSV |
|---|---|---|
| Int | 1234 (number) | 1234 |
| Decimal | 1234.56 (number) | 1234.56 |
| Float | 1.234e10 (number) | 1.234e+10 |
| Text | "text" (string) | quoted only when it contains a comma or a quote |
| Long text | "multi-line\ntext" | must be quoted; line breaks inside force multi-line records |
| Date | "2026-09-18" (string) | 2026-09-18 |
| Datetime | "2026-09-18T14:30:00Z" (string) | 2026-09-18 14:30:00 |
| Binary | "base64:..." (string) | not representable - base64 or hex string |
| Boolean | true / false (boolean) | TRUE / FALSE, or 1 / 0 depending on the writer |
| JSON | nested object on the same line | the whole JSON value quoted, with internal quotes doubled |
Dialect differences
Both JSON Lines and CSV are file formats, so what differs below is how each one chooses to represent a value.
| Property | in JSON Lines | in CSV |
|---|---|---|
| identifiers | Double quotes; backslash escapes (a newline inside a string... | Double quotes; a literal quote is doubled ("" ) |
| dates | No date type: dates arrive as strings | Conventional text: 2026-09-18 or 2026-09-18 14:30:00 |
| binary | Not supported natively - base64 inside a string | Not supported |
| separator | Newline between records | Comma "," |
| encoding | UTF-8 by definition | No declaration - UTF-8 works only with a BOM |
| typing | Same as JSON, but records cannot nest across lines | None - every field is text |
| shape | Flat stream | Flat table, optional header row |
| ceiling | Streams, so it scales past what a single JSON document can ... | No formal limit; row count bounded by memory |
Do it online, free
Skip the manual work — convert JSON to CSV online, free (runs in your browser, nothing is uploaded). For large files or batch jobs, use the desktop apps.
