URL Encoder & Decoder
Percent-encode text for a link, or turn an unreadable encoded URL back into something you can read.
Scope
Escapes : / ? & = too — use this for one query value.
What this tool does
URLs may only contain a limited set of characters. Anything else — a space, an ampersand, an accent, a Hindi character — has to be written as a percent sign followed by its byte value. That is why a link to a search for "annual report 2026" arrives full of %20.
This converts in both directions, and offers two scopes because they are genuinely different jobs. Encoding a single value escapes the separators : / ? & = so they cannot be mistaken for URL structure. Encoding a whole address leaves those separators intact so the URL still works.
When you might need it
- Building a link with a value in it
- A search term, a filename or an email address going into a query parameter has to be encoded, or the first space or ampersand breaks the link.
- A tracking URL is unreadable
- Campaign links accumulate encoded parameters. Decoding shows what is actually being passed.
- A link keeps breaking at the same point
- Usually an unencoded & or # is ending the parameter early. Encoding the value fixes it.
- Reading a redirect chain
- Sign-in and payment flows nest an entire return URL inside a parameter, encoded. Decoding untangles it.
Common workplace uses
- Preparing a marketing link
- Encode campaign values so a UTM parameter containing a space or an ampersand does not truncate the URL.
- Debugging a failing integration
- Decode the callback URL a provider is sending to see exactly which parameters arrived.
- Pre-filling a form link
- Query-string values that contain punctuation need encoding before the link is shared.
- Documenting an API call
- Decode an example request so the parameters can be read in a ticket or runbook.
How to use it
Choose a direction
Encode makes text URL-safe. Decode turns percent-encoding back into readable text.
Choose a scope
Single value is right for one parameter — it escapes : / ? & = as well. Whole URL preserves them so an entire address stays functional.
Paste and run
The result appears below with a copy button.
Check the breakdown
When the result is a complete URL, the parts are listed underneath — protocol, host, path, and every query parameter as a separate row.
Practical tips
- Encode the value, not the whole URL
- Running a complete address through single-value encoding escapes its own :// and ? and produces a string that is no longer a link. Match the scope to the job.
- A space can be %20 or +
- Both appear in the wild. %20 is correct everywhere; + means a space only inside a query string. This tool produces %20, which is always safe.
- Encoding twice is a real bug
- If you see %2520, a value was encoded, then the whole URL was encoded again. %25 is an encoded percent sign. Decode twice to recover it.
- Never put credentials or personal data in a URL
- Query strings are stored in browser history, server logs and analytics. Encoding makes them transportable, not private.
- A bare % is invalid
- A percent sign must be followed by two hex digits. A literal percent has to be written %25 — which is why "100%" alone fails to decode.
Common questions
Is my data uploaded?
What is the difference between the two scopes?
Why does my decode fail with an error about %?
Why do I see %2520 in a URL?
Does it handle non-English text?
What is the URL breakdown for?
Related workflows
Untangling a redirect URL
Sign-in and payment flows nest a return address inside a parameter, often more than once.
- 🔗 URL EncoderDecode the parameter to reveal the inner URL
- Decode again if neededIf you still see %25, the value was encoded twice
- { } JSON FormatterIf a parameter holds JSON, format it to read the contents