URL encode / decode
Turn spaces, accented letters and symbols into a URL-safe form (e.g. “é” → “%C3%A9”) or decode such an address back.
- Protocol
- Domain
- Port
- Path
- Anchor (#)
| Parameter | Value |
|---|
Everything happens in your browser - nothing you type here is sent to any server.
How it works
Why encode addresses
A URL can only contain some characters. Spaces, accented letters and symbols like & or = must be written as “%” and a byte code - otherwise the browser or server reads the address wrong. This matters most for parameter values, such as a search phrase in ?q=.
A value or a whole address
When encoding a parameter value, every special character is replaced, including / ? & = (like encodeURIComponent in JavaScript). When encoding a whole address those characters stay, as they mark its structure (like encodeURI). When decoding, “+” usually means a space - that's how forms write it.
Frequently asked questions
Why is a space sometimes %20 and sometimes +?
In the path of an address a space is always %20. In parameters sent from a form it's written as +. Both are correct in their place.
Are accented letters in addresses fine?
Browsers display them nicely but send them encoded. To be safe, use plain letters in page addresses (e.g. “cafe” rather than “café”).
What does a decoding error mean?
That the text has a % without two hex digits after it, or a code that doesn't form a valid UTF-8 character.
More tools
- Website checker
- Google search preview
- UTM link builder
- QR code generator
- Character counter
- Email signature generator
- Image compressor
- Favicon generator
- Colour contrast checker
- Text compare
- JSON formatter
- Base64 encode and decode
- JWT decoder
- Timestamp converter
- UUID generator
- Hash generator (SHA-256, MD5)
- Regex tester
- Cron expressions