Encode and decode URLs

Percent-encode a query value or a whole address, and decode escaped URLs back to readable text. Component and full-address encoding stay separate choices.

URL encoder and decoder in three steps

URLs may only contain a restricted set of characters. Anything outside it, including spaces, non-English letters, and the characters that give a URL its structure, has to be written as a percent sign followed by two hexadecimal digits. That substitution is what percent-encoding means.

The choice that decides whether the result works is which of two jobs you are doing. Escaping a single value, such as a search term going into a query parameter, has to escape ampersand and equals, because leaving them alone lets one value pretend to be several parameters. Escaping a complete address must not touch those same characters, or the slashes and colon that hold the address together are destroyed. Picking the wrong one is the usual reason an encoded link stops resolving, so the choice is presented directly rather than hidden.

Decoding reverses each of them. A plus sign stays a plus sign unless you choose Form data, because outside form data it is an ordinary character. A string that contains a bare percent sign, such as a copied line with a discount figure in it, is not valid percent-encoding, and the tool explains that rather than failing without a reason.

URLs pasted into a converter regularly carry session identifiers, signed download links, or internal hostnames. Conversion happens in the browser for the same reason the rest of the site works that way: the address never needs to reach anyone else for the escaping to be worked out.

  1. 1

    Paste a URL or a single value

  2. 2

    Choose whether it is one value or a whole address

  3. 3

    Copy the encoded or decoded result

Frequently asked questions

What is the difference between the escaping modes?

Encoding one value escapes the characters that separate parameters, such as ampersand and equals. Encoding a whole address leaves the structural characters like the slashes and colon intact. Form data works like one value, except that a space is written as a plus sign.

Why did my link break when I encoded it?

Most likely a whole address was escaped as if it were a single value, which turns its slashes and colon into escape sequences. Use the whole address mode for a full URL.

What does a space become?

Percent-encoding produces %20. Form submissions and many search addresses use a plus sign instead, a different convention that applies only inside a query string. Choose Form data to encode a space as a plus sign, or to decode each plus sign back to a space.

Is the URL uploaded?

No. Conversion runs in the page, so URLs holding session tokens or internal hostnames are not transmitted.

Related guides

Why QR codes stop workingMost free QR generators encode a link to their own domain and redirect. Learn why printed codes die, and how to make one that outlives the service that made it.