The 60-30-10 Color Rule: A Practical System for Balanced UI Palettes
Author: David Deng Updated: August 2026 Category: Design & UI Reading time: ~9 min
You have five colors you like. You drop them all onto a settings page and it looks... busy. Not broken, just noisy — like the design is shouting. The fix is almost never "pick better colors." It is "use fewer of them, and give each a job." That is the entire idea behind the 60-30-10 rule, the single proportional system that separates a palette that looks designed from one that looks assembled.
This guide walks through the math, how to assign each color a role, how to choose the one accent that does the heavy lifting, and how to validate the result in both light and dark themes. When you are ready to build, our local color palette generator applies the split for you and previews it on real UI elements — entirely in your browser.
## The Rule, Plainly
Sixty percent, thirty percent, ten percent. Those are the surface areas each color family should occupy:
- 60% — Dominant. Usually a neutral: off-white, light gray, or (in dark mode) near-black. This is your background, large cards, and the empty space that lets content breathe.
- 30% — Secondary. A second neutral or a low-saturation tint that structures the page: text, dividers, sidebars, borders, and secondary surfaces.
- 10% — Accent. Your most saturated color, reserved for the few elements you want the eye to find first: the primary button, active link, focus ring, and key call-to-action.
The power of the rule is restraint. The accent only pops because it is rare. Spread it across half the page and it stops meaning anything.
## Why It Works (A Tiny Bit of Math)
The human eye reads importance through contrast and rarity. When 90 percent of a screen shares a calm, low-contrast family, the remaining 10 percent of saturated color becomes a magnet. Designers borrow this from interior design and cinematography, where a controlled color field makes a single highlight feel intentional. The 60-30-10 split is simply the ratio that consistently produces that effect without tipping into monotony or chaos.
## Assigning Roles, Step by Step
Do not start by picking the accent. Start with the dominant, because it sets the mood:
- Pick the dominant neutral first. Warm off-white for a friendly product, cool gray for a technical one, near-black for focus-heavy dashboards.
- Derive the secondary from it. Usually the dominant shifted in lightness by 8-15 percent. It must be distinct enough to show structure but never compete with content.
- Choose one accent with purpose. Match it to your brand or to the emotion you want: blue for trust, green for growth, orange/red for energy or urgency. Keep its saturation high and its area small.
- Add at most one semantic color. A red for errors and a green for success are fine, but treat them as part of the 10 percent, not extra accents.
## Light vs Dark: Invert the Roles, Keep the Accent
The rule transfers cleanly to dark mode, but the proportions flip to the background:
- In light mode the 60% is a light surface; in dark mode the 60% is a dark surface.
- The 30% becomes lighter surfaces (cards, text) instead of darker ones.
- The 10% accent stays the same hue — just make sure its lightness is high enough to read on a dark field. A midnight-blue accent that sang on white can disappear on black.
Always preview both. A palette that looks balanced in light mode frequently breaks in dark mode because contrast ratios shift. The fix is almost always a lightness nudge, not a hue change.
## Common Mistakes
- Accent inflation. Every button, badge, and border turns accent-colored. The page loses its anchor. Keep the accent at ~10 percent.
- Two loud accents. Red and blue both screaming for attention cancels both out. Pick one hero.
- Chasing hue, ignoring contrast. A beautiful color is useless if body text fails WCAG AA (4.5:1). Check contrast before you commit.
- Testing on a blank mockup. Colors behave differently against real content. Validate against actual text and components.
## Generate and Preview Locally
Our palette generator applies the 60-30-10 model by default and renders your colors on sample UI blocks — buttons, cards, text — so you see the balance before writing a line of CSS. Because it runs 100% in your browser, your in-progress brand colors never leave your machine, which matters more than people think when a palette is part of unreleased product work.
## Frequently Asked Questions
Q: What exactly is the 60-30-10 color rule? A: It is a proportional system: roughly 60 percent of a surface uses a dominant (usually neutral) color, 30 percent a secondary color for structure, and 10 percent a high-saturation accent reserved for the few elements you want the eye to find first, such as the primary button or active link.
Q: Does the 60-30-10 rule apply to dark mode too? A: Yes, but the roles invert. In dark mode the 60 percent is your near-black background, the 30 percent is slightly lighter surfaces and body text, and the 10 percent accent stays the same saturated color. Keep the accent's lightness high enough to stay readable on a dark field.
Q: Can I use more than one accent color? A: You can, but keep the combined accent area near 10 percent. Multiple accents dilute focus. A common safe pattern is one primary accent plus a single semantic color for errors or success, used sparingly.
Q: How do I make sure my palette is accessible? A: Check contrast, not just hue. Body text should meet WCAG AA against its background (4.5:1 for normal text). Nudge lightness before changing hue when contrast fails, because lightness has the biggest impact on readability while preserving the mood.
Q: Is there a tool to generate a 60-30-10 balanced palette? A: Yes. Plobi-kit's color palette generator builds balanced sets locally in your browser and lets you preview them on UI mock elements, so you can see the 60-30-10 split in context before writing any CSS. Nothing you design is uploaded.