Color Memory Game
By John K.··12 min read

The ugliest color in the world, measured: Pantone 448C is #4A412A

Pantone 448C was chosen by survey as the world's ugliest color and put on Australian cigarette packs. Measured against the sRGB gamut, it turns out not to be extreme at all: it sits 7.90 CIEDE2000 units from espresso brown, inside a pocket holding 0.19 percent of all displayable colors, and every hue available at its lightness and chroma is just as drab.

In 2012 the Australian government put a single color on every cigarette pack sold in the country. It had spent months looking for the most repellent color it could find, and the search did not involve any colorimetry at all. A research agency showed color swatches to around a thousand smokers and asked which ones they liked least. The winner was Pantone 448C, and it has been called the world’s ugliest color ever since.

That is a claim produced entirely by asking people. Nobody has checked whether it survives measurement. So we ran 448C through the same pipeline we use for every other color on this site, and the result is not what the reputation suggests. The world’s ugliest color is not an extreme. It is an ordinary member of a very small, very crowded neighbourhood, and its closest neighbours include the brown that coffee is sold in.

Where Pantone 448C actually sits

The color is #4A412A, or rgb(74, 65, 42). Converted into CIELAB, the perceptual space where distances mean something, it comes out at L* 27.86, a* −0.05, b* 15.46. Its chroma is 15.46 and its hue angle is 90.2 degrees, which is the yellow direction.

Pantone 448C
#4A412A · L* 27.86 · C* 15.46 · hue 90.2°
rgb(74, 65, 42) · a* is −0.05, so it sits almost exactly on the yellow axis

Two hex values circulate for this color, #4A412A and #4A412C. They are 0.81 units apart in CIEDE2000, well under the 2.3 units it takes for a person to see a difference, so the argument about which one is correct is an argument about nothing. Worth saying plainly too: 448C is a spot ink, and any hex is a conversion of it. The color almost everyone actually encounters is the screen version, which is what we measured.

Sweeping the whole sRGB gamut at a three step interval gives 636,056 colors to compare it against. The median displayable color has L* 57.45 and C* 56.74. Against that distribution, 448C sits in the bottom 8.0 percent for lightness and the bottom 4.5 percent for chroma. It is dark and it is dull. Those are the only two ways in which it is unusual at all, and neither is rare enough to be interesting on its own. Roughly one displayable color in twenty-two is duller than this.

It is 3.4 just noticeable differences from espresso

Here is the measurement that undermines the whole legend. We took a corpus of 131 named shades, the same one the site’s name that color mode draws on, and measured every one against 448C. The nearest name in the corpus is taupe, at 7.19 units. Then we checked two browns the corpus does not carry, using their commonly cited hexes: espresso comes out at 7.90 and chocolate at 10.09.

448C to taupe #483C327.19 · 3.1 JND
448C to espresso #4B36217.90 · 3.4 JND
448C to chocolate #3F2A1410.09 · 4.4 JND
448C to charcoal #36454F19.30 · 8.4 JND
448C to red #FF000039.72 · 17.3 JND
448C to navy blue #00008045.48 · 19.8 JND

A just noticeable difference in this space is about 2.3 units. So the world’s ugliest color is 3.4 noticeable steps from espresso and 4.4 from chocolate. Those are colors companies choose on purpose, print on packaging on purpose, and use to make a product look expensive. Put a different way: the volume of sRGB lying within espresso’s distance of 448C is 0.186 percent of the gamut. The color designed to stop people buying cigarettes and the color used to sell coffee are inside the same fifth of one percent of everything a screen can show.

We are not claiming a person cannot tell them apart. Three JNDs is a visible gap, and side by side the espresso reads warmer and the 448C reads greener. The point is the scale. Whatever separates a color that repels from a color that sells, it is happening across a distance smaller than the gap between two shades of the same paint chip.

No hue can rescue it, and no hue is to blame

The obvious next question is whether the yellow-green hue angle is doing the damage. Australia’s Department of Health originally called the color olive green, then changed the wording to drab dark brown after the Australian Olive Association objected to the association. If hue were the problem, moving around the circle should find something better.

So we held L* and C* at exactly 448C’s values and walked the hue circle in 15 degree steps. All 24 hues turn out to be displayable in sRGB, so there is no gamut excuse for any of them.

the yellow mark at 90° is Pantone 448C345°

Every one of those is drab. The nearest name for each, running around the circle, goes eggplant, caput mortuum, bistre, taupe, feldgrau, charcoal, eggplant. Caput mortuum is Latin for dead head, an old pigment name. There is nothing on that ring anyone would choose for a logo. Changing the hue of 448C does not move you toward a better color, it moves you sideways through a set of equally unloved ones.

We expected the reason to be that hue loses its power in dark colors, and that turned out to be wrong. Measuring the widest CIEDE2000 gap between any two hues on the circle, at chroma after chroma, hue’s reach barely responds to lightness at all. It responds almost entirely to chroma.

C* 514.4
C* 1026.6
C* 15.46 (448C)37.6
C* 2044.0
C* 3053.8

At 448C’s chroma of 15.46, the entire hue circle spans 37.5 units. That is the whole of hue, every direction it can point, available at that purity. And it is less than the 45.48 units between 448C and plain navy blue. The full color wheel at 448C’s chroma is a smaller move than one step out of it. Chroma, not hue, is the axis that had already made the decision. This is the same mechanism that makes monochromatic palettes feel safe: drop the chroma far enough and hue stops being an opinion.

The names around it are all substances

The 10 colors in the corpus that fall within 20 units of 448C share something that has nothing to do with wavelengths.

Taupe #483C32 · 7.19
French for mole, the animal
Bistre #3D2B1F · 10.97
pigment made from beechwood soot
Umber #635147 · 11.38
an iron oxide earth, dug up
Sepia #704214 · 14.58
cuttlefish ink
Wenge #645452 · 14.93
a dark African hardwood
Feldgrau #4D5D53 · 15.62
German for field grey, a uniform
Gunmetal #2A3439 · 17.05
an alloy
Russet #80461B · 17.72
coarse cloth, and a potato
Charcoal #36454F · 19.30
burnt wood
Hunter Green #355E3B · 19.32
clothing for not being seen in

Every one of those names is taken from a material: soot, earth, ink, alloy, hardwood, burnt wood, a uniform, coarse cloth, a mole. This region of color space has no aspirational vocabulary. It has an inventory. Compare that with the crowded parts of the corpus, where names cluster around desire rather than substance, and the pattern in color psychology shows up again: the words attached to a color carry most of the feeling people report about it.

We did test the stronger version of this, that 448C occupies a linguistic void, and it does not hold up. Measured against the corpus, 448C has 10 names within 20 units where the median named shade has 14, and its nearest-name distance of 7.19 makes it more isolated than 63.8 percent of displayable colors. Isolated, then, but nowhere near record-setting. For scale, the most unnameable color in sRGB by this measure is #14001C, a near-black violet sitting 20.37 units from Tyrian purple. 448C is not linguistically abandoned. It is just surrounded by nouns instead of adjectives.

Mixing paint pulls you toward this region, but not to 448C

Anyone who has mixed paint knows the sensation of everything trending toward the same disappointing brown. We wanted to know whether 448C is where that process lands, so we used the subtractive pigment model from the color mixing chart, which takes the geometric mean of reflectance rather than the average of light, and mixed every combination of 18 saturated pigments.

  • One pigment alone averages 42.15 units from 448C.
  • Two pigments: 35.12. Three: 31.29. Four: 28.99. Five: 27.40. Six: 26.19.
  • All 18 at once lands on #592F36, a dark maroon at L* 25.0 and C* 20.4, still 23.14 units away.

So mixing converges, but not on 448C. It converges on drabness, and the hue it settles on is red-brown rather than olive. The zone worth naming is the dark, near-neutral, yellow-to-green box around 448C, meaning L* under 45, C* under 25, hue between 50 and 110 degrees. That box holds 0.532 percent of the sRGB gamut. It catches 4.0 percent of two-to-five pigment mixtures, an enrichment of 7.5 times.

That is the honest version of the mud intuition. Mixing does bias you toward the neighbourhood of the world’s ugliest color by a factor of seven and a half. It does not deliver you to the exact address, and the popular idea that 448C is what you get when you mix everything together is not true. If you want the mechanism behind that in detail, what colors make brown covers why subtractive mixing collapses toward low chroma so fast.

What the measurement actually says

448C works. Australia’s plain packaging rules were followed by measurable declines in smoking prevalence, and other countries copied the format. But nothing in the color’s coordinates predicts that, because the coordinates are shared with espresso. What the survey found was not an ugly color. It was a color with no marketing attached to it, placed on an object people already felt conflicted about, next to a photograph of a diseased lung.

Context does the work. The same argument runs through the dress, where identical pixels read as two different colors depending on the illuminant people assume, and through color constancy, where the visual system quietly rewrites what it reports. A color is never seen on its own. 448C on a cigarette pack is repellent. The same color, three noticeable steps away and labelled espresso, is a premium finish.

One more thing to note about the legend. The color is widely called “opaque couché”, and that name is a mistake.Pantone opaque couché is the French name for the swatch library in Adobe Illustrator that contains the color, the same library English users see as Pantone solid coated. Somewhere along the line a library name got attached to a single swatch, and the most repeated fact about the world’s ugliest color is a filename.

The numbers in one place

  • Pantone 448C is #4A412A, L* 27.86, C* 15.46, hue 90.2 degrees. Bottom 8.0 percent of sRGB for lightness, bottom 4.5 percent for chroma.
  • It is 7.90 units from espresso, 3.4 just noticeable differences, inside a pocket holding 0.186 percent of the gamut.
  • All 24 hues at its lightness and chroma are displayable and all are drab. The full hue circle there spans 37.5 units, less than the 45.48 to navy blue.
  • Hue’s reach is set by chroma, not lightness: 14.4 units at C* 5, 37.6 at C* 15.46, 53.8 at C* 30.
  • Its named neighbours are soot, earth, ink, alloy and uniforms. 10 names within 20 units against a median of 14.
  • The drab box holds 0.532 percent of sRGB but catches 4.0 percent of pigment mixtures, a 7.5 times enrichment. Mixing all 18 pigments gives #592F36, not 448C.

If you want to find out how well you can actually hold a color like this, dark and almost neutral, the color memory game is unkind about it, because a color with barely any chroma gives your memory almost nothing to label. The hex mode is worse again, since #4A412A and #4A412C are the same color to your eye and different numbers on the keyboard. For the rest of this neighbourhood there is shades of brown, and for the general question of how much of a color survives the trip into memory, how many colors you can see.