Skip to main content

URL Encoder Decoder

URL encode and decode tool with three modes: encodeURIComponent (recommended for query params), encodeURI (preserves URL structure), and form-urlencoded (+ for space). All client-side.

Share on Social Media:

Free URL Encoder Decoder: Convert Special Characters in Web Addresses Instantly

Type café & co into the box, hit encode, and you get back caf%C3%A9%20%26%20co. Paste that back, hit decode, and you have your original phrase again. That round trip is the whole point of the URL Encoder Decoder on Tools Hub: it translates text into the percent-encoded form that web addresses require, and turns those cryptic %20, %3F, and %2F sequences back into something you can read.

The reason this matters is that a URL can legally contain only a narrow set of characters. The moment you put a space, an ampersand, an accented letter, or an emoji into a link, that character has to be rewritten as a percent code or the link breaks, splits at the wrong place, or silently loses data. Getting that conversion right by hand is error-prone, so whether you call it a url encoder decoder, a url decoder encoder, or just an online url encoder decoder, this page does the precise, RFC-correct conversion in a single click. Everything runs in your browser, so the string you paste, including any token or private parameter, never leaves your device.

What Is URL Encoding? Understanding Percent-Encoding

A URL, or Uniform Resource Locator, can only safely carry a limited alphabet of characters. The standard that governs this, RFC 3986, sorts every character into a category, and anything outside the safe set has to be rewritten. When people ask what is url encoder behavior actually doing, the short answer is that it replaces unsafe characters with a code every web server understands the same way.

Reserved, unreserved, and unsafe characters

Unreserved characters are always safe and never need encoding: the letters A–Z and a–z, the digits 0–9, and the four symbols hyphen, underscore, period, and tilde. Reserved characters carry structural meaning, such as the slash that separates path segments, the question mark that begins the query string, the ampersand that separates parameters, and the equals sign that ties a key to a value. When one of those appears as data rather than structure, it must be encoded so the server does not misread it. Unsafe characters like spaces, quotation marks, angle brackets, and curly braces can be mangled by older systems and should always be encoded.

How percent-encoding works

The mechanism is called percent-encoding because each unsafe character becomes a percent sign followed by the two-digit hexadecimal value of its byte. A space is byte 32, hex 20, so it becomes %20. A forward slash is byte 47, hex 2F, so it becomes %2F. For anything beyond basic ASCII, the text is first converted to UTF-8 bytes and each byte is encoded on its own, which is why a single accented letter or emoji can expand into several percent codes. Decoding reverses the process: the tool finds each percent sequence, converts the hex back to a byte, and reassembles the original text.

Why spaces sometimes become plus signs

You may notice a space turning into %20 in one place and a plus sign in another. The plus convention comes from the older application/x-www-form-urlencoded format used by HTML forms, where a literal plus means a space. In the path portion of a URL a space should be %20; in a query string either form can appear depending on the system. Knowing this distinction prevents subtle bugs, and it is one of the reasons running text through a proper encode and decode url online tool beats hand-editing.

How to Encode or Decode a URL Online

The whole workflow takes a few seconds. To convert text in either direction:

  1. Paste your text or web address. Drop the string into the input box. It can be a full URL, a single query-parameter value, a search phrase, or any block of text containing special characters.
  2. Choose your direction. Click Encode to convert plain text into percent-encoded form, or Decode to turn an encoded string back into readable text. The tool detects which characters need attention and handles them automatically.
  3. Review the output. The result appears instantly. When encoding, spaces become %20, question marks become %3F, ampersands become %26, and so on; decoding does the reverse.
  4. Copy the result. Use the copy button to grab the converted string and drop it into your address bar, code editor, API client, or spreadsheet.
  5. Repeat as needed. Clear the box and run another conversion. There is no cap, no queue, and no waiting.

The reason people prefer a dedicated url encoder and decoder online over guessing by hand is that the encoding rules are precise and easy to get wrong. One missed character can break a link or corrupt a query string, and this tool removes that risk.

Worked Examples You Can Reproduce

The fastest way to trust an encoder is to run a few inputs through it and watch what comes out. Here are concrete conversions you can paste in and verify yourself.

A search phrase with reserved characters

Suppose a user searches for rock & roll vinyl and you want to build a working search link. Encoding the phrase produces:

rock%20%26%20roll%20vinyl

Notice the ampersand became %26. If you had left it raw inside ?q=rock & roll vinyl, the server would have read the & as the start of a new parameter and your query would have arrived as just rock . Encoding keeps the whole phrase inside one parameter.

An accented and emoji string

Encode résumé 🎉 and you get:

r%C3%A9sum%C3%A9%20%F0%9F%8E%89

Each é is two bytes in UTF-8 (%C3%A9) and the party emoji is four bytes (%F0%9F%8E%89). That expansion is correct: those byte sequences are exactly what lets non-English text and emoji survive the trip to a server and back.

Decoding a real-world tracking link

Say a campaign URL arrives looking like this in your analytics:

utm_campaign=spring%20sale%202026&utm_content=hero%2Bbanner

Decoding it reveals the human-readable values: campaign spring sale 2026 and content hero+banner. Notice the %2B decoded back to a literal plus, not a space, because it was deliberately encoded. That is the difference between a real plus character and the form-encoding shorthand for a space.

Spotting a double-encoded path

If a redirect destination shows up as %252Fblog%252Fpost instead of %2Fblog%2Fpost, the string was encoded twice. Decode it once and you get %2Fblog%2Fpost; decode again and you get /blog/post. Seeing the result at each pass is how you confirm the problem and trace where the extra encoding step crept in.

When to Encode and When to Decode

The two halves of this tool are mirror images, and choosing the right one is the only decision you have to make. Picking correctly also helps you avoid the classic mistake of double-encoding.

Reach for encode when you are building

Encode whenever you are placing user-supplied or unpredictable text into a URL. If you are constructing a link, adding a search term to a query parameter, embedding a file path, or passing a value to an API, encode that value first. Encoding guarantees special characters are treated as literal data rather than structural markers, so a search for "rock & roll" does not split into two parameters at the ampersand.

Reach for decode when you are reading

Decode whenever you receive a URL or string that is already encoded and you want to read or audit it. Support tickets, analytics dashboards, server logs, and redirect chains are full of encoded strings that are hard to parse at a glance. Decoding turns %2Fblog%2Fpost%3Fid%3D42 back into the clear path and query you expected, making troubleshooting far quicker.

Real-World Scenarios Where This Tool Earns Its Place

Percent-encoding shows up everywhere on the modern web, so a reliable converter quietly solves a lot of everyday problems:

  • Building query strings by hand. Append parameters whose values contain spaces, ampersands, or equals signs, and encode each value first so the server reads them correctly.
  • Debugging broken links. Paste a malformed or encoded URL, decode it, and instantly see the readable version so you can spot the typo, the extra slash, or the duplicated parameter.
  • Reading marketing and UTM links. Campaign URLs are stuffed with encoded tracking parameters; decode them to confirm your source, medium, and campaign values are exactly what you intended.
  • Working with APIs. REST endpoints frequently require encoded path segments and query values; encode your inputs so tokens, filters, and search terms reach the server intact.
  • Sharing and reproducing searches. Decode a shared search link to see exactly what was searched, or encode a phrase to build a working search link from scratch.
  • Cleaning up redirect chains. Redirects often nest an encoded destination inside another URL; decode the outer link to reveal where it actually points, which doubles as a security check.
  • Preparing data for GET forms. When a form submits over GET, the browser encodes the field values; reproduce that behavior here to test how your server handles the incoming data.

Across all of these the value is the same: correct, predictable results without memorizing the encoding table or writing a throwaway script.

Edge Cases and Troubleshooting

Most URL-encoding headaches come down to a handful of recurring patterns. These cover the situations users hit most often.

My decoded string still has percent signs in it

This almost always means the string was double-encoded. Decode the result a second time. If %2520 becomes %20 on the first pass and a space on the second, you have confirmed double-encoding and can trace where the extra step came from.

Should I encode the whole URL or just part of it

Encode only the components that contain unsafe data, such as a single query-parameter value, not the entire link. If you encode a whole valid URL, the slashes, question mark, and ampersands that give it structure get encoded too, turning a working link into one opaque blob. Encode the parts, then assemble the link.

Why did my plus sign turn into a space

In form-style encoding a plus represents a space, so a literal plus in your data must be encoded as %2B to survive. If you decoded a string and a plus became a space unexpectedly, the original was using form encoding; re-encode the literal plus to preserve it.

The tool encoded a letter I thought was safe

Characters outside the basic English alphabet, including accented letters and emoji, are encoded as multi-byte UTF-8 sequences. That is correct and expected; those bytes are what make international characters travel safely, and the receiving system decodes them back to the original character.

My link works in the browser but breaks in code

Browsers are forgiving and quietly encode unsafe characters for you, which can hide a problem. Code and APIs are stricter. Encode your values explicitly here before putting them in code, so what you see is exactly what gets sent and the discrepancy disappears.

Can I encode text that is not a URL

Yes. The tool encodes any plain text into percent-encoded form, which is useful any time you need a string that is safe to embed in a URL, a cookie, or certain headers. It is not limited to full web addresses.

Privacy: Your Data Stays on Your Device

When you encode or decode query strings you may be handling session identifiers, search history, personal names, or other sensitive details, so privacy is a fair concern. Every conversion here runs directly in your browser with client-side JavaScript. Your text is not uploaded to a server, not logged, and not stored after you close the tab. That means you can safely decode a link that contains a token or encode a parameter that contains a name without it ever leaving your machine, and you never have to create an account or hand over an email to do it.

Decoding is itself a small security practice. Phishing and malware links routinely hide their true destination behind encoded characters and nested redirects. Decoding a suspicious link before you click it reveals the real domain and path, so you can inspect where it leads without ever visiting it.

Related Tools on Tools Hub

If the URL Encoder Decoder is part of your workflow, these other free Tools Hub utilities pair naturally with it:

  • Base64 Encoder Decoder — convert text and data to and from Base64, another common web-safe encoding used in data URIs, tokens, and email attachments.
  • JSON Formatter — pretty-print, validate, and minify JSON payloads that travel alongside your encoded query parameters.
  • HTML Encoder Decoder — escape and unescape HTML entities so angle brackets and ampersands display as text instead of markup.
  • Case Converter — switch text between uppercase, lowercase, title case, and more before encoding it into a link.
  • QR Code Generator — turn a finished, correctly encoded URL into a scannable QR code for print or sharing.
  • Word Counter — measure and inspect text length, handy when you are trimming long parameter values.

Frequently Asked Questions

Is the URL Encoder Decoder free to use?

Yes, it is completely free. There is no charge for any conversion, no premium tier that unlocks features, and no limit on how many strings you can encode or decode. You can use the url encoder decoder online as often as you like at no cost.

Do I need to sign up or create an account?

No. The tool requires no registration, no email address, and no login. You open the page and start converting immediately, which makes it ideal for quick one-off tasks as well as heavy daily use.

Is my data safe when I use this tool?

Yes. All encoding and decoding happens locally in your browser using JavaScript. Your text is never uploaded to a server, never logged, and never stored. This privacy-first design means you can safely handle links that contain tokens, names, or other sensitive values.

What is the difference between a URL encoder and a URL decoder?

An encoder converts plain text into percent-encoded form so it is safe to place in a URL, replacing characters like spaces with %20. A decoder does the reverse, turning encoded sequences back into readable text. This tool does both, so it works as a complete url encoder and decoder in one place.

Why do I see %20 in my links?

The sequence %20 is the percent-encoded representation of a space. Spaces are not allowed in URLs, so they are replaced with %20 to keep the link valid. Decoding the URL with this tool turns those sequences back into ordinary spaces.

Can it handle accented characters, emoji, and non-English text?

Absolutely. Characters outside the basic ASCII range are encoded as UTF-8 byte sequences, which can produce several percent codes per character. This is the correct way to make international text travel safely across the web, and the decoder reassembles the original characters perfectly.

What does it mean if my string is double-encoded?

Double-encoding happens when an already-encoded string is encoded a second time, turning a percent sign into %25 and producing sequences like %2520. To fix it, decode the string twice. The tool's instant output makes it easy to spot and correct double-encoding before it causes broken links.

Is there a limit on the length of text I can convert?

There is no practical limit imposed by the tool. Because processing happens in your browser, you can paste long URLs or large blocks of text and convert them in one go, as long as your device has enough memory to hold the text, which is rarely a concern for typical use.

🔗 Relevant Tools

Leave a comment

Comments go straight to our team — they are not published on the site.

ads

Please disable your ad blocker!

We understand that ads can be annoying, but please bear with us. We rely on advertisements to keep our website online. Could you please consider whitelisting our website? Thank you!