Skip to content
Utilerio

URL Encoder / Decoder

Percent-encode or decode URLs and query string components.

Output

The result will appear here.

Was this tool useful?

About this tool

URLs may only contain a limited set of characters. Everything else — spaces, Turkish letters, ampersands inside a value — has to be percent-encoded, which replaces the character with % followed by its byte value in hexadecimal.

The distinction that catches people out is scope. Encoding a whole URL must leave the structural characters alone, or you destroy the URL. Encoding a single query value must escape them, or a stray & silently splits your value into two parameters.

How to use it

  1. Choose encode or decode.
  2. Pick the scope. “Component” escapes / ? & = # as well and is what you want for one parameter value. “Full URL” keeps the structure intact.
  3. Paste the value. The result updates as you type.
  4. When the input parses as a URL, the breakdown underneath lists the scheme, host, path and every query parameter separately.

Examples

Encoding a query value

Component scope escapes the space and the ampersand, so the value survives as one parameter.

labels & tags
labels%20%26%20tags

Encoding a whole URL

Full-URL scope escapes the space but leaves ?, = and / alone.

https://example.com/search?q=zpl viewer
https://example.com/search?q=zpl%20viewer

Common problems

Decoding fails with a malformed-sequence error.
There is a % that is not followed by two hexadecimal digits — often a literal percent sign in the original text. It should have been encoded as %25.
Spaces come back as plus signs.
Form submissions encode spaces as +, not %20. Turn on “Treat + as a space when decoding” for those strings.
A parameter value is cut short at an ampersand.
The value was encoded with full-URL scope, so the & inside it stayed literal and started a new parameter. Use component scope for values.

Frequently asked questions