Free URL Encoder Decoder Online - Percent Encoding Tool
480 usesCommon URL Encoding Reference
| Character | Encoded | Description |
|---|---|---|
| Space | %20 / + | Most common URL escape character |
| ! | %21 | Exclamation mark |
| # | %23 | Hash, URL anchor symbol |
| % | %25 | Percent sign (must be escaped) |
| & | %26 | URL parameter separator |
| = | %3D | URL parameter assignment |
| ? | %3F | Query string start |
| / | %2F | Path separator |
URL Encoding Facts
What is URL Encoding?
URL encoding converts special characters to %XX format, ensuring URLs transmit safely across the web without being misinterpreted.
Unicode in URLs
Non-ASCII characters (accented letters, CJK, emoji) are converted to UTF-8 bytes then percent-encoded, e.g. ä becomes %C3%A4.
encodeURIComponent
Encodes all special characters including : / ? # — ideal for URL parameter values.
encodeURI
Preserves URL structure characters (://?#@) — use this for encoding a complete URL while keeping its structure intact.
URL-Safe Characters
Letters A-Z, a-z, digits 0-9, and -_.~ are URL-safe and never need encoding.
Space Encoding
Spaces can be encoded as %20 or + in URLs. %20 is standard for paths; + is used in form submissions. Modern practice prefers %20.
Frequently Asked Questions
My spreadsheet contains URLs with percent-encoded characters like %20 or %2F. How can I quickly decode them to make them readable for analysis?
This tool is perfect for cleaning up such data! Copy the percent-encoded URL (or a list of them) from your spreadsheet into the decoder. It will convert characters like `%20` back to spaces and `%2F` to slashes, making the URLs human-readable. This is crucial for verifying links, extracting specific parameters, or preparing data for reports without manual text editing.
How do I properly encode URL parameters when making a REST API request?
When building URLs for REST API calls, it's crucial to encode parameter values to prevent issues with special characters like spaces, ampersands, or slashes. These can break your request or lead to incorrect data interpretation. Use the `encodeURIComponent` mode of this tool for each parameter's value before appending it to the URL, ensuring your API requests are valid and reliable.
When building dynamic URLs from user input or database entries, how do I ensure special characters are correctly encoded?
For dynamic URLs, especially those constructed from user-submitted text or database queries, it's crucial to use `encodeURIComponent` for each path segment or query parameter value. This tool helps by converting spaces, ampersands, slashes, and other special characters into their safe percent-encoded forms. This prevents broken links, ensures correct parsing by browsers and servers, and maintains URL integrity, which is vital for SEO and user experience.
How can I quickly encode multiple separate URL query parameters or paths for a new website launch?
This tool is designed for efficiency! You can paste multiple distinct URL path segments or query parameter values (each on a new line) into the encoder. It will process each line independently, converting special characters into their correct percent-encoded format. This saves significant time when preparing numerous new URLs for sitemaps, internal links, or API calls, ensuring all links are valid and robust from day one of your launch.
Can I encode text using different character sets directly?
This tool focuses on URL encoding, not character set conversion. It assumes your input text is already in a standard set like UTF-8. If you have text in a different encoding, you'll need to convert it to UTF-8 first before using this encoder to ensure proper percent-encoding. For example, if you have a string with non-ASCII characters, make sure it's represented as UTF-8 bytes before feeding it here.
Why does encodeURI leave some characters like ? and = untouched?
encodeURI is meant for encoding whole URLs, not parameter values. It preserves characters with special meaning in URLs — like ?, #, /, and =. Use encodeURIComponent instead if you need those characters encoded. For example, encodeURI leaves ? alone, but encodeURIComponent turns it into %3F. Pick the right mode in this tool based on what part of the URL you're encoding.
Why does my encoded URL look different in the browser address bar versus what I typed?
Browsers often normalize URLs automatically. For example, typing a space in the address bar gets converted to %20, but some browsers display it as a space again. Our tool shows you the raw percent-encoded output, which is what actually gets sent over the network. Paste your browser's address into the decoder to see the real underlying characters. This mismatch catches many developers off guard.
Is there a difference between URL encoding and HTML entity encoding?
Yes, they're completely different systems. URL encoding turns spaces into %20, while HTML entity encoding uses or   for spaces. Mixing them up breaks links and displays raw codes on pages. Use this tool for URL encoding only. If you're debugging JSON API responses and see & instead of &, that's HTML encoding leaking in, not a URL problem.
Can I decode a URL that's been encoded twice by mistake?
Double-encoding happens when someone encodes an already percent-encoded string. You'll see stuff like %2520 instead of %20. Run it through the decoder once, check if the result still has percent signs, then decode again if needed. Three passes is almost never necessary. If you're debugging a payment gateway callback that looks garbled, this is usually the culprit.
Does URL encoding encrypt my data so it's safe to share?
No, not at all. URL encoding is just about formatting — it turns spaces into %20 and special characters into percent codes. Anyone can decode it instantly with this same tool. Think of it like wrapping a sandwich in clear plastic: it's neat but totally see-through. If you're sharing sensitive info like passwords or API keys in URLs, use real encryption (HTTPS covers transport) or hash them instead. Encoding alone offers zero privacy.
How to Use
- Select the encoding mode: encodeURIComponent (for parameters) or encodeURI (for full URLs)
- Enter or paste your URL/text in the input box
- Click Encode to percent-encode, or Decode to convert back
- Use Swap to exchange input and output for quick re-processing
- All processing happens locally in your browser