Swaps tabs for commas, quoting any field that contains a comma, a quote or a newline so the result parses correctly everywhere. Paste straight from a spreadsheet — clipboard data from Excel and Google Sheets is already tab-separated.
This is where quoting starts to matter
Lovelace, Ada was unproblematic with tabs and now needs quotes. That happens automatically. A field containing a double quote gets its quotes doubled, which is the CSV escaping convention.A tab inside a field is why this is not find-and-replace
, some strip the character, some emit a broken row and move on. Fields are read as literal text and any tab already inside one is treated as a separator, because guessing would silently reshape your data. If a row comes out with more columns than the header, that is what happened, and it is worth fixing in the source rather than here.Which quoting convention comes out
Questions
- I pasted from Excel and it worked — why?
- Because the clipboard format for spreadsheet cells is tab-separated text. Copying a range and pasting it here is a supported flow.
- Will fields containing commas break the output?
- No. Any field containing a comma, a double quote or a newline is wrapped in quotes, and embedded quotes are doubled — the standard CSV escaping that every parser understands.
- My file uses spaces to line the columns up, not tabs.
- That is fixed-width text rather than TSV, and this tool will read the whole line as one field. Replace the runs of spaces with tabs first, or use a fixed-width parser.
- Is my data uploaded anywhere?
- No. The conversion runs as JavaScript inside this tab. Open your browser's Network panel and convert something — you will see no request carrying your data, because there is no server to send it to. You can also turn your Wi-Fi off and convert anyway.