Free URL Encoder & Decoder

Encode special characters for URLs, decode percent-encoded strings, and parse URL components instantly.

Instant Local Processing Developer Friendly URL Parser Free Forever
URL Input
Encoding Options
Encoding Standard
Advanced Settings
Encoded URL

How to Use the URL Encoder & Decoder

Encoding and decoding URLs is quick and easy with our free online tool. Follow these simple steps:

  1. Select Mode - Choose between Encode (convert special characters to percent-encoding), Decode (convert back to readable text), or Parse (break down URL components).
  2. Enter your URL or text - Paste the string you want to process into the input field.
  3. Configure options - For encoding, choose between Standard, Full URI, or Form encoding. Enable options like "Encode spaces as +".
  4. Click Process - The result appears instantly. For Parse mode, you'll see the URL broken down into protocol, host, path, query parameters, and hash.
  5. Copy to clipboard - Click the copy button to use your result in your projects.
100% Private: All URL encoding/decoding happens in your browser. Your data is never sent to any server.

What is URL Encoding (Percent Encoding)?

URL encoding, also known as percent-encoding, is a mechanism for encoding characters that have special meaning in URLs or aren't allowed in URLs. Characters are replaced with a "%" followed by their hexadecimal ASCII value. For example, a space becomes %20 and an ampersand becomes %26.

Common Encoded Characters
Space%20 or +
!%21
#%23
$%24
&%26
=%3D
?%3F
@%40
Encoding Types
  • encodeURIComponent - Encodes everything except: A-Za-z0-9 - _ . ! ~ * ' ( )
  • encodeURI - Encodes a full URI, preserving : / ? # [ ] @
  • Form encoding - For application/x-www-form-urlencoded data, spaces become +

When to Use URL Encoding

Search Query Parameters

Encoding special characters in search queries prevents breaking the URL structure.

API Requests

API endpoints require properly encoded parameters to process requests correctly.

International Characters

Non-ASCII characters like Chinese, Arabic, or emoji must be encoded in URLs.

Frequently Asked Questions About URL Encoding

encodeURI is for encoding a complete URL while preserving URL structure characters like : / ? # @. encodeURIComponent encodes everything except alphanumerics and - _ . ! ~ * ' ( ) - use this for encoding individual URL parameters or path segments.

Both are valid but used in different contexts. %20 is the standard percent-encoding for spaces in path segments. + is used in application/x-www-form-urlencoded data (HTML form submissions). For modern APIs, %20 is generally safer.

Double encoding happens when you encode an already-encoded string. For example, %20 becomes %2520. This breaks URLs because the server decodes once, leaving %20 as literal text. Only encode raw strings, and use our decoder first if you're unsure whether data is already encoded.

Yes, completely! All URL encoding and decoding happens 100% client-side in your browser using JavaScript. Your URLs and data are never transmitted to our servers. This makes it safe for encoding sensitive data like API keys or authentication parameters.

JavaScript's encodeURIComponent automatically handles Unicode characters by first converting to UTF-8, then percent-encoding each byte. For example, "café" becomes caf%C3%A9. Our tool supports full Unicode including emoji.