URL TOOLS · NO REQUESTS ARE MADE

URL Encoder

Encode text for URLs, with component, full-URI, and form rules kept separate.

Input

Result

https%3A%2F%2Fexample.com%2F%E6%90%9C%E5%B0%8B%3Fq%3Da%2Fb%26tag%3D%E8%A1%8C%E9%8A%B7

About this tool

Paste text or a URL to get the encoded form. Three modes are offered because they are genuinely different jobs. **Component** escapes every reserved character, which is what a query value needs. **Full URI** leaves structural characters such as `:/?#[]@` intact so a whole URL stays usable. **Form** is component plus `+` for spaces, which is what an HTML form actually sends. Choosing the wrong one is the most common cause of a broken URL, so the difference is spelled out and shown side by side.

How it works

  1. Choose a mode: component, full URI, or form.
  2. Paste the text or URL to encode.
  3. Copy the result, or switch to the decoder to verify.

Limits and rules

Up to 8,000 characters. The three modes escape different characters, and the wrong one produces a broken URL.

Privacy

URLs are parsed inside this browser only. A URL often carries tokens, internal paths, and personal data in its query, so nothing is uploaded, stored, or logged.

Frequently asked questions

When do I use component versus full URI?
Use component when encoding a single value — putting `a/b?c` after `?q=` needs the slash and question mark escaped to `a%2Fb%3Fc`. Use full URI when encoding a whole URL, so the slashes in `https://` and the `?` survive. Component-encoding an entire URL produces a string that is no longer a usable link.
Why is a space sometimes %20 and sometimes +?
`%20` is the general URL encoding. `+` is the `application/x-www-form-urlencoded` convention used when HTML forms submit, and it only means a space inside a query string. In a path, `+` is a literal plus sign, which is a frequent source of decoding mistakes — hence form mode being separate.