Boneyard Tools

URL Decoder

Paste a URL-encoded string to decode it back to plain text. Percent-escapes like %20 and %26 become spaces and ampersands, with optional plus-as-space handling for form data. Everything runs in your browser.

How to decode a URL

  1. Paste the percent-encoded text into the input box.
  2. Choose whether '+' should become a space (on for form data).
  3. Copy the decoded result.

Examples

Decode a query string

q%3Dhello+world%26page%3D2
q=hello world&page=2

Frequently asked questions

How does URL decoding work?

URL encoding replaces unsafe characters with a percent sign and two hex digits, like %20 for a space. Decoding reverses that, reading each %XX escape back into the original character. This tool uses the browser's decodeURIComponent, so multi-byte UTF-8 sequences decode correctly.

What is the difference between + and %20?

Both can mean a space. In query strings and form data, a literal '+' is treated as a space, while %20 is the percent-escape for a space. Keep the plus-as-space option on for form data, or turn it off when a real plus sign matters, such as in a phone number or math expression.

What happens if decoding fails?

If the text contains a broken percent-escape, like %E0%A4%A with a missing digit or a lone % sign, the tool shows a clear error instead of guessing. Check that every % is followed by two valid hex digits.

How do I handle double-encoded URLs?

Double encoding happens when an already-encoded string is encoded again, so a space becomes %2520 instead of %20. Decode once to remove the outer layer, then paste the result back and decode again to fully unwrap it.

Does this support emoji and non-Latin text?

Yes. The decoder handles the full UTF-8 range, so accented letters, CJK characters and emoji round-trip exactly when they were encoded with encodeURIComponent.

Is my data private?

Yes. Decoding happens entirely in your browser and nothing is sent to a server.

Related tools