Intro
A URL encoder/decoder converts text into a safe format for use inside URLs and turns encoded text back into readable form. URL encoding, also called percent encoding, replaces reserved or unsafe characters with sequences like %20, %2F, or %3F. This is important when working with query parameters, form values, file names, redirects, tracking links, and API requests.
Some characters have special meaning in URLs. For example, ? starts a query string, & separates parameters, and # introduces a fragment. If those characters appear inside actual data, they must be encoded or the URL may break. Spaces, non-Latin characters, symbols, and punctuation can also cause issues if they are not properly encoded.
A decoder is just as useful. When you see a string like hello%20world%21, decoding helps you confirm the original value immediately. This is helpful in debugging, link inspection, analytics, and backend development.
How to Use
1. Paste the text or URL you want to encode or decode. 2. Choose Encode to convert special characters into percent-encoded form. 3. Choose Decode to restore readable text. 4. Copy the result and use it in a browser, API call, script, or application.
Examples
- Text:
hello world
Encoded: hello%20world
- Text:
email=test@example.com
Encoded value can safely be used as a parameter
- Encoded input:
q=red%20shoes%20%26%20bags
Decoded meaning: q=red shoes & bags
Tips
- Encode only the part that needs encoding, such as a parameter value.
- Do not encode an entire URL blindly if parts are already valid.
- Watch for double encoding like
%2520when%20was expected. - Use decoding to inspect copied tracking links and API payloads.
FAQ
What is percent encoding?
It replaces reserved characters with % followed by hexadecimal byte values.
Why are spaces sometimes %20 and sometimes +?
Both may appear depending on the context, especially in form encoding.
Can I decode any encoded URL text?
Usually yes, as long as it is valid encoded input.
Why did my link stop working?
A reserved character may have been left unencoded or the text may have been encoded twice.