Short answer
CIELAB (L*a*b*), defined by the CIE in 1976, converts XYZ into a lightness axis L* and two opponent axes — a* from green to red and b* from blue to yellow — so that equal distances correspond roughly to equal perceived differences. LCh is the same space in polar form: lightness, chroma and hue angle. It became the industrial language for colour tolerances and ΔE, and is the basis of ICC colour management. Its weaknesses are known: it is only approximately uniform, and its hue lines bend, especially for blues.
Convert any colour into this system with the colour converter
CIELAB starts from XYZ and a reference white. Each of X, Y and Z is divided by the white's value and passed through a cube-root compression (with a linear segment near black), mimicking the eye's compressive response. L* comes from Y alone and runs from 0 for black to 100 for the reference white. a* is the difference between the compressed X and Y terms, b* between Y and Z, giving red–green and yellow–blue opponent axes as in human colour vision. LCh expresses the a*b* plane as chroma C* (distance from the neutral axis) and hue angle h. The reference white must always be stated: graphic-arts and ICC work use D50, many display tools D65, and the same colour has different a*b* numbers under each.
Before CIELAB, colour differences were reported in dozens of incompatible formulas. A single, openly defined, approximately uniform space let paint, plastics, textile, printing and automotive suppliers agree on numbers: a target, a measured sample and a distance between them, ΔE*ab. Later formulas — CIE94 and CIEDE2000 — keep CIELAB coordinates but weight lightness, chroma and hue differences to correct its non-uniformities. Nearly every spectrophotometer reports CIELAB, and tolerances in contracts are written in it. That installed base, not any claim to be the best perceptual model, is why it remains the standard.
CIELAB's hue angle does not stay perceptually constant as chroma changes for some hues. The table on this page holds the CIELAB hue of pure sRGB blue fixed and reduces chroma: the result, measured in OKLCH, drifts by nearly 40° from blue towards purple. Gradients from blue to white calculated in CIELAB pass through lavender for the same reason. This is a known defect of the space rather than a calculation error, and it is why CSS gamut mapping and many modern design tools use OKLCH instead. For measurement and tolerancing — small differences between similar colours — the effect matters much less, and CIEDE2000 includes a term specifically for the blue region.
CIELAB describes a colour stimulus against a reference white. It does not account for the surround, the level of illumination, the size of the sample or the observer's adaptation beyond the white normalisation, so the same Lab value can look different on a dark and a light background, or in dim and bright light. Colour-appearance models such as CIECAM02 and CAM16 add those factors. CIELAB also has no fixed gamut; many valid-looking L*a*b* triples are outside any display or even outside visible colour, so conversions back to RGB need gamut handling.
| CIELAB C* | CIELAB hue (held) | Resulting sRGB | OKLCH hue |
|---|---|---|---|
| 133.8 | 306.3° | #0000ff | 264.1° |
| 100.0 | 306.3° | #4626cf | 279.4° |
| 70.0 | 306.3° | #5335a7 | 289.2° |
| 40.0 | 306.3° | #55417f | 296.8° |
| 15.0 | 306.3° | #51485f | 302.6° |
Why: Interpolated in CIELAB or CIE LCh, whose blue hue lines bend.
Fix: Interpolate in OKLab or OKLCH.
Why: Different reference white, observer (2° or 10°) or measurement geometry.
Fix: Compare only readings with matching illuminant, observer and geometry stated.
Each statement is labelled by kind — established fact, a standard’s requirement, observed market data, a convention, or Colourwise’s own interpretation or analysis — with the strength of the evidence behind it.
StandardStrong evidence
CIELAB and CIELUV are defined in the CIE's colorimetry reference, CIE 015:2018, together with colour-difference calculations.
StandardStrong evidence
The ICC profile connection space and CSS lab()/lch() use CIELAB relative to a D50 white.
Source: CSS Color Module Level 4; International Color Consortium: specifications and information
Colourwise analysisModerate evidence
Holding CIELAB hue constant while reducing the chroma of sRGB blue shifts its OKLCH hue by nearly 40°, towards purple.
Based on: Computed by Colourwise with its CIELAB (D65) and OKLCH converters; see the table on this page.
Caveat: Uses OKLCH hue as the judge of perceived hue, which is itself a model.
Source: CIE 015:2018 Colorimetry, 4th edition; A perceptual color space for image processing (Oklab)
FactModerate evidence
Ottosson reports that CIELAB's largest weakness is hue prediction, with blue hues predicted particularly badly.
Source: A perceptual color space for image processing (Oklab)
Reviewed 29 September 2026. Colourwise summarises its sources in its own words and does not reproduce standards text or proprietary colour data. Spotted an error? Tell us.