Quick Tools Online

Free URL Encode / Decode Online

Encode or decode URLs and query strings online. Handles special characters and Unicode.

URL encoding (also called percent-encoding) replaces characters that have a special meaning in a URL — spaces, slashes, question marks, ampersands, and non-ASCII characters — with a percent sign followed by two hex digits. Without it, a space in a search query or a plus sign in an email address would be misread by the server, turning one parameter into several or losing characters entirely. This tool encodes any string to its URL-safe form or decodes a percent-encoded string back to human-readable text. It correctly handles UTF-8, so non-Latin scripts and emoji round-trip faithfully. Everything happens locally in your browser.

Ad Space
Ad Space

How to use this url encode / decode

  1. Paste your string into the Encode box to convert special characters into percent-encoded form.
  2. Paste a percent-encoded string into the Decode box to see the original text.
  3. Choose between encoding for a URL component (escapes more characters) and encoding for a full URI (leaves :// , ?, and & alone). The component variant is the right choice for a value going inside a query parameter.
  4. Click Copy to put the result on your clipboard.
  5. Paste the output into your URL, config, or API request.

Common use cases

  • Building a URL with a query string that contains spaces, ampersands, or user input
  • Debugging a webhook that is receiving oddly encoded characters in its payload
  • Decoding a redirect URL embedded as a query parameter in a tracking link
  • Safely including a file path or email address in a URL
  • Round-tripping user input through a URL without losing non-ASCII characters

Frequently asked questions

What is the difference between encodeURI and encodeURIComponent?

encodeURI assumes the string is a complete URI and leaves reserved characters (:, /, ?, #, &, =, +) alone so the URL structure is preserved. encodeURIComponent assumes the string is a single value going inside a URL and escapes every reserved character, so it is safe to paste into a query parameter. For user input, use the component variant unless you know better.

Why are spaces sometimes encoded as %20 and sometimes as +?

%20 is the canonical encoding for a space and works everywhere. The + form is a legacy from HTML form submissions, where query strings used application/x-www-form-urlencoded encoding. Modern code and URL libraries accept both, but %20 is safer in URL paths — only use + inside query strings, and only if you know the consumer accepts it.

Does this handle Unicode?

Yes. Non-ASCII characters are first encoded to UTF-8 bytes and then each byte is percent-encoded. Decoding reverses the process. A single emoji, which is four bytes in UTF-8, encodes to 12 percent-escaped characters and decodes back cleanly.

Why do I see double-encoded text like %2520 in a URL?

That is a value that got encoded twice — once by the original producer and again by something in the middle. Decoding %2520 once gives %20, which is the encoded form of a space. Decode twice to recover the literal space. Double encoding is almost always a bug somewhere in the pipeline.

Is there a limit on URL length?

The HTTP spec does not set one, but most browsers and web servers reject URLs longer than about 2,000 to 8,000 characters. If your encoded URL is approaching that range, move the data into a POST body instead of a query string.

Ad Space

More Tools