HandyHex.Handy tools in every shape.

About the URL Encoder / Decoder

The URL Encoder / Decoder converts special characters into percent codes so they can be used safely inside a web address, and converts them back. A space becomes %20, and an ampersand becomes %26.

It uses the standard JavaScript encodeURIComponent and decodeURIComponent functions, so it is meant for query values and path pieces, not for a whole URL. Encoding a full address would also encode its colons and slashes.

How to use it

  1. Paste text into Input.
  2. Press Encode or Decode.
  3. Copy the Output.

When to use

Building a link with a search term that contains spaces or symbols.

Reading a long encoded link from an email or log.

If decode reports an error, the text contains a broken % sequence.

Real-world examples

Search links. A query like cats & dogs becomes cats%20%26%20dogs so the ampersand is not read as a new parameter.

Reading logs. Decode a long percent-encoded address to see what it says.

Redirect parameters. Encode a full URL before placing it inside another URL.

Common mistakes

Encoding a whole address turns https:// into https%3A%2F%2F, which breaks it. Encode only the value. Double-encoding (encoding something already encoded) produces %2520. Decoding text with a stray percent sign fails with an error.

How it works

Every character outside letters, digits and a few safe symbols is converted to its UTF-8 bytes, and each byte is written as a percent sign followed by two hexadecimal digits. So a space (byte 32) is %20, and 'é' becomes %C3%A9.

Frequently asked questions

Can I encode a whole URL?

Encode only the parts that need it, such as query values.

Why %20 and not +?

This tool uses percent encoding for spaces.

Is it private?

Yes.

Related tools

Guides