Why URLs break
Only letters, digits, and a few symbols are safe inside an address or query string. Characters like spaces, non-Latin text, &, =, ?, and # either carry special meaning or aren't allowed, so the browser sends them as %-prefixed codes (percent-encoding). Convert ahead of time here when you build a link or assemble an API URL by hand.
Encode vs decode
- Encode: turn text into a safe form.
hello world→hello%20world, non-Latin text → UTF-8 percent bytes. - Decode: restore the original. Useful when you meet a code like
%EA%B0%80in a log or address bar and want to know what it says.
Common mistakes
- Encoding the whole URL: that mangles the
:and/inhttps://. Encode only the value (parameter) part. - Double encoding: encoding an already-encoded string turns
%into%25. If it looks broken, try decoding once.
It uses the browser's encodeURIComponent / decodeURIComponent, and nothing is uploaded. For binary data (a different purpose), see the Base64 tool.