Plain URL / Text
Encoded URL
Input: 0 chars
Output: 0 chars
Chars encoded:
Query String Parser
Enter a URL with query parameters above

Common URL Encoding Reference

space%20space
!%21exclamation
#%23hash / anchor
$%24dollar
&%26ampersand
+%2Bplus sign
/%2Fforward slash
:%3Acolon
=%3Dequals
?%3Fquestion mark
@%40at sign
[%5Bleft bracket
]%5Dright bracket
%%25percent sign
"%22double quote

About This Tool

This free URL encoder and decoder converts text and full URLs to and from percent-encoded format in real time, plus includes a built-in query string parser. URL encoding (percent-encoding) replaces characters that aren't allowed in a URL — spaces, ampersands, non-ASCII characters — with a % followed by their hex code, so the URL remains valid and unambiguous.

Everything updates live as you type, and query parameters are parsed and decoded automatically. No data ever leaves your browser.

Frequently Asked Questions

What is URL encoding?+
URL encoding, also called percent-encoding, converts characters that have special meaning in a URL (or aren't valid ASCII) into a % followed by their two-digit hexadecimal code — for example, a space becomes %20. This keeps URLs unambiguous when they contain reserved characters like &, ?, or #.
What's the difference between encodeURIComponent and encodeURI?+
encodeURIComponent encodes almost every special character, including & ? = /, making it safe for encoding a single value (like a query parameter) that will be inserted into a URL. encodeURI leaves those reserved characters untouched because it's meant for encoding an entire URL that already has its structure in place. This tool uses encodeURIComponent-style encoding, matching the most common use case.
Why do spaces sometimes become %20 and other times a +?+
Both are valid in different contexts. %20 is the standard percent-encoding for a space anywhere in a URL. + is a legacy convention specific to the application/x-www-form-urlencoded format (used in query strings and form submissions) where it also means space. This tool uses %20, which is safe and unambiguous everywhere.
Which characters actually need to be encoded in a URL?+
Reserved characters with special meaning (: / ? # [ ] @ ! $ & ' ( ) * + , ; =), spaces, and any non-ASCII character (like accented letters or emoji) need encoding when used as part of a value rather than as URL structure. Letters, digits, and - _ . ~ are always safe and never encoded.
Why isn't my query string parsing correctly?+
The parser looks for a ? in the URL and reads everything after it as key=value pairs joined by &. If your input doesn't include the ? and full domain, paste the complete URL, or make sure each parameter follows the key=value pattern — malformed pairs (like a stray & with no key) will be skipped.
Is URL encoding the same as Base64 encoding?+
No — they solve different problems. URL encoding escapes specific unsafe characters while leaving the rest of the text readable, and is reversible only for the characters it touches. Base64 re-encodes the entire input into a different character set. A URL and a Base64 string that represents the same data look completely different.