URL Encoder & Decoder Online — Free, Instant, No Upload

Encode or decode URLs and query strings instantly — percent-encoding, form encoding, and full URI encoding. Nothing leaves your browser.

Encoding type

Free URL Encoder & Decoder — Instant, No Upload

This free online URL encoder and decoder converts any text into percent-encoded URL format and back — entirely in your browser. Nothing is sent to a server. Use it to encode query parameter values, decode percent-encoded strings from API responses, or inspect the key-value pairs in a URL query string.

The tool supports four encoding modes: encodeURIComponent for query parameter values, encodeURI for full URLs, form encoding where spaces become +, and a full encode-everything mode. Decoding handles both %20 and + as spaces, matching standard browser and server behavior.

When Do You Need URL Encoding?

URLs can only contain a limited set of safe characters. Spaces, special characters, Unicode text, and punctuation marks must be percent-encoded before they can be included in a URL. For example, a space becomes %20, an ampersand becomes %26, and the equals sign becomes %3D. Without encoding, these characters break URL parsing.

  • API development — encoding query parameter values before appending them to API endpoint URLs
  • Debugging redirects — decoding a redirect URL to read the destination clearly
  • Authentication — decoding JWT payloads or OAuth redirect URIs that arrive percent-encoded
  • Web scraping — decoding encoded URLs found in HTML source to get the actual destination
  • Form handling — understanding how browsers encode form submissions in application/x-www-form-urlencoded format
  • Internationalization — encoding non-ASCII characters (Hindi, Chinese, Arabic, etc.) for use in URLs

encodeURIComponent vs encodeURI — What's the Difference?

encodeURIComponent encodes everything except letters, digits, and - _ . ! ~ * ' ( ). Use it for individual query parameter values — it will encode &, =, and ? which are URL structure characters and must not appear unencoded inside a parameter value.

encodeURI leaves URL structure characters intact (: / ? # [ ] @ ! $ & ' ( ) * + , ; =) so the URL remains navigable. Use it when encoding a complete URL that already has the correct structure.

Working with JSON data in API responses? The JSON Formatter parses and formats the response body. Need to encode data in Base64 instead? Try the Base64 Encoder/Decoder.

Frequently Asked Questions

What is URL encoding?

URL encoding (also called percent-encoding) replaces unsafe characters in a URL with a % followed by two hexadecimal digits representing the character's ASCII or UTF-8 byte value. For example, a space becomes %20, and & becomes %26.

What is the difference between %20 and + for spaces?

Both represent a space, but in different contexts. %20 is the standard percent-encoding for a space and works everywhere. + as a space is specific to application/x-www-form-urlencoded format (HTML form submissions). When decoding, this tool handles both correctly.

Why does my URL have %3A and %2F in it?

%3A is a colon (:) and %2F is a forward slash (/). These appear when a full URL (like https://example.com) is encoded as a query parameter value — because colons and slashes are valid in URLs but have special meaning and must be encoded when inside a parameter.

Can I decode a full URL with query parameters?

Yes — paste the full URL into the Decode tab. You can also use the Query Inspector tab to parse the URL and see each key-value pair decoded separately.

Is my data sent to a server?

No. All encoding and decoding runs locally in your browser using JavaScript's built-in encodeURIComponent and decodeURIComponent functions. Nothing leaves your device.

What does the Query Inspector do?

The Query Inspector tab parses a URL or query string and displays each parameter as a decoded key-value pair in a table. It automatically handles percent-encoded keys and values, and treats + as a space. Useful for debugging API requests and form submissions.