All tools · 🔤 Encode / Decode

🔗 URL Encoder / Decoder

URL encoding (percent-encoding) replaces unsafe characters in URLs with %XX hex codes. Used for query strings, redirects, OAuth state, and any time you stuff arbitrary data into a URL. This tool handles both encode and decode with proper UTF-8 handling.

Loading tool…

Examples

Encode a search query
Inputhello world & friends
Outputhello%20world%20%26%20friends
Decode an encoded URL
Inputhttps%3A%2F%2Fexample.com%2Fpath%3Fq%3D1
Outputhttps://example.com/path?q=1
Unicode is encoded as UTF-8 bytes
Inputcafé
Outputcaf%C3%A9

Frequently asked questions

When do I need URL encoding?

Anywhere a value goes into a URL: query strings, path segments, fragments, OAuth redirect parameters. The browser handles forms automatically; you need it manually when building URLs programmatically.

What is the difference between encodeURI and encodeURIComponent in JS?

encodeURI preserves reserved characters like / ? # & = because it assumes you are encoding a whole URL. encodeURIComponent encodes everything — use it for individual query values.

Why does space become %20 sometimes and + other times?

In query strings (application/x-www-form-urlencoded), spaces conventionally become +. In path segments, they become %20. This tool uses %20 throughout.

Can I encode a URL twice?

You can, but you usually should not — each pass turns % into %25, growing the string. Decode in the same number of passes you encoded.

About this tool

URL Encoder / Decoder runs entirely in your browser using standard Web APIs. No data is sent to any server. The source for this tool is in our public GitHub repository.

Related tools

← All 96 tools

Why this tool

vs typical free web-tool sites

1vwTypical free site
PriceFreeFree
Signup requiredNoOften (for premium features)
Ads inside the toolNoYes (banner + video)
Data sent to serverNo (browser-only)Yes (inputs analyzed for ads)
Total tools96Often <20 or scattered across sites
Bookmarkable URL per toolYesMixed
Loads in under 1sYes (static)Often slow (ad tracking)
MultilingualEN / ES / PT / FR / DEUsually EN only
Open sourceYesNo