URL Decoder

Turn %20, %C3%A9 and friends back into readable text. Paste a full URL to see its parts and every query parameter, decoded.

Decoded locally in your browser — URLs are never sent anywhere

Options
Encode text →

How it works

Each %XX sequence is converted back to a byte. Runs of bytes are read as UTF-8, so %C3%A9 becomes “é”. If a sequence is malformed or the bytes aren’t valid UTF-8, you get the exact position instead of a generic error.

If the input is a complete http(s) or ftp URL, it’s also broken into protocol, host, port, path, fragment and every query parameter, each decoded. Repeated parameters (?tag=a&tag=b) are all listed.

Example

In the sample URL, q=caf%C3%A9%20%26%20braai decodes to q = café & braai. But ref=summer%252Fsale decodes only to summer%2Fsale: it was encoded twice. Turn on “Decode every layer” to get summer/sale and see both steps.

Form data such as name=Thandi+Nkosi needs “Treat + as a space” to become Thandi Nkosi.

Frequently asked questions

What does “decode every layer” do?

Some URLs are encoded more than once — %2520 is an encoded %20. With this option the decoder keeps decoding while percent sequences remain (up to five times) and shows each layer, so you can see what happened.

Should + become a space?

Only for form-encoded data (application/x-www-form-urlencoded), such as query strings submitted by HTML forms. In other parts of a URL, + is a literal plus sign. The option is off by default.

Why do I get an error?

A % that isn’t followed by two hex digits (for example “100%”), or bytes that don’t form valid UTF-8. The decoder tells you the position and can highlight it.

Is the URL I paste sent anywhere?

No. Decoding and parsing happen in your browser. That matters because URLs often carry session tokens, tracking IDs, emails and API keys.

Related tools

Percent-encode a query value, a whole URL or form data, line by line if you like, with double-encoding warnings.

FreeRuns in your browser

Build campaign-tracking URLs with UTM parameters so you can see which links bring visitors.

FreeRuns in your browser

Decode Base64 to text, preview images, detect file types and download the original file — with precise errors.

FreeRuns in your browser

Generate random v4 or time-ordered v7 UUIDs in bulk, in the format you need.

FreeRuns in your browser

Related guides