URL Encoder & Decoder
Encode or decode URLs, URL components and form-style query strings — instantly, in your browser.
What is URL encoding?
URLs can only contain a limited set of characters. URL encoding
(also called percent-encoding) replaces anything outside that
set — spaces, accented letters, symbols like &
or # — with a % followed by its byte
value, so the address can travel safely through browsers,
servers and apps without being misread or broken.
Which mode should I use?
-
URL encoding — for a complete address.
It leaves structural characters such as
: / ? # & =alone so the link still works, and only encodes things like spaces. -
Component encoding — for a single piece
of a URL, such as a search term or a parameter value.
It escapes nearly every non-alphanumeric character,
including
/and&, since those would otherwise be read as part of the URL's structure. -
Form-style encoding — the same as
component encoding, except spaces become
+instead of%20. This is the format browsers use when submitting HTML forms.
Frequently asked questions
What's the difference between URL and component encoding?
URL encoding assumes you're encoding a whole address, so
it keeps reserved characters like / and
: intact. Component encoding assumes you're
encoding just one part of a URL, so it escapes those
reserved characters too.
Why does a space become %20 in one mode and + in another?
%20 is the general-purpose encoding for a
space. The + sign comes from the
application/x-www-form-urlencoded format
used by HTML forms, which is why form-style encoding
uses it instead.
Does this tool send my text anywhere?
No. Everything runs locally in your browser using JavaScript's built-in encoding functions — nothing is uploaded, logged or stored.
What happens if I decode text that isn't valid?
You'll see an error message instead of your text being replaced, so you can correct the input and try again without losing what you typed.