Convert TSV to CSV Without Writing a Single Line of Code
- You do not need Python, Bash, or Notepad++ to convert TSV to CSV.
- Free browser tool: drop your .tsv file, click convert, download the CSV.
- Handles proper CSV quoting (RFC 4180) — something the sed one-liner does not.
- Works on Windows, Mac, Linux, Chromebook — any browser, no install.
Table of Contents
Search for "convert TSV to CSV" and most results suggest a Python script, a Bash one-liner, or a Notepad++ find-and-replace trick. All of those work — but they require either a programming environment or a text editor that handles regex.
The browser tool approach is faster for anyone who does not already have Python set up or who needs to convert one file without writing and running a script. Drop the file, click convert, download the CSV. That is the whole workflow.
But this comparison is worth reading even if you do code — the one-liner approaches have a real limitation that the browser tool solves automatically.
The sed One-Liner: Fast, But It Breaks on Fields with Commas
The most-cited shell approach is a sed substitution:
sed 's/ /,/g' data.tsv > data.csv
This replaces every tab with a comma. It works perfectly when your data contains no commas inside field values. The moment a field contains a comma — a name like "Smith, John," an address like "123 Main St, Suite 4," or a description with a list — you get malformed CSV. That comma inside the field now looks like a delimiter to any CSV parser.
Correct CSV requires quoting: any field containing a comma, newline, or double quote must be wrapped in "double quotes". The sed one-liner does not add quotes. The result is a file that fails CSV validation and causes import errors.
The browser converter handles this correctly — it applies RFC 4180 quoting automatically, wrapping any field that contains a comma in double quotes before writing the CSV.
Python Does It Correctly — But Requires Setup
Python's csv module handles quoting correctly:
import csv
with open('data.tsv', 'r') as infile, open('data.csv', 'w', newline='') as outfile:
reader = csv.reader(infile, delimiter='\t')
writer = csv.writer(outfile)
writer.writerows(reader)
This is the right way to do it programmatically. The csv module applies proper quoting, handles newlines within fields, and produces standard RFC 4180 output.
The friction: you need Python installed, you need to know where to save the script, and you need to run it from a terminal. On Windows, where Python is not installed by default, this means an installer download first. For a one-off conversion, that overhead is real.
If you regularly convert TSV files as part of a data pipeline, the Python script is the right tool. If you have a file right now and want it converted in the next 30 seconds, the browser tool is faster. The choice is workflow-dependent, not a judgment on either approach.
Sell Custom Apparel — We Handle Printing & Free ShippingNotepad++ Find and Replace — Works for Simple Files
Notepad++ can convert TSV to CSV using regex find-and-replace:
- Open the .tsv file in Notepad++
- Press Ctrl+H to open Find and Replace
- Check "Regular expression" mode
- Find:
\t - Replace with:
, - Click Replace All
Like the sed approach, this does a literal tab-to-comma swap. It does not add CSV quoting around fields that contain commas. If your data is clean — numbers, simple text, no commas inside fields — Notepad++ works fine. For anything more complex, you get the same malformed output as the sed one-liner.
Notepad++ also requires a Windows install. It is not available on Mac or Linux by default, which means this approach is platform-specific.
The Browser Tool: No Setup, Correct RFC 4180 Output
The TSV to CSV converter on WildandFree Tools processes your file in the browser — no upload, no server, no install. It applies correct RFC 4180 CSV formatting: fields containing commas, newlines, or double quotes are automatically wrapped in double quotes, and double quotes within those fields are properly escaped.
The workflow:
- Open the converter in any browser (Chrome, Safari, Firefox, Edge — on any OS)
- Drop your .tsv file into the upload area, or paste tab-separated data from the clipboard
- Click "Convert to CSV"
- Copy the output or click "Download CSV"
The entire conversion happens locally in your browser. Your data never leaves your device — useful for confidential business data, HR records, or anything you would not want uploaded to a third-party server.
If you find yourself regularly needing this conversion, you might also want to bookmark the guide on opening TSV files directly in Excel and Google Sheets — sometimes converting is not necessary if you just need to view the data.
Method Comparison — Which One to Use
| Method | Handles Commas in Fields | Platform | Setup Required |
|---|---|---|---|
| sed one-liner | No — produces malformed CSV | Mac/Linux | None (built-in) |
| Python csv module | Yes — correct RFC 4180 | Any | Python install |
| Notepad++ regex | No — same issue as sed | Windows only | Notepad++ install |
| Browser tool | Yes — correct RFC 4180 | Any browser | None |
For one-time or occasional conversions, the browser tool is the fastest path to a correctly formatted CSV. For automated pipelines processing thousands of files, the Python approach scales better. For quick data exploration where quoting issues do not matter, sed or Notepad++ is fine.
Convert TSV to CSV in Your Browser — No Python Needed
RFC 4180 compliant output with proper quoting. Drop a .tsv file or paste data. Runs locally — nothing uploaded.
Convert TSV to CSV FreeFrequently Asked Questions
Does the browser TSV converter handle quoted fields?
Yes. It applies RFC 4180 CSV formatting: any field containing a comma, newline, or double quote is automatically wrapped in double quotes. Double quotes within those fields are escaped by doubling them. This produces valid CSV that any spreadsheet app, database, or CSV parser will read correctly.
Can I convert TSV to CSV on a Mac without the terminal?
Yes. Open the browser converter in Safari or Chrome, drop your .tsv file, and download the CSV. No terminal, no Python install, no Homebrew required. The conversion runs in the browser tab.
What's wrong with using sed to convert TSV to CSV?
The sed approach (sed 's/\t/,/g') replaces every tab with a comma but does not add the CSV quoting required for fields that contain commas. If any field value contains a comma — an address, a description, a name with a suffix — the resulting CSV is malformed and will split incorrectly when imported.
Is there a command-line tool that converts TSV to CSV correctly?
Python's csv module does it correctly. Using Python, open the TSV file with csv.reader using delimiter="\t" and write it back with csv.writer, which applies proper RFC 4180 quoting automatically. For a no-code option, the browser converter produces the same correct output without the scripting.

