TSV to Base64 Converter

Encode tab separated rows as Base64, optionally retabbing comma separated input on the way.

TSV
Base64
Runs locally in your browser

About the TSV to Base64 Converter

Tab separated values travel badly through the places developers usually paste things. A chat client eats the tabs, a YAML file turns them into an indentation error, and a JSON string needs every one of them escaped. Encoding the block as Base64 sidesteps all of that: the tabs become ordinary alphabet characters and come back intact at the other end.

If what you have is comma or semicolon separated, switch the input mode and the rows are parsed with proper quote handling and rewritten with tabs before encoding. Any tab that was hiding inside a quoted field becomes a space so it cannot invent a new column. The trim option strips the padding spaces that spreadsheet exports leave around values, which keeps the payload smaller and the parsing on the other side predictable.

The data URI option produces a data:text/tab-separated-values address, the registered media type for this format, which some import endpoints check before accepting a payload. The URL-safe alphabet and the 64 or 76 character wrap widths cover tokens and MIME style block layouts respectively.

The status line reports the rows and columns actually encoded, so a surprising column count tells you the retab step found something unexpected. Decode with Base64 to TSV, or restructure the table first with TSV to CSV.

How to use

  1. Paste your rows, tab separated, or switch Input is to the comma separated mode.
  2. Tick Trim spaces if the export padded its values.
  3. Confirm the column count in the status line.
  4. Copy the Base64 or the data URI.

Common questions

My tabs vanished when I pasted. What happened?
Some editors convert tabs to spaces on paste. Use the comma separated input mode instead, or paste into a plain text field first.
What happens to a tab inside a quoted CSV field?
It becomes a space during the retab step, so it cannot be mistaken for a column boundary later.
Which media type should I declare?
The registered type is text/tab-separated-values, which the data URI option uses.
Does encoding preserve empty cells?
Yes. Two adjacent tabs stay adjacent, so an empty cell survives the round trip.