HTML special characters and symbols

General symbols
Latin language diacritical / accented characters
Greek characters
Mathematical symbols and operators
Alternative ways to insert symbols

The listings here show a useful selection of the HTML special characters with their codes, plus the Unicode decimal value for each symbol. These are often referred to as 'Entity Codes'. In some cases symbols are included for which no HTML special character codes are available. See the section on Alternative ways to insert symbols to utilize the Unicode values.



General symbols

Character HTMLvalue
<Left angle bracket&lt;60
>Right angle bracket&gt;62
@At sign-64
°Degree sign&deg;176
|Vertical bar-124
¦Broken bar&brvbar;166
¡Inverted exclamation&iexcl;161
¿Invt. question mark&iquest;191
¹Superscript "1"&sup1;185
²Superscript "2"&sup2;178
³Superscript "3"&sup3;179
¼Fraction quarter&frac14;188
½Fraction half&frac12;189
¾Fraction three quart&frac34;190
Fraction one eighth-8539
Fraction three eighths-8540
Fraction five eighths-8541
Fraction seven eighths-8542
Fraction one third-8531
Fraction two thirds-8532
Arrow down&darr;8595
Arrow left&larr;8592
Arrow right&rarr;8594
Arrow up&uarr;8593
Arrow left right&harr;8596
Arrow double down&dArr;8659
Arrow double left&lArr;8656
Arrow double right&rArr;8658
Arrow double up&uArr;8657
Arrow double left right&hArr;8660
Solid up-point triangle-9650
Solid Rt-point triangle-9658
Solid Dn-point triangle-9660
Solid Lt-point triangle-9668
Carriage return&crarr;9229
§Section marker&sect;167
Care of-8453
Character HTMLvalue
®Registered TM&reg;174
Trade mark sign&trade;8482
Ohm symbol-8486
Check heavy-10004
Ballot heavy-10008
Telephone location-9990
Wheelchair access-9855
Solid star-9733
Bullet mark&bull;8226
Command key (Apple)-8984
Option key (Apple)-8997
Peace symbol-9774
Yin Yan-9775
black scissors-9986
White scissors-9988
Circled plus&oplus;8853
Dagger double&Dagger;8225
Dagger single&dagger;8224
Em dash&mdash;8212
En dash&ndash;8211
Non-break hyphen-8209
·Middle dot&middot;183
Horizontal ellipsis&hellip;8230
«Guillemet left&laquo;171
»Guillemet right&raquo;187
Quote single left&lsquo;8216
Quote single right&rsquo;8217
Quote single lower&sbquo;8218
Quote double left&ldquo;8220
Quote double right&rdquo;8221
Quote double lower&bdquo;8222


Latin language diacritical characters

Character HTMLvalue
ÀA upper grave&Agrave;192
ÁA upper acute&Aacute;193
ÂA upper circumflex&Acirc;194
ÃA upper tilde&Atilde;195
ÄA upper Umlaut&Auml;196
ÅA upper ringed&Aring;197
ÆAE upper&AElig;198
ÇC upper cedilla&Ccedil;199
ÈE upper grave&Egrave;200
ÉE upper acute&Eacute;201
ÊE upper circumflex&Ecirc;202
ËE upper umlaut&Euml;203
ÌI upper grave&Igrave;204
ÍI upper acute&Iacute;205
ÎI upper circumflex&Icirc;206
ÏI upper umlaut&Iuml;207
ÐEth upper&ETH;208
ÑN upper tilde&Ntilde;209
ÒO upper grave&Ograve;210
ÓO upper acute&Oacute;211
ÔO upper circumflex&Ocirc;212
ÕO upper tilde&Otilde;213
ÖO upper umlaut&Ouml;214
ØO upper slash&Oslash;216
ŒOE upper&OElig;338
ŠS upper caron&Scaron;352
ÙU upper grave&Ugrave;217
ÚU upper acute&Uacute;218
ÛU upper circumflex&Ucirc;219
ÜU upper umlaut&Uuml;220
ÝY upper acute&Yacute;221
ŸY upper umlaut&Yuml;376
ÞThorn upper&THORN;222
Character HTMLvalue
àA lower grave&agrave;224
áA lower acute&aacute;225
âA lower circumflex&acirc;226
ãA lower tilde&atilde;227
äA lower Umlaut&auml;228
åA lower ringed&aring;229
æAE lower&aelig;230
çC lower cedilla&ccedil;231
èE lower grave&egrave;232
éE lower acute&eacute;233
êE lower circumflex&ecirc;234
ëE lower umlaut&euml;235
ìI lower grave&igrave;236
íI lower acute&iacute;237
îI lower circumflex&icirc;238
ïI lower umlaut&iuml;239
ðEth lower&eth;240
ñN lower tilde&ntilde;241
òO lower grave&ograve;242
óO lower acute&oacute;243
ôO lower circumflex&ocirc;244
õO lower tilde&otilde;245
öO lower umlaut&ouml;246
øO lower slash&oslash;248
œOE lower&oelig;339
šS lower caron&scaron;353
ùU lower grave&ugrave;249
úU lower acute&uacute;250
ûU lower circumflex&ucirc;251
üU lower umlaut&uuml;252
ýY lower acute&yacute;253
ÿY lower umlaut&yuml;255
þThorn lower&thorn;254


Greek characters

Character HTMLvalue
ΑUpper alpha&Alpha;913
ΒUpper beta&Beta;914
ΓUpper gamma&Gamma;915
ΔUpper delta&Delta;916
ΕUpper epsilon&Epsilon;917
ΖUpper zeta&Zeta;918
ΗUpper eta&Eta;919
ΘUpper theta&Theta;920
ΙUpper iota&Iota;921
ΚUpper kappa&Kappa;922
ΛUpper lambda&Lambda;923
ΜUpper mu&Mu;924
ΝUpper nu&Nu;925
ΞUpper xi&Xi;926
ΟUpper omicron&Omicron;927
ΠUpper pi&Pi;928
ΡUpper rho&Rho;929
ΣUpper sigma&Sigma;931
ΤUpper tau&Tau;932
ΥUpper upsilon&Upsilon;933
ΦUpper phi&Phi;934
ΧUpper chi&Chi;935
ΨUpper psi&Psi;936
ΩUpper omega&Omega;937
Character HTMLvalue
αLower alpha&alpha;945
βLower beta&beta;946
γLower gamma&gamma;947
δLower delta&delta;948
εLower epsilon&epsilon;949
ζLower zeta&zeta;950
ηLower eta&eta;951
θLower theta&theta;952
ϑLower theta&thetasym;977
ιLower iota&iota;953
κLower kappa&kappa;954
λLower lambda&lambda;955
μLower mu&mu;956
νLower nu&nu;957
ξLower xi&xi;958
οLower omicron&omicron;959
πLower pi&pi;960
ρLower rho&rho;961
σLower sigma&sigma;963
ςLower final sigma&sigmaf;962
τLower tau&tau;964
υLower upsilon&upsilon;965
φLower phi&phi;966
χLower chi&chi;967
ψLower psi&psi;968
ωLower omega&omega;969


Mathematical symbols and operators

Character HTMLvalue
(Left parenthesis&lpar;40
)Right parenthesis&rpar;41
<Less than&lt;60
=Equal to-61
>Greater than&gt;62
Less or equal&le;8804
Greater or equal&ge;8805
Not equal to&ne;8800
Almost equals&asymp;8776
Similar to&sim;8764
Equivalent to&equiv;8801
Proportional to&prop;8764
For all&forall;8704
±Plus or minus&plusmn;177
Asterisk operator&lowast;8727
Square root&radic;8730
nth power-8319
N-ary product&prod;8719
N-ary summation&sum;8721
Vector product&otimes;8855
Backward difference&nabla;8711
Dot operator&sdot;46
Character HTMLvalue
[Left square bracket &lsqb;91
]Right square bracket &rsqb;93
{Left curly bracket &lcub;123
}Right curly bracket &rcub;125
Bracket left-pointing&lang;8249
Bracket right-pointing&rang;8250
Fraction slash&frasl;8260
Logical and&and;8711
Logical or&or;8744
An element of&isin;8712
Not an element of&notin;8713
Contains member&ni;8715
Superset of&sup;8835
Superset or equal&supe;8839
Subset of&sub;8834
Subset or equal&sube;8838
Not a subset of&nsub;8836
Null set, diameter&empty;8709
Partial differential&part;8706
Per mille&permil;8240
Minute, feet&prime;8242
Second, inches&Prime;8243
There exists&exist;8707
There does not exist-8708
Horizontal ellipsis&hellip;8230
Ceiling left&lceil;8968
Ceiling right&rceil;8969
Floor left&lfloor;8970
Floor right&rfloor;8971


Overview - HTML special characters codes

Notice that some character codes are case sensitive. For example, the letter Ä is produced by the code &Auml; and the letter ä is produced by &auml;.

There are some characters that cannot be directly typed into the text of web pages either because your keyboard does not support them or because of limitations set by HTML. For example, if extra spaces are added between words, the browser will ignore these and place a single space after each word regardless. So how are extra spaces added? One way is to use the special character code for the space character. Here is an example;

Here is some text with spacesbetween the words

and here is what the HTML script looks like;

<p> Here is some text &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
with spaces &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
between the words

Not exactly elegant, but it does the job. The text is separated out by the 'none-break space' character; or at least, it's special character code. Each special character code is preceded by an ampersand "&" and followed by a semicolon ";".

Many of the symbols listed here such as $ and can in fact be typed straight in as long as your keyboard supports them. Although all browsers will render an "&" symbol correctly when you type it into your text, it is not considered valid by the W3C and may cause ambiguous output in some circumstances. They recommend replacing it with the "&amp;" entity code. In particular, the "<" symbol will cause trouble if you type it into your html text because it will of course be interpreted as a tag opening operator. You will need to replace it with the "&lt;" entity code in your text to get the desired effect.


Alternative ways to render symbols

Direct character value entry

The entire range of symbols may in fact be entered directly from the keyboard. Each character has a unique numeric value shown in the right hand value column of these tables. This value can be entered while holding down the Alt key. To do this, you will need to use the number pad with numlock set on - not the number keys at the top of the keyboard. However, be aware that the ability to type characters directly into your text does not guarantee that they will be rendered as you want by browsers since they are subject to the same limitations set by HTML as any other typed character.

The entire Unicode repertoire of character values contains over 100,000 symbols which are contained in a range of encoding sets (tables to you and me) that go beyond the scope of this document. There are different internationalized encodings of Unicode which include character sets relevant to the geographic region for which the version is implemented. The complete Unicode repertoire continues to be added to and contains almost every symbol in use for human written communication. A more exhaustive set of character codes is to be found at

Indirect character value entry

A final method of writing special characters is to type the actual numeric character values discussed above into your HTML script. They needs to be formatted so that browsers will know how to interpret them. Here is an example;

The temperature is 20°c

and here is what the HTML script looks like;

<p>The temperature is 20&#176;c</p> 

The numeric value of the character shown in the right hand column of the tables above is preceded by "&#" and followed by a semicolon ";". The number that represents each symbol can vary depending on the character encoding that has been specified with the Content-Type meta tag¹ in the page header element. This means that if the character renders correctly in your browser, it should in theory work correctly in any browser. In practice this is not always the case. Safari in particular appears to have a somewhat limited embedded character set at the time of writing and will render unresolvable characters as a square. HTML imposes no restriction on which characters may be used by this method with the proviso that values 0 - 31 and 128 - 159 are not usable. These are reserved values and will not render predictably.




1 In order that web pages render as expected across all browsers, they must contain a Content-Type meta tag which specifies the Unicode character encoding to be used. If your web pages are written in English, then the following tag or one similar should be pasted into the top of the head element of every page you create;

    <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />.

If you generally write pages in another language, you need to identify a suitable character set encoding for your language of choice.