Convert CSV to TSV
Comma to tab,
correctly.
Free CSV to tab-delimited converter. Correctly handles quoted fields — values quoted only because of commas are un-quoted in the TSV output. Also converts between any delimiters: comma, tab, semicolon or pipe. Upload or paste. Runs in your browser.
The key difference is in how fields containing the delimiter are handled.
name,age,city Alice,32,"New York, NY" Bob,28,"London, UK"
The city field must be quoted because it contains a comma. Without quotes, the parser would split New York, NY into two separate columns.
name age city Alice 32 New York, NY Bob 28 London, UK
In TSV, commas are ordinary characters — no quoting needed. The quotes around New York, NY are correctly removed. Only fields with embedded tabs need quoting.
Why naive find-and-replace breaks CSV — and what CSVShift does instead.
Simply replacing every comma with a tab breaks quoted fields. "New York, NY" would become "New York[tab] NY" — splitting the value incorrectly. CSVShift fully parses the CSV first, correctly tracking quoted regions where the delimiter is not a separator.
In minimal quoting mode, each field is re-evaluated for the output delimiter. A field that needed quoting in CSV because of a comma doesn't need quoting in TSV. But a field containing an embedded tab — uncommon but valid — gets quoted in the TSV output to remain valid.
The parsed fields are written back with the chosen output delimiter. The result is a correctly formed TSV — or CSV, semicolon or pipe file — that passes validation by any RFC 4180 compliant parser.
For scripting and pipeline use cases.
Common situations where delimiter conversion is necessary.
MySQL's LOAD DATA INFILE and PostgreSQL's COPY command default to tab-delimited input for TSV files. Converting a CSV to TSV before a bulk import avoids having to specify FIELDS TERMINATED BY in the import command.
Tab-delimited files paste cleanly into Excel and Google Sheets — each tab becomes a column separator when pasting into cells. Converting CSV to TSV first lets you paste data directly into a spreadsheet without using the import wizard.
Addresses, descriptions, product names and currency values frequently contain commas. CSV files with these values require quoting — which some parsers handle poorly. TSV sidesteps the problem entirely: commas become ordinary characters.
Command-line tools like cut, sort and awk work naturally with tab-delimited files. Converting CSV to TSV enables standard Unix text-processing tools to parse fields correctly without needing a dedicated CSV-aware parser.
Other free converters on CSVShift you might need.
Delimiter conversion
done correctly.
Most online CSV-to-TSV converters do a naive find-and-replace — swap every comma for a tab. This breaks any field that contains a quoted comma. CSVShift fully parses the RFC 4180 CSV, extracting raw field values, then re-serialises with the output delimiter and minimal re-quoting. The result passes validation by any standards-compliant parser.
The same converter handles all four common delimiter combinations: CSV↔TSV, CSV↔semicolon, pipe↔comma and any other combination — using the same correct parse-then-reserialise approach.
pd.read_csv('in.csv').to_csv('out.tsv', sep='\t', index=False). With the csv module: csv.writer(f_out, delimiter='\t').writerows(csv.reader(f_in)). Do NOT use sed 's/,/\t/g' — it breaks quoted commas.