URL encode
Paste text and get it percent-encoded for safe use in a URL, query string or form value. Every reserved and non-ASCII character becomes a %XX escape, and nothing leaves your browser.
Text is processed by your own browser and never leaves your device: this page has no server to send it to.
How it works
Encoding follows the encodeURIComponent rules: letters, digits and - _ . ! ~ * ' ( ) pass through, everything else is written as UTF-8 bytes in %XX form. That is the right treatment for a query-string value; do not run a whole URL through it or its slashes and ? will be escaped too.
Frequently asked questions
Should I encode the whole URL or just a value?
Just the value. Encoding a complete URL escapes the :// and ? that give it structure. Build the URL from parts and encode each query value on its own.
Why does a space become %20 and not +?
%20 is the universal percent-encoding and works everywhere. The + convention only applies inside form-encoded query strings; servers accept %20 there too.
What about accents and emoji?
They are encoded as their UTF-8 bytes, several %XX escapes per character. Every modern server and browser decodes them back correctly.