URL Encoder/Decoder
Encode text so it is safe in a URL, or decode %-escaped text and URLs back to readable text. Choose between encoding a single value and a whole URL, and between %20 and + for spaces. When you decode a URL, its query parameters are listed one by one. Everything runs locally in your browser; nothing is uploaded.
Runs locally in your browserHow to use URL Encoder/Decoder
- Choose a mode. Pick Encode or Decode, and whether the input is one value or a whole URL.
- Paste your text. Paste the text or URL into the input box.
- Convert. Click Encode or Decode, then copy the result. Decoded URLs also list their query parameters.
Example
Encoding a search phrase so it can go in a query string.
Text
Café & croissants: 50% off!
Options: Encode, one value, spaces as %20
Encoded
Caf%C3%A9%20%26%20croissants%3A%2050%25%20off%21
Decoding https://shop.example/search?q=caf%C3%A9+%26+croissants&page=2 lists q = café & croissants and page = 2.
Formats, limits and privacy
- Input
- Plain text
- Output
- Plain text
- Limits
- Encodes text as UTF-8 percent-escapes (RFC 3986).
- Query parameters are listed only when you decode a URL or query string.
- No fixed size limit; very large inputs depend on your device's memory.
- Privacy
- Everything happens in your browser. Your input is never uploaded to a server.
Troubleshooting
A link breaks after encoding
You encoded a whole URL as one value, which escapes the : / ? and & it needs. Choose "A whole URL", or encode only the parameter value.
+ signs stay in the decoded text
Tick "Spaces as +" when decoding form data. Elsewhere in a URL, + is a literal plus sign.
Text looks double-encoded, such as %2520
%25 is an escaped %, so the text was encoded twice. Decode it twice to get the original back.
Frequently asked questions
What is the difference between encoding "one value" and "a whole URL"?
One value escapes every character that has a meaning in URLs, such as / ? & = and #, so it is right for a single query value or path part. A whole URL keeps those characters so the address still works, and only escapes spaces and other unsafe characters.
Should spaces be %20 or +?
Both are common. %20 works everywhere in a URL. + means a space only in query strings sent by HTML forms (application/x-www-form-urlencoded). Tick "Spaces as +" when you are working with form data.
Why do I get an error when decoding?
Every % must be followed by two hex digits, and the escapes must form valid UTF-8 text. A literal percent sign must be written as %25.
Is my input uploaded?
No. Encoding and decoding run entirely in your browser.