toolery

URL encoder/decoder

Encode text into a URL-safe format or decode a percent-encoded URL back to readable text.

How it works

A URL may only contain a restricted set of ASCII characters, so anything else has to be carried as an escape: the character is encoded to UTF-8 bytes, and each byte is written as % followed by two hex digits. A space becomes %20, and a character outside ASCII becomes several escapes in a row because it takes several bytes — ° is %C2%B0. The distinction that matters is what you are encoding. Encoding a single value for a query string must escape &, =, and ?, or the value will be read as the end of that parameter and the start of the next one. Encoding a whole URL must leave those alone, or the address stops being an address. The checkbox above switches between the two.

Used this in a paper or lesson?