HTML URL Encoding
Reference Manual
URL encoding converts characters into a format that can be transmitted over the internet.
URL - Uniform Resource Locator
Web browsers request pages from web servers via URLs.
A URL is the address of a web page, for example: https://www.tutorialpro.org.
URL Encoding
URLs can only be sent over the internet using the ASCII character set.
Since URLs often contain characters outside the ASCII set, the URLs must be converted to a valid ASCII format.
URL encoding replaces non-ASCII characters with a "%" followed by two hexadecimal digits.
URLs cannot contain spaces. URL encoding usually replaces a space with a "+".
Try It Yourself
If you click the "Submit" button below, the browser will URL encode the input before sending it. The page on the server will display the received input.
Try entering some other characters and then click the submit button again.
URL Encoding Functions
JavaScript, PHP, and ASP provide functions to URL encode strings.
Use the encodeURI() function in JavaScript, rawurlencode() function in PHP, and Server.URLEncode() function in ASP.
Click the "URL Encoding" button to see how the JavaScript function encodes the text.
Note: The JavaScript function encodes spaces as %20.
URL Encoding Reference Manual
ASCII Character | URL-Encoded |
---|---|
space | %20 |
! | %21 |
" | %22 |
# | %23 |
$ | %24 |
% | %25 |
& | %26 |
' | %27 |
( | %28 |
) | %29 |
* | %2A |
+ | %2B |
, | %2C |
- | %2D |
. | %2E |
/ | %2F |
0 | %30 |
1 | %31 |
2 | %32 |
3 | %33 |
4 | %34 |
5 | %35 |
6 | %36 |
7 | %37 |
8 | %38 |
9 | %39 |
: | %3A |
; | %3B |
< | %3C |
= | %3D |
> | %3E |
? | %3F |
@ | %40 |
A | %41 |
B | %42 |
C | %43 |
D | %44 |
E | %45 |
F | %46 |
G | %47 |
H | %48 |
I | %49 |
J | %4A |
K | %4B |
L | %4C |
M | %4D |
N | %4E |
O | %4F |
P | %50 |
Q | %51 |
R | %52 |
S | %53 |
T | %54 |
U | %55 |
V | %56 |
W | %57 |
X | %58 |
Y | %59 |
Z | %5A |
[ | %5B |
\ | %5C |
] | %5D |
^ | %5E |
_ | %5F |
` | %60 |
a | %61 |
b | %62 |
c | %63 |
d | %64 |
e | %65 |
f | %66 |
g | %67 |
h | %68 |
i | %69 |
j | %6A |
k | %6B |
l | %6C |
m | %6D |
n | %6E |
o | %6F |
p | %70 |
q | %71 |
r | %72 |
s | %73 |
t | %74 |
u | %75 |
v | %76 |
w | %77 |
x | %78 |
y | %79 |
z | %7A |
{ | %7B |
| | %7C |
} | %7D |
~ | %7E |
%7F | |
` | %80 |
| %81 |
‚ | %82 |
ƒ | %83 |
„ | %84 |
… | %85 |
† | %86 |
‡ | %87 |
ˆ | %88 |
‰ | %89 |
Š | %8A |
‹ | %8B |
Œ | %8C |
| %8D |
Ž | %8E |
| %8F |
| %90 |
' | %91 |
' | %92 |
" | %93 |
" | %94 |
• | %95 |
– | %96 |
URL Encoding Reference Manual
ASCII control characters were originally designed to control hardware devices such as printers and tape drives. These characters do not serve any function in URLs.
ASCII Character | Description | URL-Encoded |
---|---|---|
NUL | null character | %00 |
SOH | start of header | %01 |
STX | start of text | %02 |
ETX | end of text | %03 |
EOT | end of transmission | %04 |
ENQ | enquiry | %05 |
ACK | acknowledge | %06 |
BEL | bell (ring) | %07 |
BS | backspace | %08 |
HT | horizontal tab | %09 |
LF | line feed | %0A |
VT | vertical tab | %0B |
FF | form feed | %0C |
CR | carriage return | %0D |
SO | shift out | %0E |
SI | shift in | %0F |
DLE | data link escape | %10 |
DC1 | device control 1 | %11 |
DC2 | device control 2 | %12 |
DC3 | device control 3 | %13 |
DC4 | device control 4 | %14 |
NAK | negative acknowledge | %15 |
SYN | synchronize | %16 |
ETB | end transmission block | %17 |
CAN | cancel | %18 |
EM | end of medium | %19 |
SUB | substitute | %1A |
ESC | escape | %1B |
FS | file separator | %1C |
GS | group separator | %1D |
RS | record separator | %1E |
US | unit separator | %1F |