Colorblind-Safe Palette Designer
Design an evenly-spaced palette that stays discriminable under deuteranopia, protanopia and tritanopia.
Overview
The Colorblind-Safe Palette Designer builds evenly-spaced categorical palettes whose entries remain distinguishable under the three main forms of dichromatic colour vision — deuteranopia, protanopia and tritanopia. Choose the number of categories, pick a chroma and lightness target, and the tool searches for a hue sequence where every pair clears a minimum perceptual-difference threshold in every simulation.
It is built for data-visualisation work where the legend relies on colour alone: dashboards, scientific charts, KPI tiles and map choropleths. Designers can also use it as a starting point for status badges or tag colours that need to survive accessibility review.
How it works
Candidate palettes are generated in OKLCH so that lightness and chroma stay constant across the categories — a key property for categorical scales. Each candidate is then run through the Brettel/Viénot dichromacy simulations and the pairwise OKLab Delta-E between every two simulated colours is computed.
A palette only qualifies if the minimum pairwise distance, taken across the original palette and all three simulated variants, exceeds the safety threshold. The hue spacing is optimised iteratively to maximise the worst-case distance, so the result is the most distinguishable arrangement available at the chosen lightness and chroma.
Examples
3 categories, L 0.65, C 0.12 → #d96b58 #4ea871 #5079c4
4 categories, L 0.60, C 0.12 → #c25a72 #aa8a39 #389a86 #5d76d9
6 categories, L 0.70, C 0.10 → #d28a85 #b69d52 #6caa6c #5fa5af #8e96d4 #c189c0
FAQ
How many categories can I safely use?
Five to seven is the practical ceiling for purely-colour-based categorisation, even with a safe palette. Beyond that, pair colour with shape, pattern or direct labelling.
Why are all the colours similar in lightness?
Fixed lightness keeps the palette categorical — no single entry stands out as more important. If you need an ordered ramp, use a sequential palette instead.
Will this palette pass WCAG contrast?
Not automatically. Categorical palettes are about distinguishing colours from each other, not from a background. Always test foreground/background pairings with the contrast checker.
Can I lock one colour and let the tool fill the rest?
The designer can be seeded with a brand hue, and the remaining slots are then chosen to maximise their distance from it and from each other under the three simulations.