How to encode text for a URL
- Paste your text or link into the box above.
- Pick Component for a value or Whole URL for a full address.
- Tick the plus option only for form style data.
- Read the encoded text that appears right away.
- Copy the result or download it.
What this URL encoder gives you
- Component mode that escapes every reserved character.
- Whole URL mode that keeps the structure of a link.
- An option to write spaces as plus signs for form data.
- Full Unicode support with UTF-8 bytes for accents and emoji.
- Live updates with no button to press.
- No upload so links with tokens stay on your machine.
Why do URLs need encoding?
A URL has structure. A few characters carry that structure. A question mark starts the query. An ampersand splits parameters. A slash splits path segments. A hash starts the fragment.
Sometimes one of those characters sits inside a value. Then you must escape it or the link falls apart. Search for "coffee & cake" without encoding and see what happens. The server reads a query of "coffee" and a strange parameter called "cake". Percent encoding swaps the ampersand for %26. The value then arrives intact.
Component or whole URL mode?
People often pick the wrong mode. Both mistakes cause bugs.
| Mode | Use it for | What it escapes |
|---|---|---|
| Component | A search term or a redirect target | Every reserved character |
| Whole URL | A full address with a few bad characters | Spaces and unsafe characters only |
Encode a whole link in component mode and you get https%3A%2F%2Fexample.com. That is right only when the link itself is a parameter value. Encode a search term in whole URL mode and the ampersand stays raw. The query breaks.
Should a space be %20 or a plus sign?
Use %20 when in doubt. It works everywhere. Path segments require it.
A plus sign means a space only in form data. HTML forms send that style. In a path a plus is just a plus. This mismatch causes a very annoying bug. A file name with a space works through a form. The same name breaks in a link you built by hand.
Unicode and double encoding
The tool turns letters outside basic English into UTF-8 bytes. It escapes each byte. So "é" becomes %C3%A9. Two escapes for one letter is correct. Every modern system expects it.
The most common mistake is encoding twice. The percent sign has a special role too. So a second pass turns %20 into %2520. See %25 followed by hex digits? A second encode pass happened somewhere. The URL decoder has a repeat option that undoes it.
Encode in code when you can
Hand encoding works for a quick test. In real code use the built in function for your language. JavaScript offers encodeURIComponent for values. Python offers urllib.parse.quote. These functions handle edge cases the same way every time.
Characters a URL encoder changes
| Character | Encoded form | Role in a URL |
|---|---|---|
| Space | %20 | Not allowed |
| & | %26 | Splits parameters |
| ? | %3F | Starts the query |
| / | %2F | Splits the path |
| = | %3D | Joins a key and value |
| % | %25 | Starts an escape |
Tips for clean links
- Encode each value on its own before you join the link.
- Never encode a link that is already encoded.
- Test the final link in a browser before you share it.
- Keep tracking tags short and simple.
Common URL encoder problems
My redirect lands on the wrong page
The target link needs component mode. The tool must escape its slashes and question marks.
My file link breaks on spaces
You used plus signs in a path. Switch to %20.
A quick URL encoder example
Say you want a search link for "red shoes & socks". Paste that phrase into the box in component mode. The tool shows red%20shoes%20%26%20socks. Add that after ?q= in your link. The server now reads the full phrase as one search term. The ampersand no longer splits it into two parts.
Who uses a URL encoder?
Developers build API requests. Marketers add tracking tags to links. SEO teams check redirect rules. Support staff fix broken links that customers report.
Your links stay private
The tool runs in your browser. Links with tokens never leave your device. Want to see the parts of a link? Use the URL parser. Need Base64 instead? Try the Base64 encoder.