Want to convert TSV to JSON lines (JSONL / NDJSON / LDJSON)?
Try Withdata Data File Converter, a desktop TSV to JSON converter for Windows, MacOS, and Linux, Convert TSV to JSON lines, 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 TSV file(s) to online services.
Download DataFileConverter
Windows 64 bit
Windows 32 bit
Linux .deb (For Debian, Ubuntu) 64 bit
Linux .rpm (For Red Hat, Fedora, SUSE) 64 bit
MacOS 64 bit
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 TSV to JSON lines (JSONL / NDJSON / LDJSON)
Choose TSV file -> Set target JSON Lines (JSONL / NDJSON / LDJSON) file -> Convert TSV to JSON lines (JSONL / NDJSON / LDJSON)
Click “Start a New Convert” at task dialog.
then show the wizard.
Select source/target file type.
1. Open a TSV file.
The TSV content:
2. Config target JSON Lines (JSONL / NDJSON / LDJSON) file.
3. Set rows options.
4. Convert TSV to JSON lines (JSONL / NDJSON / LDJSON).
See JSON lines file
Convert TSV to JSON lines (JSONL / NDJSON / LDJSON) in command line
Save “TSV to JSON Lines” session, then you can:
- Convert TSV to JSON lines (JSONL / NDJSON / LDJSON) in Windows command line.
- Convert TSV to JSON lines (JSONL / NDJSON / LDJSON) in Linux command line.
- Convert TSV to JSON lines (JSONL / NDJSON / LDJSON) in macOS command line.
Set scheduled tasks for converting TSV to JSON lines (JSONL / NDJSON / LDJSON)
You can schedule and automate this converting task by:
- Save session and create .bat (Windows) or .sh (Linux/macOS) file for “TSV to JSON lines” conversion.
- Set scheduled task for “TSV to JSON lines” conversion.
FAQ
More tools for JSONL / NDJSON / LDJSON.
Download Withdata DataFileConverter
Windows 64 bit
Windows 32 bit
Linux .deb (For Debian, Ubuntu) 64 bit
Linux .rpm (For Red Hat, Fedora, SUSE) 64 bit
MacOS 64 bit
TSV → JSON Lines reference
Type mapping
| Value kind | in TSV | in JSON Lines |
|---|---|---|
| Int | 1234 | 1234 (number) |
| Decimal | 1234.56 | 1234.56 (number) |
| Float | 1.234e+10 | 1.234e10 (number) |
| Text | unquoted; a tab in the value splits the column | "text" (string) |
| Long text | unquoted; newlines break the row | "multi-line\ntext" |
| Date | 2026-09-18 | "2026-09-18" (string) |
| Datetime | 2026-09-18 14:30:00 | "2026-09-18T14:30:00Z" (string) |
| Binary | not representable | "base64:..." (string) |
| Boolean | TRUE / FALSE | true / false (boolean) |
| JSON | the whole JSON value as-is (its own quotes stay) | nested object on the same line |
Dialect differences
Both TSV and JSON Lines are file formats, so what differs below is how each one chooses to represent a value.
| Property | in TSV | in JSON Lines |
|---|---|---|
| identifiers | Rarely used, which is exactly why tabs in data break it | Double quotes; backslash escapes (a newline inside a string... |
| dates | Conventional text: 2026-09-18 or 2026-09-18 14:30:00 | No date type: dates arrive as strings |
| binary | Not supported - must be encoded | Not supported natively - base64 inside a string |
| separator | Tab | Newline between records |
| encoding | No declaration - UTF-8 works only with a BOM | UTF-8 by definition |
| typing | None - every field is text | Same as JSON, but records cannot nest across lines |
| shape | Flat table, optional header row | Flat stream |
| ceiling | No formal limit | Streams, so it scales past what a single JSON document can ... |
Data File Converter without the manual work
For batch jobs, large files and scheduling use the Data File Converter converter — an offline desktop app for Windows, Linux and macOS. Free trial.
New to the format? Read what a TSV file is (and how it differs from CSV).