Accessible contrast, secondary palettes and why one brand colour is never enough.
Most brand palettes are chosen for a homepage and then fall apart the first time someone builds a form, a chart or an error state.
One brand colour is never enough
A working system needs a primary, a supporting accent, a neutral scale from near-white to near-black, and semantic colours for success, warning and error. Without those, teams invent their own reds and greens, and the brand drifts within months.
Check contrast before falling in love
Body text needs a 4.5:1 contrast ratio against its background, and large text 3:1. Plenty of attractive brand colours cannot carry white text at all, which means either the button label is illegible or someone quietly darkens the brand colour for the web. Decide that deliberately with a darker variant in the palette.
Define tokens, not hex codes
Name colours by role, such as surface, text-muted or accent-strong, rather than by appearance. Roles survive a rebrand and a dark mode; a variable called light-blue does not.
Test the palette on the ugliest screen you have, usually a dense data table or a form full of validation messages. If it holds there, it will hold on the marketing pages.
Want this for your business?
Let's talk about how we can help you build and grow.


