Colour science
None of this is our invention.
The standards below are public, decades old, and used every day in printing, paint, textiles and film. The unusual thing is not that we use them — it is that most shade matching does not.
Start here
Colour is not a property of an object.
This sounds like a philosophy-seminar point and it is actually the whole engineering problem. An object does not have a colour. It has a spectral reflectance — a curve describing what fraction of each wavelength it sends back. Colour is what happens when that curve is multiplied by the light falling on it and then interpreted by an eye.
Change the light and the colour changes, even though the object has not. Everyone knows this intuitively from buying something under shop lighting and disliking it at home. What is less obvious is that it makes pixel-to-pixel matching structurally unfixable: you are comparing two products of reflectance and illumination, and pretending the illumination term is the same on both sides.
So the job is to get back to the reflectance curve. Once you have that, the lighting has been cancelled out and a comparison finally means something.
Metamerism is the sharp end of this. Two surfaces with different reflectance curves can look identical under one light and obviously different under another. A foundation that matched in the shop and is wrong in daylight is not your imagination — it is a metameric failure, and it is invisible to any system working from pixels.
We run it backwards
Conventional try-on compares the bottom row. ExactHue Core inverts each step to recover the box on the top right — the only quantity in the diagram that belongs to the person rather than the room.
The standards
What each one is for.
Four pieces of published colorimetry do most of the work. They are not interchangeable, and using the wrong one is a common way to be confidently inaccurate.
CIE 1931 & the standard observer
The foundation. It defines how a defined average human eye responds to each wavelength, which lets a full spectral curve be reduced to three numbers without losing what a person would actually see. Nearly a century old and still the reference every other standard here builds on.
CIE L*a*b*
A device-independent space with lightness on one axis and two opponent colour axes. Its value is that it is roughly perceptual: moving a fixed distance feels like a similar amount of change wherever you are. Roughly, though — and the places it is wrong are exactly the places skin tones live.
CIEDE2000
The difference metric we report. It patches the known non-uniformities of the simple Euclidean distance in L*a*b*, particularly in blues and near-neutrals, with corrections for lightness, chroma and hue. When we quote a number, this is the formula behind it.
CAM16-UCS
A colour appearance model, which is a different thing again. It accounts for the viewing environment — how bright the surround is, what the eye has adapted to — because the same stimulus genuinely looks different in a dim room and a bright one. Matching happens here, where perceptual distance behaves most predictably.
Illuminants
Six lights, modelled as spectra.
Each of these is a full spectral power distribution, not a colour-temperature shortcut. That distinction is why fluorescent retail lighting does not break the match.
The F-series matters more than its share of the table suggests. Narrow-band fluorescents put their energy in a few spikes rather than spreading it smoothly, so two skin tones that look distinct in daylight can converge under F11 — and a system that treats light as a single colour temperature has no way to know.
The skin model
Two pigments do nearly all of it.
Human skin colour is dominated by melanin and haemoglobin. That is a gift, because it means the space of physically possible skin reflectance curves is far smaller than the space of arbitrary curves.
Recovering a reflectance curve from three numbers is, in the general case, hopelessly underdetermined — infinitely many curves produce the same pixel. Constraining the answer to curves that real skin can actually produce collapses that ambiguity, which is what makes the estimate stable on an ordinary phone camera rather than requiring laboratory equipment.
It is also why undertone falls out of the model rather than being bolted on. Melanin concentration largely drives depth; haemoglobin drives the warm-to-cool axis people call undertone. They are separate parameters, so a warm and a neutral customer at identical depth get genuinely different recommendations.
Where the model is weakest
Worth knowing, because we would rather you heard it here.
- Existing coverage. Heavy foundation hides the very thing being measured. The engine detects it and says so.
- Sunburn and flushing. Transient haemoglobin changes read as an undertone shift, because to the model that is exactly what they are.
- Very low light. Sensor noise swamps the signal before the constraint can help.
- Metallic and duochrome finishes. On the product side, not the skin side — some finishes simply are not describable by one measured colour.
Reading the number
What a ΔE00 actually means.
The single most useful thing on this page, if you take away one thing.
Thresholds are approximate and depend on viewing conditions, sample size and the observer. Treat them as a good working scale rather than a hard boundary — the useful point is that the difference between 0.7 and 3.7 is not a matter of degree, it is the difference between a sale and a refund.
Glossary
Terms you will hear us use.
Spectral reflectance
The fraction of light a surface reflects at each wavelength, usually across the visible range of roughly 380 to 740 nanometres. It belongs to the object and does not change when the lighting does, which is precisely why it is worth the trouble of recovering.
Illuminant
A standardised description of a light source, given as a spectral power distribution. Not the same as colour temperature, which is a single number summarising a whole curve and therefore throws away the detail that matters most for skin.
Correlated colour temperature (CCT)
The temperature of a theoretical black body whose light most closely resembles the source, in kelvin. Useful shorthand, badly misleading on its own — two lights can share a CCT and render skin completely differently.
Undertone
The warm-to-cool axis underneath depth, driven largely by haemoglobin. Commonly split into warm, neutral, olive and cool. Getting depth right and undertone wrong is the mismatch customers notice fastest and forgive least.
Gamut
The range of colours a given device or medium can actually reproduce. A shade can be perfectly real and still sit outside a screen's gamut, which is one reason we flag out-of-gamut SKUs during catalogue ingestion rather than letting them fail quietly on a product page.
Fitzpatrick scale
A six-point classification originally developed to describe how skin responds to ultraviolet exposure. We use it purely as a sampling taxonomy, to make sure coverage is balanced and to report accuracy per band. It is a research tool here, not a medical assessment, and ExactHue makes no health claim of any kind.
Want to go deeper than a web page allows?
We will walk your science and engineering teams through the benchmark construction, the per-band results, and the cases we have not solved — under NDA if you prefer.