How to use the URL Encoder / Decoder
- Choose Encode or Decode.
- Paste your text or URL — the result updates instantly.
- For encoding, pick “Component” for a single query value or “Full URL” to keep the URL structure.
- Decoding a full URL also lists every query parameter, decoded.
Component or full URL?
| Component (encodeURIComponent) | Full URL (encodeURI) | |
|---|---|---|
| Use for | One query value or path segment | A whole URL that has spaces or non-ASCII characters |
/ ? & = # | Encoded | Kept |
a b&c | a%20b%26c | a%20b&c |
The classic bug is building ?q= + a search term with & in it: without component encoding, the & starts a new parameter and the rest of the search is lost.
Plus sign or %20?
HTML forms encode spaces in query strings as +; everywhere else in a URL a space is %20. When decoding, “Treat + as space” is on by default because most query strings you paste come from forms. Turn it off if a literal plus sign matters — for example in a phone number or a Base64 value.
Frequently asked questions
What is percent-encoding?
URLs may only contain a limited set of ASCII characters. Everything else is converted to UTF-8 bytes and written as % followed by two hex digits — so é becomes %C3%A9 and a space becomes %20.
Why do I get “malformed” when decoding?
A % sign must be followed by two hexadecimal digits that form valid UTF-8. A literal % in the text (like “50%”) must itself be encoded as %25.
Is anything sent to a server?
No, encoding and decoding run in your browser.