An HTML color name like tomato is not an approximation — it is a fixed alias for one exact sRGB value, identical in every browser. This page lists every named color with its HEX and RGB equivalent, grouped by family. To convert a value that is not in the list, use the Color Converter.
How Color Names Map to RGB
A named color is a keyword the CSS parser swaps for a specific triple of red, green and blue channel values. These three declarations are indistinguishable to the browser:
color: tomato;
color: #FF6347;
color: rgb(255, 99, 71);
Keywords are case-insensitive (Tomato and TOMATO both work) and contain no spaces or hyphens — it is lightsteelblue, never light steel blue. They are valid anywhere a CSS color is accepted, plus SVG fill and stroke, the canvas fillStyle property, and legacy HTML attributes such as bgcolor.
The 16 Original HTML 4.01 Colors
HTML 4.01 standardised exactly sixteen color names in 1999. These are the only ones that were ever "HTML colors" in a strict sense; everything else arrived through CSS.
| Name | HEX | RGB |
|---|---|---|
black |
#000000 |
rgb(0, 0, 0) |
silver |
#C0C0C0 |
rgb(192, 192, 192) |
gray |
#808080 |
rgb(128, 128, 128) |
white |
#FFFFFF |
rgb(255, 255, 255) |
maroon |
#800000 |
rgb(128, 0, 0) |
red |
#FF0000 |
rgb(255, 0, 0) |
purple |
#800080 |
rgb(128, 0, 128) |
fuchsia |
#FF00FF |
rgb(255, 0, 255) |
green |
#008000 |
rgb(0, 128, 0) |
lime |
#00FF00 |
rgb(0, 255, 0) |
olive |
#808000 |
rgb(128, 128, 0) |
yellow |
#FFFF00 |
rgb(255, 255, 0) |
navy |
#000080 |
rgb(0, 0, 128) |
blue |
#0000FF |
rgb(0, 0, 255) |
teal |
#008080 |
rgb(0, 128, 128) |
aqua |
#00FFFF |
rgb(0, 255, 255) |
Where "140 Colors" Comes From
Browsers had long accepted a much larger set inherited from the X11 window system. CSS Color Level 3 made it official in 2011 by defining 147 extended color keywords, the sixteen above plus 131 more. Seven of those are British-spelling duplicates — grey, darkgrey, darkslategrey, dimgrey, lightgrey, lightslategrey and slategrey. Set those aside and you get the 140 named colors everyone quotes.
CSS Color Level 4 later added rebeccapurple (#663399), named in memory of Rebecca Meyer, bringing the total to 141 distinct names. Two of those pairs resolve to the same value — aqua equals cyan and fuchsia equals magenta — so 141 names describe 139 distinct colors.
Complete HTML Color Name Reference
Every named color, with HEX and RGB, grouped by family.
Pinks
| Name | HEX | RGB |
|---|---|---|
pink |
#FFC0CB |
rgb(255, 192, 203) |
lightpink |
#FFB6C1 |
rgb(255, 182, 193) |
hotpink |
#FF69B4 |
rgb(255, 105, 180) |
deeppink |
#FF1493 |
rgb(255, 20, 147) |
palevioletred |
#DB7093 |
rgb(219, 112, 147) |
mediumvioletred |
#C71585 |
rgb(199, 21, 133) |
Reds
| Name | HEX | RGB |
|---|---|---|
lightsalmon |
#FFA07A |
rgb(255, 160, 122) |
salmon |
#FA8072 |
rgb(250, 128, 114) |
darksalmon |
#E9967A |
rgb(233, 150, 122) |
lightcoral |
#F08080 |
rgb(240, 128, 128) |
indianred |
#CD5C5C |
rgb(205, 92, 92) |
crimson |
#DC143C |
rgb(220, 20, 60) |
firebrick |
#B22222 |
rgb(178, 34, 34) |
red |
#FF0000 |
rgb(255, 0, 0) |
darkred |
#8B0000 |
rgb(139, 0, 0) |
Oranges
| Name | HEX | RGB |
|---|---|---|
orange |
#FFA500 |
rgb(255, 165, 0) |
darkorange |
#FF8C00 |
rgb(255, 140, 0) |
coral |
#FF7F50 |
rgb(255, 127, 80) |
tomato |
#FF6347 |
rgb(255, 99, 71) |
orangered |
#FF4500 |
rgb(255, 69, 0) |
Yellows
| Name | HEX | RGB |
|---|---|---|
gold |
#FFD700 |
rgb(255, 215, 0) |
yellow |
#FFFF00 |
rgb(255, 255, 0) |
lightyellow |
#FFFFE0 |
rgb(255, 255, 224) |
lemonchiffon |
#FFFACD |
rgb(255, 250, 205) |
lightgoldenrodyellow |
#FAFAD2 |
rgb(250, 250, 210) |
papayawhip |
#FFEFD5 |
rgb(255, 239, 213) |
moccasin |
#FFE4B5 |
rgb(255, 228, 181) |
peachpuff |
#FFDAB9 |
rgb(255, 218, 185) |
palegoldenrod |
#EEE8AA |
rgb(238, 232, 170) |
khaki |
#F0E68C |
rgb(240, 230, 140) |
darkkhaki |
#BDB76B |
rgb(189, 183, 107) |
Browns and tans
| Name | HEX | RGB |
|---|---|---|
cornsilk |
#FFF8DC |
rgb(255, 248, 220) |
blanchedalmond |
#FFEBCD |
rgb(255, 235, 205) |
bisque |
#FFE4C4 |
rgb(255, 228, 196) |
navajowhite |
#FFDEAD |
rgb(255, 222, 173) |
wheat |
#F5DEB3 |
rgb(245, 222, 179) |
burlywood |
#DEB887 |
rgb(222, 184, 135) |
tan |
#D2B48C |
rgb(210, 180, 140) |
rosybrown |
#BC8F8F |
rgb(188, 143, 143) |
sandybrown |
#F4A460 |
rgb(244, 164, 96) |
goldenrod |
#DAA520 |
rgb(218, 165, 32) |
darkgoldenrod |
#B8860B |
rgb(184, 134, 11) |
peru |
#CD853F |
rgb(205, 133, 63) |
chocolate |
#D2691E |
rgb(210, 105, 30) |
olive |
#808000 |
rgb(128, 128, 0) |
saddlebrown |
#8B4513 |
rgb(139, 69, 19) |
sienna |
#A0522D |
rgb(160, 82, 45) |
brown |
#A52A2A |
rgb(165, 42, 42) |
maroon |
#800000 |
rgb(128, 0, 0) |
Greens
| Name | HEX | RGB |
|---|---|---|
greenyellow |
#ADFF2F |
rgb(173, 255, 47) |
chartreuse |
#7FFF00 |
rgb(127, 255, 0) |
lawngreen |
#7CFC00 |
rgb(124, 252, 0) |
lime |
#00FF00 |
rgb(0, 255, 0) |
limegreen |
#32CD32 |
rgb(50, 205, 50) |
palegreen |
#98FB98 |
rgb(152, 251, 152) |
lightgreen |
#90EE90 |
rgb(144, 238, 144) |
mediumspringgreen |
#00FA9A |
rgb(0, 250, 154) |
springgreen |
#00FF7F |
rgb(0, 255, 127) |
mediumseagreen |
#3CB371 |
rgb(60, 179, 113) |
seagreen |
#2E8B57 |
rgb(46, 139, 87) |
forestgreen |
#228B22 |
rgb(34, 139, 34) |
green |
#008000 |
rgb(0, 128, 0) |
darkgreen |
#006400 |
rgb(0, 100, 0) |
yellowgreen |
#9ACD32 |
rgb(154, 205, 50) |
olivedrab |
#6B8E23 |
rgb(107, 142, 35) |
darkolivegreen |
#556B2F |
rgb(85, 107, 47) |
mediumaquamarine |
#66CDAA |
rgb(102, 205, 170) |
darkseagreen |
#8FBC8F |
rgb(143, 188, 143) |
lightseagreen |
#20B2AA |
rgb(32, 178, 170) |
darkcyan |
#008B8B |
rgb(0, 139, 139) |
teal |
#008080 |
rgb(0, 128, 128) |
Cyans
| Name | HEX | RGB |
|---|---|---|
aqua |
#00FFFF |
rgb(0, 255, 255) |
cyan |
#00FFFF |
rgb(0, 255, 255) |
lightcyan |
#E0FFFF |
rgb(224, 255, 255) |
paleturquoise |
#AFEEEE |
rgb(175, 238, 238) |
aquamarine |
#7FFFD4 |
rgb(127, 255, 212) |
turquoise |
#40E0D0 |
rgb(64, 224, 208) |
mediumturquoise |
#48D1CC |
rgb(72, 209, 204) |
darkturquoise |
#00CED1 |
rgb(0, 206, 209) |
Blues
| Name | HEX | RGB |
|---|---|---|
cadetblue |
#5F9EA0 |
rgb(95, 158, 160) |
steelblue |
#4682B4 |
rgb(70, 130, 180) |
lightsteelblue |
#B0C4DE |
rgb(176, 196, 222) |
lightblue |
#ADD8E6 |
rgb(173, 216, 230) |
powderblue |
#B0E0E6 |
rgb(176, 224, 230) |
lightskyblue |
#87CEFA |
rgb(135, 206, 250) |
skyblue |
#87CEEB |
rgb(135, 206, 235) |
cornflowerblue |
#6495ED |
rgb(100, 149, 237) |
deepskyblue |
#00BFFF |
rgb(0, 191, 255) |
dodgerblue |
#1E90FF |
rgb(30, 144, 255) |
royalblue |
#4169E1 |
rgb(65, 105, 225) |
blue |
#0000FF |
rgb(0, 0, 255) |
mediumblue |
#0000CD |
rgb(0, 0, 205) |
darkblue |
#00008B |
rgb(0, 0, 139) |
navy |
#000080 |
rgb(0, 0, 128) |
midnightblue |
#191970 |
rgb(25, 25, 112) |
Purples, violets and magentas
| Name | HEX | RGB |
|---|---|---|
lavender |
#E6E6FA |
rgb(230, 230, 250) |
thistle |
#D8BFD8 |
rgb(216, 191, 216) |
plum |
#DDA0DD |
rgb(221, 160, 221) |
violet |
#EE82EE |
rgb(238, 130, 238) |
orchid |
#DA70D6 |
rgb(218, 112, 214) |
fuchsia |
#FF00FF |
rgb(255, 0, 255) |
magenta |
#FF00FF |
rgb(255, 0, 255) |
mediumorchid |
#BA55D3 |
rgb(186, 85, 211) |
mediumpurple |
#9370DB |
rgb(147, 112, 219) |
rebeccapurple |
#663399 |
rgb(102, 51, 153) |
blueviolet |
#8A2BE2 |
rgb(138, 43, 226) |
darkviolet |
#9400D3 |
rgb(148, 0, 211) |
darkorchid |
#9932CC |
rgb(153, 50, 204) |
darkmagenta |
#8B008B |
rgb(139, 0, 139) |
purple |
#800080 |
rgb(128, 0, 128) |
indigo |
#4B0082 |
rgb(75, 0, 130) |
slateblue |
#6A5ACD |
rgb(106, 90, 205) |
darkslateblue |
#483D8B |
rgb(72, 61, 139) |
mediumslateblue |
#7B68EE |
rgb(123, 104, 238) |
Whites and off-whites
| Name | HEX | RGB |
|---|---|---|
white |
#FFFFFF |
rgb(255, 255, 255) |
snow |
#FFFAFA |
rgb(255, 250, 250) |
honeydew |
#F0FFF0 |
rgb(240, 255, 240) |
mintcream |
#F5FFFA |
rgb(245, 255, 250) |
azure |
#F0FFFF |
rgb(240, 255, 255) |
aliceblue |
#F0F8FF |
rgb(240, 248, 255) |
ghostwhite |
#F8F8FF |
rgb(248, 248, 255) |
whitesmoke |
#F5F5F5 |
rgb(245, 245, 245) |
seashell |
#FFF5EE |
rgb(255, 245, 238) |
beige |
#F5F5DC |
rgb(245, 245, 220) |
oldlace |
#FDF5E6 |
rgb(253, 245, 230) |
floralwhite |
#FFFAF0 |
rgb(255, 250, 240) |
ivory |
#FFFFF0 |
rgb(255, 255, 240) |
antiquewhite |
#FAEBD7 |
rgb(250, 235, 215) |
linen |
#FAF0E6 |
rgb(250, 240, 230) |
lavenderblush |
#FFF0F5 |
rgb(255, 240, 245) |
mistyrose |
#FFE4E1 |
rgb(255, 228, 225) |
Grays and black
| Name | HEX | RGB |
|---|---|---|
gainsboro |
#DCDCDC |
rgb(220, 220, 220) |
lightgray |
#D3D3D3 |
rgb(211, 211, 211) |
silver |
#C0C0C0 |
rgb(192, 192, 192) |
darkgray |
#A9A9A9 |
rgb(169, 169, 169) |
gray |
#808080 |
rgb(128, 128, 128) |
dimgray |
#696969 |
rgb(105, 105, 105) |
lightslategray |
#778899 |
rgb(119, 136, 153) |
slategray |
#708090 |
rgb(112, 128, 144) |
darkslategray |
#2F4F4F |
rgb(47, 79, 79) |
black |
#000000 |
rgb(0, 0, 0) |
Named Colors vs HEX vs RGB
Use a name for throwaway and diagnostic work — outline: 2px solid magenta to find a layout bug, or a quick prototype fill. Names are self-documenting in a way hex codes are not. The limitation is that there are only 141 of them and none will match your brand palette.
Use HEX for anything durable. It is the format design tools export, the format that copy-pastes cleanly between Figma and a stylesheet, and it supports alpha as a fourth pair of digits (#FF6347CC). Design tokens should be hex.
Use RGB when a channel value is computed rather than chosen — interpolating between two colors in JavaScript, or building a value from variables. Modern syntax takes space-separated channels with optional alpha: rgb(255 99 71 / 50%). Our HEX to RGB guide covers the arithmetic in both directions, and the Color Converter will translate a name, a hex code or an RGB triple into all three formats at once.
Two Quirks Worth Knowing
darkgray is lighter than gray
darkgray is #A9A9A9 (169 per channel). gray is #808080 (128 per channel). The "dark" one is roughly 32% brighter.
This is not a typo in the spec — it is a collision between two ancestries. X11 defined gray as #BEBEBE, a light grey, with darkgray at #A9A9A9 sitting just below it. HTML 4.01 independently defined gray as #808080. When CSS merged the two lists it kept HTML's gray and X11's darkgray, and the ordering broke.
The same merge explains the other famous oddity: green is #008000, a mid-dark green, because that is HTML 4.01's value, while X11's pure #00FF00 green survived under the name lime.
gray and grey are both valid
Both spellings are legal CSS for all seven grey keywords, and they compile to identical values. The risk is not the browser — it is everything around it. Colour maps in JavaScript libraries, design-tool imports and linters may recognise only one spelling. Pick one per codebase and enforce it.
Browser Support
All 140 CSS Color 3 keywords work in every browser in use, including old versions of Internet Explorer. rebeccapurple shipped across browsers during 2014 and 2015 and is safe to use today.
The important behaviour is what happens when a name is wrong. In CSS, an unrecognised keyword makes the whole declaration invalid, so it is dropped and the element keeps whatever colour it inherited. That is a clean failure you can spot in devtools.
Legacy presentational HTML attributes behave differently. The HTML spec's "legacy colour value" parsing coerces almost any string into a colour rather than rejecting it, which is why <body bgcolor="chucknorris"> renders a dark red instead of nothing at all. It is one more reason to set colour in CSS. If you are hand-writing markup, our HTML entities reference is the other lookup table you will end up wanting.
Frequently Asked Questions
Is there a color name for every hex code? No. There are 141 names covering 139 distinct colors, out of roughly 16.7 million possible RGB values. Anything outside that set needs a hex or RGB value.
Do named colors render the same in every browser? Yes. Each keyword is defined as an exact sRGB triple in the CSS specification, so there is no rounding or vendor interpretation.
Are transparent and currentColor named colors?
They are CSS colour keywords, but not named colors. transparent resolves to rgba(0, 0, 0, 0) and currentColor resolves to the element's computed color value.
How do I add transparency to a named color?
You cannot do it with the keyword alone. Convert it to RGB first, then add an alpha channel — tomato becomes rgb(255 99 71 / 50%).
Need a value that is not on this list? Paste any name, hex code or RGB triple into the Color Converter and get every format back instantly.