Skip to content
Shadegap

Method

How SHADEGAP audits a shade range

Four YouCam APIs, one colour-science engine, no black boxes. Every number in the report can be traced back to a measurement on this page.

1. A fixed, synthetic test panel

Shade labs test ranges on a recruited panel of people that covers every depth and undertone. SHADEGAP does the same with 24 synthetic faces made by YouCam AI Image Generator V2: six depth groups × four undertones (cool, neutral, warm, olive), with a mix of ages, genders and heritages. Each is a bare-skin, front-facing portrait in even, daylight-balanced light against neutral grey.

The panel is the same for every audit, so two ranges (or two versions of one range) can be compared fairly. Because the faces are synthetic, no real person's face is used. Brands can add consented customer photos on top, switch on regional face packs (South Asia, East & Southeast Asia, Middle East & North Africa) or generate an extra synthetic face for any heritage, depth and undertone.

2. Measuring skin colour with YouCam

Every face goes through YouCam AI Skin Tone Analysis, which returns the face's skin colour plus face-quality checks (lighting, angle, frontal pose). SHADEGAP converts that colour to CIELAB (D65): L* is lightness, a* runs green to red, b* runs blue to yellow.

Depth groups use the dermatology Individual Typology Angle, ITA° = atan((L* − 50) / b*). Its six bands (very light → dark) are shifted slightly, because YouCam's reading averages shaded skin and so reads a little darker than a spectrophotometer. Panel faces are grouped by the cell they were cast for; added faces by their measured ITA°.

One honest observation: YouCam separates depth very well across the panel (L* 33–66, ITA° +43 to −48), but the measured undertone varies less than the casting suggests. That is why undertone columns show the casting, while every match is computed on the measured colour.

Small customer photos are upscaled with YouCam AI Photo Enhance before measuring, and faces are found and framed on-device with MediaPipe first, so a bad photo is rejected before any credits are spent.

3. Matching: CIEDE2000

For every face × shade pair SHADEGAP computes ΔE00 (CIEDE2000), the industry-standard perceptual colour difference (Sharma et al., 2005; our implementation passes the published reference pairs). A face's closest shade decides its status:

  • Match: ΔE ≤ threshold (default 3; adjustable 1.5–5).
  • Near miss: up to threshold + 2.5. Wearable at a push, but visibly off in daylight.
  • Gap: anything further. The shopper has no usable shade.

Every miss is described by direction (too light, too dark, too pink, too ashy, not golden enough), which is what a shade chemist needs to know.

4. Weighting by market

A gap matters as much as the shoppers it represents. Each depth group gets a share of the market (equal, or illustrative US, UK and global mixes; a brand would plug in its own customer data), split evenly between that group's faces. Coverage is reported both as faces matched and as the share of the market matched.

5. Proposing new shades

New shades come from a greedy weighted set cover. The candidates are every unmatched face's own colour plus the midpoints of nearby unmatched pairs. Each round picks the candidate that moves the most market weight to “match”, re-centres it on the CIELAB centroid of the faces it serves (if it still serves them all), snaps it to an exact sRGB hex, and repeats. It stops when nothing is left to fix or the shade budget (1–5) is spent.

Each proposal comes with its CIELAB target, the two existing shades it slots between, the nearest existing shade, and the faces it rescues. That is a ready-made lab brief.

6. Showing it on the face

YouCam AI Makeup VTO renders full-coverage foundation in the closest existing shade and in the proposed one. Skin smoothing is switched off so you see the shade, not an airbrush filter. A wrong shade shows as a face that looks lighter, greyer or more orange than the neck. The renders are visual proof; every number in the report comes from the skin-tone measurement, not from the renders (VTO blends foundation into skin, so pixel colour on a render is not a reliable measure). The demo's renders are pre-computed; on your own faces each render is a live API call.

7. The AI analyst

Gemini (with round-robin keys and failover) receives a plain-text summary of the audit (every unmatched face, ΔE, proposal and setting) and answers questions grounded only in those numbers. It also writes the executive brief, names proposed shades in the brand's style, and imports shade lists from messy text without inventing colours.

Limits, honestly

  • Photo-based colour depends on lighting and camera, so treat ΔE values as relative, not absolute.
  • Brand hex values must describe the shade on skin (a drawdown), not the bottle.
  • 24 faces is a screening panel. Use it to find and prioritise gaps, then confirm with physical drawdowns and wear tests on real people.
  • Foundation is more than colour: finish, oxidation and coverage also decide whether a shade works.