About the URL Encoder & Decoder
URLs can only contain a limited set of characters, so spaces, non-English letters and symbols like & or # must be percent-encoded. This URL encoder and decoder converts text both ways and lets you choose between encoding a full URL (like JavaScript's encodeURI, which keeps characters such as /, ? and & intact) or a single component (like encodeURIComponent, which encodes them too).
It also breaks a URL into protocol, host, path, query parameters and fragment, which is handy for checking UTM tags, debugging redirects with encoded characters or reading long tracking URLs. Decoding makes Hindi, Tamil or other non-Latin URLs readable in reports. Everything is processed in your browser.
How to use it
- Paste a URL or piece of text.
- Choose encode or decode, and full URL or component mode.
- Copy the result.
- Use the parser to inspect host, path and query parameters.
Frequently asked questions
What is the difference between encodeURI and encodeURIComponent?
encodeURI is for a complete URL and leaves characters with special meaning in URLs, such as :, /, ?, & and #, unencoded. encodeURIComponent is for a single value, such as a query parameter, and encodes those characters too so they are treated as data.
Should URLs with non-English characters be encoded?
Browsers display them readably but send them percent-encoded. Google can handle both forms. In sitemaps, hreflang and canonical tags, use correctly encoded URLs consistently so the same page is not referenced in two different forms. Pick one form and use it everywhere.
Why do I see %20 or + in URLs?
Both can represent a space. %20 is the standard percent-encoding, while + is used for spaces in form-style query strings. For readable, consistent URLs, use hyphens instead of spaces in page slugs. Google recommends hyphens to separate words in URLs, and they are easier for people to read, share and type than encoded spaces.