Skip to content

TSV to CSV converter

TSV to CSV changes tab separators to commas after our table engine has parsed each row, which matters when a quoted TSV field itself contains a tab.

  • Converted with Table engine · nothing stored
  • Free: 5 conversions a day · 5 MB each
  • Higher limits →

From real runs

What you get — and what changes

  • Tab delimiters Changed

    Separating tabs were replaced by commas, while the tab inside the quoted note cell remained part of the value.

  • Header row Kept

    id, name, note, zip, and active remained the output header names in the same order as the TSV source.

  • Embedded tab text Kept

    The value tab inside was written inside a CSV field without quoting because a literal tab is not a CSV delimiter.

  • Leading zeros Changed

    The TSV values 001 and 02134 became 1 and 2134 after scalar inference, matching the CSV output we inspected.

  • Unicode characters Kept

    Zoë was written as UTF-8 text in the CSV output, with no replacement characters in the downloaded file.

  • Boolean words Changed

    true and false were interpreted as booleans and serialized back as lowercase CSV tokens.

Sample conversions

Quoted tab inside a field

Input
TSV row: 001\tAda\t"tab\tinside"\t02134\ttrue
Output
CSV output: 1,Ada,tab\tinside,2134,true. The inner tab stayed in the note value, not as a comma.

Unicode name row

Input
TSV row: 002\tZoë\tplain\t94105\tfalse
Output
CSV output: 2,Zoë,plain,94105,false with the accented character intact.

A real TSV → CSV run

We converted our TSV sample (226 B) with Table engine on 2026-09-11. It took 1 ms and produced a 281 B CSV file, 1.2× larger than the input. The engine raised no warnings.

Input · sample.tsv · 226 B

4 data rows × 5 columns; header: company stage arr owner close_date

Rows
4
Columns
5
Header
company stage arr owner close_date

Output · sample.csv · 281 B

4 data rows × 5 columns; header: company,stage,arr,owner,close_date

Rows
4
Columns
5
Header
company,stage,arr,owner,close_date

First lines of the output

csv
company,stage,arr,owner,close_date
Northwind Traders,Proposal,48000,R. Ayers,2026-10-14T00:00:00.000Z
Contoso Ltd,Negotiation,120000,P. Ng,2026-09-30T00:00:00.000Z
Fabrikam,Qualified,22500,R. Ayers,2026-11-02T00:00:00.000Z
Tailspin Toys,Won,64000,M. Okafor,2026-09-03T00:00:00.000Z

Options and when to change them

delimiter
Use this when the source is a tabular text file with a different separator but a .tsv extension.
header
Disable it for headerless TSV logs so the first record is not consumed as field names.
quote
Set a different quote character only for TSV exports that do not use double quotes around protected fields.
encoding
Choose latin1 for legacy TSV files whose accented names decode incorrectly as UTF-8.
newline
Switch to CRLF when the receiving CSV importer expects Windows line endings.

Do it yourself

Python csv module

bash
python - <<'PY'
import csv
with open("input.tsv", newline="", encoding="utf-8") as src, open("output.csv", "w", newline="", encoding="utf-8") as dst:
    reader = csv.reader(src, delimiter="\t")
    writer = csv.writer(dst)
    writer.writerows(reader)
PY

The standard library keeps every field as text, so compare output if you rely on tabular-ir's typed dates or booleans.

TSV to CSV by API or MCP

The HTTP API and the MCP server run the exact engine this page uses (Table engine); the response carries the same warnings the web converter shows. Check support first with GET /api/v1/pairs?from=tsv&to=csv.

curl
curl -X POST https://filetypeconverters.com/api/v1/convert \
  -H "Authorization: Bearer $FTC_API_KEY" \
  -F "file=@input.tsv" -F "from=tsv" -F "to=csv" \
  -F 'options={"delimiter":","}' \
  --output output.csv

Options this engine accepts for TSV → CSV

KeyApplies toTypeDefault
delimiterReading TSVstring,
headerReading TSVbooleantrue
quoteReading TSVstring"
encodingReading TSVutf-8 · latin1utf-8
delimiterWriting CSVstring,
newlineWriting CSV ·
API reference

When this is the wrong conversion

  • Do not convert TSV to CSV just to open it in Excel if the source already imports cleanly with tab separators.
  • If cells may contain unescaped tabs from copy-pasted prose, repair the TSV first or move the data into JSON.

TSV to CSV questions

Can TSV fields contain tabs?

They can when the producer quotes the field, and our TSV sample did that successfully. If the tab is not quoted, every parser will treat it as a separator.

Why was the TSV note not quoted in CSV?

The note contained a tab, not a comma or quote. CSV does not require quotes for tabs, so the writer emitted the field plainly.

Is TSV to CSV available as an on-device web conversion?

Yes. TSV to CSV runs through our table engine and finishes in well under a second for files of a few megabytes.