tsvkit.org
TSV Toolkit
Sample data Say hi →

URL-encode a TSV

percent-encoding · optional strict mode for reserved characters

Percent-encode a TSV so it can travel inside a URL, a query string, or an application/x-www-form-urlencoded body. Tabs become %09 and newlines %0A, which is what makes the file survive a channel that would otherwise treat them as structure. Decode with URL decode.

tsv → url
Drop a .tsv file here, or
ready

How to use

  1. Paste or drop the file.
  2. Tick strict to also encode the reserved characters !'()* — needed for RFC 3986 conformance and for some stricter servers.
  3. Copy or download.

Standard versus strict

The default follows JavaScript's encodeURIComponent, which leaves A–Z a–z 0–9 - _ . ! ~ * ' ( ) unencoded. Strict mode additionally encodes ! ' ( ) *, matching RFC 3986's definition of unreserved characters. Most servers accept either; strict is the safer choice when a signature or a hash is computed over the encoded string, because both sides must agree exactly on what was encoded.

Note that a space becomes %20, not +. The plus-sign convention belongs to form encoding specifically, and mixing the two is a common source of values arriving with stray plus signs.

Size is the practical limit

Percent-encoding roughly triples the length of a tab-heavy file, and browsers and servers cap URL length — 2,000 characters is the safe ceiling, 8,000 is where most servers stop. So this works for a handful of rows in a query string and not for a file. For anything larger, Base64 is more compact, or send the data in a POST body where the limits are far higher.

FAQ

Should spaces be %20 or +?

%20 in a URL path or query, + only in form-encoded bodies. This page always writes %20, which is valid in both contexts for most parsers.

Does it encode the whole file or each cell?

The whole text as one string. For encoding a single column's values, find and replace won't do it — you'd need a script.

Is UTF-8 handled?

Yes. Non-ASCII characters are encoded as their UTF-8 bytes, so ü becomes %C3%BC — the correct form for a URL.

What about the reverse?

URL decode, which reverses both standard and strict output.

Privacy

100% client-side. No upload. See the privacy policy.