URL Encoder and Decoder

Convert text to a percent-encoded URL and back in one place. Pick a direction, set the encode options you want, type or paste your text, and click Encode or Decode to see the result. It handles spaces, symbols, and non-English characters, and everything runs in your browser so your text stays on your device.

Plain text
Encode style
Encoded URL
Encoded URL

What is URL encoding?

URL encoding, also called percent-encoding, makes text safe to put in a web address. Only a limited set of characters is allowed in a URL, so anything outside that set is replaced with a percent sign and two hex digits. A space becomes %20, an ampersand becomes %26, and so on. This tool shows you the encoded form of your text, or turns an encoded URL back into readable text with one click.

Why use our URL converter

  • ·Free. No signup, no paywall, no limits.
  • ·Runs in your browser. Nothing gets uploaded, your text stays with you.
  • ·Both directions. Encode and decode in the same place, and swap with one click.
  • ·Options that fit. Escape a single query value or a whole address, use + for spaces, and keep non-English text readable.
  • ·Handles any characters. Spaces, symbols, and non-English text survive a full round trip.

Options explained

Encode

Turns plain text into a percent-encoded string that is safe to put in a URL. Spaces, symbols, and non-English characters become %XX codes.

Beforea b&cAftera%20b%26c

Decode

Turns a percent-encoded string back into plain text. Every %XX code is read back to the character it stands for, and a + is read as a space.

Beforea%20b%26cAftera b&c

Encode spaces as +

Writes each space as a + sign instead of %20. This is the form style used in query strings. Leave it off to keep spaces as %20, which works anywhere in a URL.

Beforea b&cAftera+b%26c

Encode Unicode characters

On by default. Turns accents, emoji, and other non-English characters into their %XX byte codes. Turn it off to keep those characters readable while reserved characters are still escaped.

Beforecafé ☕Aftercafé%20☕

Preserve full URLs

Leaves the characters that give a URL its structure alone (: / ? # & = and a few more) and only escapes the rest. Turn it on to encode a whole address in one go. Leave it off to escape a single query value or path segment.

Beforehttps://x.com/a bAfterhttps://x.com/a%20b

How URL encoding works

A URL can only use a limited set of characters. Letters, digits, and a few marks are allowed as-is. Everything else has to be escaped so it does not confuse the browser or the server. Encoding replaces each of those characters with a percent sign and the hex value of its bytes.

  • ·Unreserved characters stay the same. These are A to Z, a to z, 0 to 9, and the marks - _ . and ~.
  • ·Reserved characters have a special meaning in a URL, like : / ? # and &. They are kept when they are part of the structure and escaped when they are part of a value.
  • ·A space becomes %20. It cannot appear in a URL directly, so it is always escaped.
  • ·Non-English characters are first turned into their UTF-8 bytes, then each byte is written as a %XX code. So a single accented letter can become two or more codes.

Here are a few characters and how they look once encoded:

CharacterEncodedWhat it is
(space)%20Space
&%26Ampersand
=%3DEquals sign
?%3FQuestion mark
é%C3%A9Accented e (two UTF-8 bytes)

You can check any of these yourself. Type the character into the tool above and click Encode to see its percent code.

When to use URL encoding

Encoding and decoding URLs comes up often when you build for the web or work with APIs. Here are the most common reasons people use this tool:

  • ·Building a query string. Encode a search term or an email address so characters like &, =, or a space do not break the URL.
  • ·Reading a link from a log. Decode a long percent-encoded URL to see what it actually points to.
  • ·Working with an API. Encode a value before you put it in a request path or query so the server reads it correctly.
  • ·Fixing a broken link. Check whether a URL was double-encoded or is missing an escape by decoding it and looking at the result.
  • ·Sharing a link with special characters. Encode an address that contains spaces or symbols so it survives being pasted into chat or email.

Frequently asked questions

What is URL encoding?
URL encoding, also called percent-encoding, replaces characters that are not allowed in a URL with a percent sign followed by two hex digits. A space becomes %20 and an ampersand becomes %26, for example. This keeps the URL valid and stops characters like & or = from being read as URL structure. This tool encodes text into that form and decodes it back.
How do I encode text for a URL?
Make sure Encode is selected, set the encode options you want, then type or paste your text into the input box and click Encode. The result appears below. Click the copy button to copy it, or download it as a .txt file.
How do I decode a URL back to plain text?
Click Decode, paste your encoded URL into the input box, then click the Decode button. Every %XX code is turned back into the character it stands for, and the original text appears below.
What does Preserve full URLs do?
With it off, every reserved character is escaped, so : / ? # & and = all become percent codes. That is what you want for a single query value or one path segment. Turn it on and those structural characters are left alone and only the rest is escaped, so you can encode a whole address without breaking it apart.
Which options should I use for a query string value?
Leave Preserve full URLs off. A query value like a search term or an email address can contain characters such as &, =, or a space that would otherwise change how the URL is read. With it off, all of them are escaped, so the value stays intact when the server reads it back. You can also turn on Encode spaces as + if you want the form style.
What is the difference between %20 and + for a space?
Both stand for a space. %20 works anywhere in a URL, while + only means a space inside a query string. Encode spaces as + gives you the form style used in HTML form submissions. On decode, this tool reads a + back as a space, so a round trip returns your original text either way.
Does it handle spaces, symbols, and other languages?
Yes. Spaces become %20, symbols get their own codes, and non-English characters are encoded as their UTF-8 bytes in percent form. Decoding reverses all of this, so a full round trip returns the exact text you started with.
Is my text safe and private?
Your text never leaves your browser. All encoding and decoding runs locally on your device, so nothing is uploaded to a server. Once the page has loaded you can even use it offline.