URL Encoder and Decoder
Decode percent-encoded URLs, parse the query string, flag tracking parameters and pull out nested redirects.
This URL encoder and decoder takes a messy link and turns the percent-encoded junk back into readable text, then pulls the query string apart so you can see what each parameter actually holds. Paste a URL to decode it, encode a single component or a full URL, and watch the tool flag the tracking fields and dig out any redirect target buried a layer or two deep inside another parameter. It hands you back a clean copy with the campaign cruft stripped, plus a parameter CSV you can paste straight into a ticket. The plus column is there because form encoding turns a plus into a space while a normal path does not, which trips people up more than you would think. It is mostly for the moment an API call or an analytics link breaks and you cannot tell why. Everything runs in your browser, so nothing you paste ever leaves the page.
100% in your browser. Nothing you type ever leaves this page.
URL encoding, query parser and redirect debugger
Paste a messy link. This thing decodes the percent-encoded junk, pulls apart the query string, flags the tracking fields, and digs out any redirect URL buried inside another parameter. It will also hand you back a clean copy with the campaign cruft stripped. Honestly it is mostly for the moment an API call or an analytics link breaks and you cannot tell why.
URL processing runs in your browser. This tool does not open the destination; it inspects the string and the parsed URL structure.
What this URL encoder and decoder does
A URL encoder and decoder takes a messy link, turns the percent-encoded characters back into readable text, and pulls the query string apart so you can actually see what each parameter holds. A URL leans on a handful of characters to mean something structural. The question mark kicks off the query string, ampersands split one parameter from the next, equals signs glue a value to its key, slashes carve up the path, and the hash fragment never even leaves the browser. When a value contains one of those characters on purpose, a space, a stray symbol, or another whole URL stuffed inside it, percent encoding is what keeps the parser from reading that character as structure. This tool decodes the gibberish, encodes a component or a full URL, marks which keys are tracking, and yanks out redirect targets hiding a layer or two deep.
How to choose the right encoding mode
- Decode URL turns the gibberish back into readable query values and surfaces nested destinations.
- Encode component is your pick for a single query value. A search term, a callback URL, that kind of thing.
- Encode full URL leaves the separators alone and only escapes the unsafe stuff.
- Parameters pulls the real application values away from the tracking noise.
- Clean URL drops the campaign and click IDs so you can debug without the clutter.
Reach for encodeURIComponent behavior when you have one value going inside a query parameter. Full URL encoding is the other case: you want the URL's shape to stay readable while the sketchy characters inside it get escaped. And if a parameter is hiding an encoded URL of its own, bump the decode depth up and go look at the nested URL tab.
Useful checks before clicking or sharing a link
Decode first, then look at the hostname. The visible text lies all the time. A long link can tuck a redirect parameter inside itself that fires you off somewhere completely different, and you would never know from a glance. UTMs themselves are harmless, mostly, but they are pure noise when you are trying to debug a canonical URL or an API signature. Then there is double encoding, where a callback got encoded once for its parameter and then again for the redirect wrapping it. That is sometimes exactly right. The problem is when nobody meant for it to happen. Everything here runs locally in your browser, so the links you paste never leave your machine.
Frequently asked questions
Should I encode a whole URL or only a component?
Going inside another URL parameter? Encode the component. The whole-URL option only makes sense when that URL is itself the final destination and you want its structural characters to stay readable. Mix those two up and you will spend an afternoon staring at a double-encoded mess wondering what went wrong.
Why does plus sometimes become a space?
Blame the form encoding. HTML forms have used a plus to mean a space since forever. Drop that same plus somewhere else in a URL, though, and it is just a plus sign that means plus. You can flip between both readings here and watch which one your link actually wants.
Can this check whether a redirect is safe?
Sort of, not really. It will surface a nested destination and point out structure that looks off, but it never opens the page and it will not promise you anything is safe. For the real call, run the link through a proper redirect checker and confirm the domain with your own eyes.
What is the difference between encodeURI and encodeURIComponent?
encodeURI plays nice with a full URL and leaves the structural characters alone so the link still works. encodeURIComponent does not care, it escapes those too. That second one is what you want for a lone query-string value, because there is no structure left to protect.