QiLing Tools
Sign in

🔗URL Encode & Decode - Online URL Encoder / Decoder

Convert spaces, non-English text and symbols such as & = ? into percent-encoding that is safe in a URL (你好 becomes %E4%BD%A0%E5%A5%BD), or turn a string of % codes back into text. Encode a single parameter value, or a whole URL while keeping the : / ? & = # that give it structure. Besides the universal UTF-8, it handles the GBK encoding used by older Chinese sites and detects it automatically when decoding, and it can treat + as a space, as HTML forms and Google search links do. Results appear as you type, entirely in your browser.

Loading tool...

How to use URL Encode/Decode

  1. 1Choose encode or decode, then a scope: Component for a single parameter value, Whole URL for a complete link
  2. 2Paste the text or link; if spaces appear as + (HTML forms, Google search links), tick + means space
  3. 3The result appears instantly; click Copy result. Switch the character encoding to GBK when an older Chinese site requires it

FAQ

What is the difference between Component and Whole URL?
Component also encodes & = ? / : # and suits a value placed inside a parameter: 'a&b=c d' becomes a%26b%3Dc%20d, so it cannot break the surrounding link apart. Whole URL keeps : / ? & = # and only encodes spaces and non-ASCII characters, which suits turning a complete link with spaces or non-English words into something you can paste anywhere.
Why does %C4%E3 fail to decode or come out garbled?
That is GBK, not UTF-8. The same word 你好 is %E4%BD%A0%E5%A5%BD in UTF-8 (three bytes per character) and %C4%E3%BA%C3 in GBK (two bytes per character). Links from older Chinese sites, early Baidu and some Windows software use GBK, so tools that only understand UTF-8 throw an error or show gibberish. This tool falls back to GBK automatically when UTF-8 fails and tells you so below the result; to produce a GBK-encoded link, switch the character encoding to GBK before encoding.
What does a + in a link mean?
HTML form submissions, Google search links and PHP urlencode write spaces as +, e.g. q=hello+world. In standard URL encoding a space is %20 and + is a literal plus sign, so it is kept as is by default; with + means space ticked, q=hello+world%21 decodes to q=hello world!. When encoding with the option on, spaces become + and real plus signs become %2B.
The result still starts with %. What now?
The link was encoded twice, e.g. %25E4%25BD%25A0: %25 is the encoding of the percent sign itself, so one pass gives %E4%BD%A0 and a second pass gives 你. This often happens with multi-step redirects and some share links; paste the result back in and decode again.
What does "incomplete % escape" mean?
A percent sign must be followed by two hex digits (0-9, A-F), as in %20. A lone %, as in "100%", or a link cut off in the middle (such as ending in %E4%B) cannot be decoded. Check that you copied everything; a literal percent sign should be written as %25.
Why are ! ' ( ) * not encoded?
The tool follows the browser-standard encodeURIComponent, under which these characters are allowed in URLs and work almost everywhere. A few contexts, such as OAuth signatures, require strict RFC 3986 encoding as %21 %27 %28 %29 %2A; replace them in the result by hand if you need that.
Are my files or data uploaded?
No. Everything runs locally in your browser with no network upload, and is discarded when you close the page.
Do I need to sign up or pay?
No. The site is completely free, needs no account and has no usage limits.

Features

  • Two scopes: a single value (encodes & = ? / and more) or a whole URL (keeps structural characters)
  • UTF-8 and GBK; when decoding, GBK is tried automatically if UTF-8 fails
  • Optional + as space, compatible with HTML forms, Google search links and PHP urlencode
  • Correctly handles non-English text, spaces, punctuation and emoji
  • Instant results with one-click copy
  • Processed locally in your browser, nothing uploaded