Developer tool / 04
TSV to CSV Converter
Convert tab-separated data to CSV, quoting any cell that needs it.
TSV to CSV Converter: TOEA splits the rows on tabs and writes them back with commas, wrapping any cell containing a comma, quote, or line break in quotes so the file stays readable. Runs 100% locally in your browser with zero server file uploads.
- Category
- Developer tools
- Runs
- In your browser
- Cost
- Free · no sign-up
- Availability
- Ready to use
Runs entirely in your browser
Up to 5 MB · nothing is uploaded
Tab-separated output from databases
Command-line database clients commonly produce TSV: mysql --batch prints tab-separated rows, and PostgreSQL's COPY … TO writes tabs in its default text format. Both escape special characters in their own way. PostgreSQL writes a NULL as \N, a tab in the data as \t, and a newline as \n. Those escapes are copied into the CSV as literal text, so replace them before importing the result elsewhere.
Checking the CSV that comes out
Cells containing a semicolon or a pipe are quoted as well as those with commas, which is valid CSV and keeps the file safe for programs that guess a different separator. Lines end with a single line feed. Most programs accept that, although the CSV standard, RFC 4180, specifies a carriage return and line feed. Open the result in the CSV viewer to confirm every row has the same number of columns before importing it.
How to use it
- Paste TSV or choose a file.
- Check the result.
- Copy or download the CSV.
Privacy & limitations
The text is converted in your browser and never uploaded, which matters when the file is a config or an export you would rather not hand to a stranger. Quotes inside a cell are doubled, which is how CSV escapes them.
Related tools
Frequently asked questions
When does a cell get quoted?
Whenever it contains a comma, a double quote, a semicolon, a pipe, or a line break. Everything else is written as-is.
What happens to quotes in my text?
They are doubled, so a cell reading she said "hi" is written as "she said ""hi""". That is the CSV convention and spreadsheets read it back correctly.
Why is my spreadsheet export tab-separated?
Copying cells from a spreadsheet puts tab-separated text on the clipboard, which is why pasting into a CSV-expecting field often fails.
Can I convert to something else?
This pair covers comma and tab. For JSON, use the CSV to JSON converter.
Free tool · runs in your browser · no account required