JSONL Validator & Converter (CSV, JSON ↔ JSONL)
Check a JSONL (JSON Lines) file line by line and get the exact line number of every syntax error, then validate the structure against the chat (messages) or completion (prompt/completion) format used for fine-tuning language models. Five modes convert CSV to JSONL with type detection, JSONL to CSV, and JSON arrays to and from JSONL. Files are processed locally in your browser.
Reviewed by Vincenzo Manto, Founder & Lead Developer · Last updated September 30, 2026
How it works
- 1
Choose a mode: validate, CSV to JSONL, JSONL to CSV, JSON array to JSONL or JSONL to JSON array.
- 2
Paste your data or upload a file.
- 3
Fix the reported line errors, then copy or download the converted output.
Example
prompt,completion
Hello,Hi there
Bye,See you{"prompt":"Hello","completion":"Hi there"}
{"prompt":"Bye","completion":"See you"}Why JSONL for AI training data
Fine-tuning services and batch APIs read training data as JSONL because each example is independent, so files can be split, shuffled, streamed and appended without parsing a huge document. A single malformed line can make an upload fail, which is why line-accurate validation saves time before you submit a job.
Preparing a dataset from a spreadsheet
Many datasets start life as a spreadsheet with prompt and completion columns. Export it as CSV, convert to JSONL here, then switch to validation mode to confirm every record has the fields your provider expects. Remember that quality matters more than size: consistent, well-labelled examples beat large noisy files.
Frequently asked questions
What is JSONL?
JSON Lines is a text format with one complete JSON value per line, separated by newlines. It is easy to stream and append to, which is why it is the standard format for training data and log exports.
What fine-tuning formats are validated?
The chat format, where each line is an object with a messages array of role and content entries that includes an assistant reply, and the older completion format with prompt and completion strings. Auto-detect picks whichever shape each line uses.
Does CSV to JSONL detect types?
Yes. Numbers, true, false and empty cells become JSON numbers, booleans and null. Values with leading zeros such as 007 are kept as strings so IDs and ZIP codes are not corrupted.
Is there a file size limit?
Nothing is uploaded, so the limit is your browser's memory. Files up to several tens of megabytes work fine on a modern computer.