URL Encoder / URL Decoder


Enter the text that you wish to encode or decode:



About URL Encoder / URL Decoder

Online URL encoding/ decoding is an essential part of search engine optimization. It is also known as Percent Encoding and it is an important structure for encoding information in a Uniform Resource Identifier (URI) under manifest circumstances. Use this tool to URL encode and decode a SAML Message GET parameter. Paste a SAML Message and obtain its URL-encoded version or paste a URL-encoded SAML Message and obtain its plain-text version.

In the HTTP-Redirect binding (A SAML binding used for exchanging AuthNRequests, SAML Logout Requests and SAML Logout Responses) the SAML Message is sent as an HTTP GET parameter. This message must be URL encoded before being sent.

URL encoding, also known as percent-encoding, is a mechanism for encoding information in a Uniform Resource Identifier (URI) under certain circumstances. Although it is known as URL encoding it is, in fact, used more generally within the main Uniform Resource Identifier (URI) set, which includes both Uniform Resource Locator (URL) and Uniform Resource Name (URN). As such it is also used in the preparation of data of the "application/x-www-form-urlencoded" media type, as is often used in the submission of HTML form data in HTTP requests.

Use the online tool from above to either encode or decode a string of text. For worldwide interoperability, URIs have to be encoded uniformly. To map the wide range of characters used worldwide into the 60 or so allowed characters in a URI, a two-step process is used:

  • Convert the character string into a sequence of bytes using the UTF-8 encoding
  • Convert each byte that is not an ASCII letter or digit to %HH, where HH is the hexadecimal value of the byte

For example, the string: François, would be encoded as Fran%C3%A7ois

(The "ç" is encoded in UTF-8 as two bytes C3 (hex) and A7 (hex), which are then written as the three characters "%c3" and "%a7" respectively.) This can make a URI rather long (up to 9 ASCII characters for a single Unicode character), but the intention is that browsers only need to display the decoded form, and many protocols can send UTF-8 without the %HH escaping.

Which Characters Are Allowed in a URL?

The characters allowed in a URI are either reserved or unreserved (or a percent character as part of a percent-encoding). Reserved characters are those characters that sometimes have special meaning, while unreserved characters have no such meaning. Using percent-encoding, characters which otherwise would not be allowed are represented using allowed characters. The sets of reserved and unreserved characters and the circumstances under which certain reserved characters have special meaning have changed slightly with each revision of specifications that govern URIs and URI schemes.

According to RFC 3986, the characters in a URL have to be taken from a defined set of unreserved and reserved ASCII characters. Any other characters are not allowed in a URL.

The unreserved characters can be encoded, but should not be encoded. The unreserved characters are:

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z a b c d e f g h i j k l m n o p q r st u v w x y z 0 1 2 3 4 5 6 7 8 9 - _ . ~

A to Z (ABCDEFGHIJKLMNOPQRSTUVWXYZ) - (Hyphen or Dash)
a to z (abcdefghijklmnopqrstuvwxyz) _ (Underscore)
0 to 9 (0123456789) . (Period)
$ (Dollar Sign) ! (Exclamation or Bang)
+ (Plus sign) * (Asterisk or Star)
( (Open Bracket) ' (Single Quote)
) (Closing Bracket)

How does URL encoding work?

The reserved characters have to be encoded only under certain circumstances. All offending characters are replaced by a % and a two-digit hexadecimal value that represents the character in the proper ISO character set. Here are a couple of examples of the reserved characters are:

! * ' ( ) ; : @ & = + $ , / ? % # [ ]

This online URL encoding is also utilized in the preparation of data and the submission of HTML form data in HTTP requests.

All characters that need to be changed are replaced by a percent sign (%) and a two-digit hexadecimal value that signifies the character in the appropriate ISO character set. Listed below are some examples:

$ (Dollar Sign) becomes %24 + (Plus) becomes %2B
& (Ampersand) becomes %26 , (Comma) becomes %2C
: (Colon) becomes %3A ; (Semi-Colon) becomes %3B
= (Equals) becomes %3D ? (Question Mark) becomes %3F
@ (Commercial A / At) becomes %40

Sometimes, online Uniform Resource Identifier (URL) needs to be encoded or decoded sometimes as there are some users who do not understand Unicode Text. So, by encoding the URL the servers will be able to understand the web address and authorize the users to have access to the website.

Hence, by using this tool you can convert the character string into a sequence of bytes using the UTF-8 encoding.