URL Encode / Decode
Paste text or an encoded string and get the other form. Choose whether to encode a single value or a whole URL.
Embed this tool
Paste this into your page — the widget loads noindexed and links back here.
Reserved vs unreserved characters
The URL spec defines unreserved characters that never need encoding — A–Z a–z 0–9 - _ . ~ — and reserved characters that carry structural meaning:: / ? # [ ] @ ! $ & ' ( ) * + , ; =. Everything else (spaces, most punctuation, all non-ASCII) is encoded as one or more %HH byte values.
Component vs full URL
| Input | Component mode | Full-URL mode |
|---|---|---|
a b&c=d | a%20b%26c%3Dd | a%20b&c=d |
https://x.com/p q | https%3A%2F%2Fx.com%2Fp%20q | https://x.com/p%20q |
Use component mode for a value you are dropping into a query string or a single path segment; use full-URL mode for an entire address that only needs its spaces and Unicode cleaned up.
Related
For encoding binary data as text rather than escaping URL characters, see Base64 encode / decode. For turning a title into a URL slug, the case converter's kebab-case output is a good start.
Related tools
Frequently asked questions
What is URL encoding?
What is the difference between the two modes?
Why does a space sometimes become + instead of %20?
Do I need to encode non-English characters?
When should I encode?
Should I double-encode?
Is this the same as HTML entity encoding?
Last reviewed: September 2026. Figures and formulas are checked against their published sources; see the site's data notes.