← All Tools

🔁 CSV ↔ JSONL Converter

Convert spreadsheet rows into one-object-per-line JSONL for evals, fine-tuning, batch jobs, and agent datasets — or turn JSONL back into CSV.

Combined dataset workflow

  • One page handles CSV → JSONL and JSONL → CSV so agents can route to a single canonical tool.
  • Reports records, columns, delimiter detection, typed line errors, warnings, and token-size estimates.
  • Strict mode turns row-width and non-object JSONL issues into blocking errors.
  • It does not read Excel files or fetch remote datasets; paste text explicitly.
Runs in your browser

CSV ↔ JSONL conversion runs locally in your browser; API calls are available for non-sensitive server-side automation.

What this tool does

CSV ↔ JSONL Converter turns tabular rows into line-delimited JSON records and converts JSONL records back into CSV.

Why it is useful

It saves repeated parsing work for eval datasets, fine-tuning fixtures, batch jobs, and agent ingestion pipelines.

How it works

The shared core parses CSV or JSONL, preserves stable column ordering, emits typed line/path errors, and reports size and token-estimate stats.

Best input

Use one header row for CSV or one JSON object per JSONL line. Enable strict mode before committing datasets.

Agent workflow tip

Copy the JSON summary when filing dataset conversion bugs so the exact direction, delimiter, warnings, and counts are reproducible.

Privacy note

Browser use is local; the API route is server-submitted for automation.

Important limitation

CSV is flat. Nested JSONL values are stringified when converting to CSV, and malformed rows may need manual cleanup.

Quick answers

Why one route for both directions?

It keeps the deterministic conversion core, docs, API id, and agent manifest metadata in one canonical place.

Can it convert Excel files?

No. Export Excel sheets to CSV first, then paste the text here.

API examples

Call the same deterministic core through Utilito’s compact API router. Send only data you intentionally submit to the server-side endpoint.

Try in API playground →Schema →
Convert CSV to JSONL with curl
curl
curl -X POST https://utilito.dev/api/run \
  -H "Content-Type: application/json" \
  -d '{"tool_id":"csv-jsonl-converter","input":{"input":"prompt,expected,split\n\"Classify refund request\",billing,train\n\"Summarize outage log\",incident,test","direction":"csv_to_jsonl","delimiter":"auto","headerMode":"first-row"}}'
Convert CSV to JSONL from JavaScript
javascript
const res = await fetch('https://utilito.dev/api/run', {
  method: 'POST',
  headers: { 'Content-Type': 'application/json' },
  body: JSON.stringify({
    tool_id: 'csv-jsonl-converter',
    input: { input: 'prompt,expected,split\n"Classify refund request",billing,train\n"Summarize outage log",incident,test', direction: 'csv_to_jsonl', delimiter: 'auto', headerMode: 'first-row' }
  })
});
const data = await res.json();
console.log(data.result.output || data.result.report);
Convert CSV to JSONL from Python
python
import requests
payload = {
    "tool_id": "csv-jsonl-converter",
    "input": {"input": "prompt,expected,split\n\"Classify refund request\",billing,train\n\"Summarize outage log\",incident,test", "direction": "csv_to_jsonl", "delimiter": "auto", "headerMode": "first-row"},
}
result = requests.post("https://utilito.dev/api/run", json=payload).json()["result"]
print(result.get("output") or result.get("report"))

Common Use Cases

Prepare eval fixtures

Convert prompt/expected CSV rows into JSONL records before committing an evaluation dataset.

Inspect batch outputs in a spreadsheet

Turn JSONL records from an agent or batch run back into CSV for review.

Debug ingestion failures

Use strict mode and the JSON summary to locate malformed lines before upload.

Data Table Converter Toolkit workflow

Move between CSV, JSON, JSONL, TSV, and Markdown table formats while keeping pasted table data local to the browser.

📊CSV to JSON Converter🔁JSON to CSV Converter📋TSV to CSV ConverterCSV to Markdown TableMarkdown Table Generator{}JSON Formatter
View all in Code →