Web encoding

URL Encoder Decoder

Encode full URLs, individual components and form values; decode percent-encoded Unicode; parse absolute URL parts and inspect repeated or empty query parameters directly in your browser.

URL input

Encode, decode, or parse

percent encoding

Output

Parsed URL

URL parts

URL parts are shown for absolute URLs with a scheme and host. Decoded output is parsed before encoded input.

Protocol
Host
Pathname
Query string
Fragment
Origin

Query parameters

NameValueEncoded nameEncoded value

Reserved and commonly encoded characters

CharacterMeaningEncoded
spaceWord separator%20 / +
%Percent-encoding marker%25
&Query parameter separator%26
=Query name/value separator%3D
?Query string start%3F
#Fragment start%23
/Path separator%2F
:Scheme separator%3A
+Plus sign or form space%2B

URL encoding notes

Full URLUse full URL mode to preserve syntax such as : / ? & = # while encoding unsafe characters.
URL componentUse component mode for one query value, parameter name, path segment or fragment value.
Form encodingapplication/x-www-form-urlencoded represents spaces as +; a literal plus must be encoded as %2B.
Double encodingIf an existing % becomes %25, the value may have been encoded twice.

Popular URL encoding examples

URL encoder decoder FAQ

What is URL encoding?

URL encoding, or percent-encoding, replaces unsafe characters with % followed by two hexadecimal digits representing UTF-8 bytes.

Should I encode a full URL or a component?

Use full URL mode to preserve URL structure. Use component mode for a query value, name, path segment or fragment value.

Why does a space sometimes become +?

HTML form encoding represents spaces as +. Normal percent-encoding represents them as %20.

Why does decoding fail on a lone percent sign?

Every percent sign in encoded input must be followed by two hexadecimal digits. A literal percent sign is encoded as %25.