One foundation, forty shades: how make-up turns into a variant explosion, why no two brands name a colour the same way, and how attribute mapping keeps the whole range filterable.
One foundation. Forty shades. Each shade is its own sellable unit — with its own number, its own name, its own GTIN, and ideally its own swatch image. Multiply that across a lipstick range, a concealer line and a dozen brands, and a make-up assortment stops behaving like a catalog and starts behaving like a spreadsheet with a thousand near-identical rows.
Product data for make-up is a shade problem: the colour variants of a single product explode into dozens of records that no two suppliers name the same way. That's what separates make-up from the rest of a beauty range — skincare and fragrance are usually one SKU per product, but a foundation is a whole matrix. This is the sharpest sub-problem of the broader beauty & cosmetics data challenge.
In most of a beauty catalog, one product equals one record. Make-up breaks that rule. A single foundation lives as a range of shades, and every shade is a full variant that has to carry its own data:
So one product balloons into 20–50 variants that all need to be grouped as one family, yet kept individually addressable. Handle that in Excel and a single foundation launch is an afternoon of copy-paste — before you get to the next brand.
There is no shared shade language in make-up. Every brand invents its own, and it arrives in your feed exactly as the brand thinks about it — not as your shop needs it:
Import all of that unfiltered and your filter for „skin tone“ never groups anything, the same beige appears three times under three names, and a foundation range can't be sorted light-to-deep. The naming chaos is the reason the shade problem hurts — and it's a mapping problem, not a data-entry one.
The standards a beauty retailer relies on do real work at the identification layer, but none of them carries a normalized shade taxonomy. Here's the honest split:
| Data layer | What the standard delivers | Where it stops |
|---|---|---|
| Unique identification | GTIN/EAN identifies each shade as a sellable unit | Says nothing about what the shade looks like |
| Category classification | eCl@ss groups make-up into product categories | No shade attributes (undertone, depth, finish) |
| Content aggregation | ICEcat / Open Icecat may carry brand copy for big lines | Thin for indie brands and fast-rotating shade drops |
| Shade naming | — | No standard exists; every brand names its own way |
| Variant grouping | — | Must be derived from the supplier data itself |
In short: GTIN and eCl@ss let you identify and slot a product, and that matters. What they don't give you is the shade structure — the undertone, depth and finish that make a range filterable, and the grouping that turns 40 loose records into one product with 40 variants. That has to be built from the messy supplier field.
The core of it is attribute mapping plus variant grouping, run across every supplier at once — and that's what Productbay is built for:
The result is a make-up assortment where every shade is addressable, every range is sortable light-to-deep, and a shopper's „warm, medium, matte“ filter actually returns the right products. For the full beauty picture see the beauty & cosmetics overview; Productbay is built for specialist retailers running multi-supplier catalogs — from single shops to large chains.
Shade matrices, inconsistent naming, one image per variant — make-up is the hardest corner of a beauty catalog. See how Productbay maps every supplier's shades onto one structure and groups the variants in a 30-minute walkthrough.
Get started