Logo
Web & Network Tools

URL & URI Encoder / Decoder

Instantly encode or decode URLs across multiple standards simultaneously. Compare results from encodeURI, encodeURIComponent, and Form URL Encoding (urlencode) to debug web requests effectively.

encodeURI / decodeURI

Standard URI Handler (Keeps URL structure)
Output will appear here...

URIComponent

Query Param Handler (Space as %20)
Output will appear here...

Form URL Encoded

application/x-www-form (Space as +)
Output will appear here...

Documentation & Usage Guide

Why are there different encoding standards?

URLs can only be sent over the Internet using the ASCII character set. If a URL contains characters outside this set (like spaces, Chinese characters, or symbols), they must be converted into a valid ASCII format. However, different parts of a URL require different handling.

When to use encodeURI?

Use encodeURI when you have a complete URL and want to encode it. It assumes the input is a valid URL and will not encode reserved characters that have special meaning in a URL, such as : / ? & = #.
(e.g., https://example.com/page?x=1 stays mostly the same).

When to use encodeURIComponent?

Use encodeURIComponent when encoding a value that will be appended as a parameter in a query string. It encodes almost everything, including / ? & =. If you use this on a full URL, it will break the URL structure by encoding the protocol (https:// becomes https%3A%2F%2F). Spaces are encoded as %20.

What is Form URL Encoded?

Also known as application/x-www-form-urlencoded. This is widely used when submitting HTML forms or working with older backend systems (like PHP's urlencode function). It is identical to encodeURIComponent, with one major difference: Spaces are encoded as a plus sign (+) instead of %20.

Pro Tip: If you see a decoded URL that still looks encoded (e.g., %2520), it means the URL was encoded twice (Double URL Encoding). You will need to click 'Decode' multiple times to fully reveal the original string.