← Back to DevKit

URL Encoder / Decoder

URL ENCODE · ENCODE & SECURITY

Two-way encodeURIComponent / decodeURIComponent with full URL breakdown into protocol, host, path and query params.

Encode → URL-safe
Decode → text

    
URL structure breakdown

>_ USAGE GUIDE

Paste text or a URL and convert in both directions in real time, using the encodeURIComponent / decodeURIComponent standard — the correct encoding for parameter values. The tool also breaks a full URL into its parts: protocol, host, path, and query parameters are listed one by one, with escaped sequences restored to readable text.

Typical uses: decoding percent-encoded strings like %E4%BD%A0%E5%A5%BD in API parameters, building links that carry non-ASCII parameters, and analyzing callback addresses. Support engineers use it to read what a tracking link actually contains; developers use it to confirm that a parameter was encoded exactly once — double-encoding (%2520 instead of %20) is a frequent and subtle bug. Conversion runs locally with zero uploads, so links containing tokens are safe to paste.

  1. Paste your input: text, a URL, or an encoded fragment
  2. Pick the direction: encode for transmission, decode to read what is actually inside
  3. Read the breakdown: for complete URLs, each component is listed separately and escaped parts are restored to human-readable form

>_ FAQ

Q1 · What do %20 and %3D in a URL mean?

That is URL percent-encoding: URLs only allow a limited set of safe characters, so everything else — spaces, non-ASCII text, = & ? — is converted byte by byte into %XX form under UTF-8. %20 is a space, %3D is an equals sign, and %E4%BD%A0%E5%A5%BD is the two-character Chinese greeting "nǐ hǎo". Paste any encoded string here to decode it back.

Q2 · What is the difference between encodeURI and encodeURIComponent?

encodeURI preserves URL structure characters (: / ? & =), so it suits encoding a complete URL. encodeURIComponent escapes far more, including structure characters, so it suits encoding individual parameter values. The classic bug is using the wrong one and letting an & or = inside a value break the URL's structure — parameter values should always use the latter, which is exactly what this tool applies.

Q3 · Why does a + in my parameter decode into a space?

History: the early form-encoding standard (application/x-www-form-urlencoded) defined + as a space. Modern encodeURIComponent does not — it encodes spaces as %20 — but some server stacks still apply the old rule. If a service misreads your +, pre-encode it as %2B and the problem disappears.

Q4 · The encoded URL became much longer — does that matter?

It can. Each CJK character takes 3 UTF-8 bytes and expands to 9 characters (%XX three times). Browsers and servers impose URL length limits, commonly 2–8 KB. For everyday parameters the inflation is harmless; for very long encoded payloads, switch to a POST body or shorten the value.

Q5 · Is it safe to paste URLs that contain tokens?

Yes — encoding and decoding run entirely in your browser, and nothing is transmitted or stored, so links carrying session tokens or signature parameters stay on your machine. As a general habit with any online tool, though, prefer test tokens when available and treat production credentials as paste-last, not paste-first.

Embed code

Paste the code below into your page to embed this tool as an iframe (nav and footer auto-hidden).

Heightpx
This tool runs entirely in your browser — input never leaves your device. Press Ctrl K to switch tools anytime.