URL Encoder / Decoder

Encode and decode URLs and text with percent-encoding. Essential for web development, API debugging, and SEO.

Embed this tool

Percent-Encoding and URI Standards

Percent-encoding, defined in RFC 3986, is the standard mechanism for encoding arbitrary information in a Uniform Resource Identifier (URI). Because URIs were originally designed to use only a subset of US-ASCII characters, any character outside this safe set—including spaces, punctuation with special meaning, and non-ASCII Unicode characters—must be encoded as a percent sign followed by two hexadecimal digits.

It is important to distinguish between a URI (Uniform Resource Identifier), URL (Uniform Resource Locator), and URN (Uniform Resource Name). A URI is the umbrella term; a URL specifies both what a resource is and where to find it; a URN identifies a resource by name alone. All URLs are URIs, but not all URIs are URLs. Percent-encoding applies to all three.

In web development, the distinction between encodeURI and encodeURIComponent is critical. encodeURI preserves structural characters like /, ?, and # because it assumes you are encoding an entire URI. encodeURIComponent encodes everything, making it safe for query parameter values where an unencoded & or = would break the syntax. This tool uses encodeURIComponent for maximum safety.

For non-ASCII characters and internationalized domain names (IDNs), modern systems use UTF-8 encoding followed by percent-encoding for URLs, and Punycode (prefix xn--) for DNS-compatible domain names. These mechanisms enable a truly global web where URLs can contain text in any language.

Common URL-Encoded Characters

CharacterEncodedCharacterEncoded
Space%20&%26
!%21=%3D
#%23?%3F
$%24@%40
+%2B/%2F

References

Related Tools

Explore more developer tools on NerdsTips: Base64 Encoder / Decoder, HTML Entity Encoder / Decoder, URL Parser, and JSON Formatter.

Frequently Asked Questions

Percent-encoding, defined in RFC 3986, is a mechanism for encoding arbitrary data in a Uniform Resource Identifier (URI) using only a limited subset of US-ASCII characters. Unsafe characters are replaced with a "%" followed by two hexadecimal digits representing the character's ASCII value. For example, a space becomes "%20" and an ampersand becomes "%26". This ensures data can be safely transmitted in URLs without being misinterpreted by servers, proxies, or browsers.

Related Tools