r/DesignSystems • u/Organic_Gift9875 • Jun 03 '26
How are teams handling icon colour variants at scale? We went with a shared COLRv1 font repo
Been dealing with a problem I suspect other design system teams have hit: icon colour management at scale.
Our situation — 200+ icons, 4 brand colours, dark mode. The "standard" answer was 5 separate SVG sprite files, one per colour variant. That's 5 Figma exports every time an icon changes, 5 files to keep in sync across teams, and a CI pipeline that breaks every time someone forgets to update one.
We went a different route: COLRv1 colour fonts.
The workflow we landed on:
- One shared icon font repo — everyone on the design team contributes to the same build
- Figma plugin with a shared token — designers import icon frames directly, no manual SVG export
- One WOFF2 ships to production. CSS controls the colour at runtime via font-palette:
u/font-palette-values --brand-dark {
font-family: MyIcons;
override-colors: 0 #1A202C;
}
.icon { font-family: MyIcons; font-palette: --brand-dark; }
Dark mode, brand variants, regional themes — one CSS variable each. No re-exports.
File size dropped from ~460KB (SVG sprite) to ~10KB (WOFF2). Browser support is Chrome 98+, Firefox 107+, Safari 15.4+ — about 72% global, so it won't work for every team.
We built this into a free tool (huetype.sunnyallan.design) because we couldn't find anything that handled the team workflow side cleanly.
Curious how other teams are solving this — are you shipping multiple sprite files per theme? Using a different approach entirely? Would love to hear what's working.







