URLs can only contain a limited set of characters. Spaces, accents, ampersands, question marks and non-Latin letters must be converted to percent-encoding (%20, %C3%A9, %26…) before they can travel safely in a query string. Get it wrong and your link breaks, your API call returns errors, or your analytics parameters get mangled.
This tool encodes text for safe use in URLs and decodes percent-encoded strings back to readable text. It is indispensable when you are building query strings by hand, debugging webhooks, reading server logs, or untangling a deeply nested redirect URL.
How to Use This Tool
- Paste the text or URL fragment to convert.
- Click Encode to percent-encode it, or Decode to make an encoded string readable.
- Copy the result into your link, API call, or code.
- Decode twice if a URL was encoded twice (a common bug producing %2520).
Frequently Asked Questions
When do I need to URL-encode text?
Whenever user-provided or special-character text goes into a URL: search queries, redirect targets, UTM parameters, or any query-string value containing spaces, &, =, ?, # or non-ASCII characters.
Why does a space become %20 sometimes and + other times?
Both are valid in different contexts. %20 is the standard percent-encoding used in URL paths; + is a legacy form-encoding convention used in query strings. Modern code should prefer %20, but decoders accept both.
What does double encoding look like?
If already-encoded text is encoded again, % itself becomes %25 — so a space turns into %2520. If you see %25 sequences in your URLs, something in your pipeline is encoding twice; decode twice here to recover the original.