URL Encode / Decode
Convert text with spaces or non-ASCII to and from percent-encoding.
About this tool
Convert text containing spaces, symbols, or non-ASCII characters into percent-encoding (the %xx form) so it is safe to use in a URL, and decode it back to readable text. It uses the same method as encodeURIComponent and runs entirely in your browser; nothing you enter is sent anywhere.
Enter text and press Encode to convert it to the URL-safe form (a % followed by two hex digits). Press Decode to turn that form back into readable text.
It uses the same method as encodeURIComponent. Letters, digits, and a few symbols (- _ . ! ~ * ' ( )) are kept as-is; everything else becomes %xx. One non-ASCII character becomes several bytes in UTF-8, so it turns into several % groups.
When decoding, a plus sign is treated as a space, matching the common form-submission format. If a % is not followed by two valid hex digits, an error is shown.
Everything runs on your device; the text you enter is never sent anywhere.
FAQ
- What is URL encoding?
- It replaces characters that are not allowed in a URL (spaces, symbols, non-ASCII) with a % followed by two hex digits, so they can be safely included in links and parameters.
- Why does non-ASCII text turn into many % groups?
- Each non-ASCII character is several bytes in UTF-8, and each byte becomes a %xx group. It decodes back correctly.
- Are + and %20 both spaces?
- When decoding, both are commonly treated as a space. This tool turns + and %20 back into a space. When encoding, a space becomes %20.
Everything you enter is processed in your browser and never sent anywhere.