Choosing the right color palette is one of the most impactful decisions in web design. Colors set the mood, convey your brand personality, and even influence whether visitors take action. But with millions of colors to choose from, where do you start?
This guide walks you through a proven, step-by-step process for creating a website color palette that looks great, works for your brand, and converts visitors.
1Start with Your Brand & Audience
Before you open any color picker, answer these questions:
- What's your brand personality? Playful? Serious? Luxurious? Friendly?
- Who's your audience? Young? Professional? Niche hobbyists?
- What action do you want visitors to take? Buy? Sign up? Read?
A kids' toy store and a law firm should not have the same color palette โ even if you personally love both styles. Let the brand and audience guide you, not your personal taste.
2Pick a Primary Color
Your primary color is the most recognizable color of your brand โ the one people associate with you. It should appear in your logo, buttons, and key interactive elements.
Here's a quick guide to common primary color associations:
- Blue โ trust, stability, professionalism (most common for tech and finance)
- Red โ energy, passion, urgency (great for CTAs and food)
- Green โ nature, growth, health (perfect for eco and wellness brands)
- Purple โ luxury, creativity, mystery (popular with beauty and design)
- Orange โ friendliness, enthusiasm, affordability (great for value brands)
- Pink โ playfulness, warmth, femininity (fashion and lifestyle)
- Yellow โ optimism, happiness, attention-grabbing (use sparingly!)
3Choose Your Neutrals
Neutrals do most of the heavy lifting on any website โ backgrounds, text, borders, cards. Get these wrong and your site will feel off, no matter how good your primary color is.
A good neutral palette needs:
- 1 background color (near-white for light mode, near-black for dark mode)
- 2-3 surface colors (for cards, nav bars, inputs)
- 3-4 text colors (primary text, secondary text, subtle/muted)
- Border/divider colors
Pro tip: don't use pure gray. Add a tiny hint of your primary color to your grays โ it makes the whole palette feel cohesive and intentional. For example, instead of #666666, try #64748b (slate gray with blue undertones).
Slate neutrals โ warm gray with blue undertones
4Pick 1-2 Accent Colors
Accent colors are for highlights, CTAs, success/error states, and visual interest. Less is more here โ too many accent colors make a design feel busy and cluttered.
For most websites, you'll need:
- 1 bold accent for primary CTAs (can be your primary color)
- 1 success color (typically green) for positive states
- 1 error color (typically red/rose) for warnings and errors
For visual interest, you might add one more accent โ but be careful. If your primary is blue, a soft purple or teal accent works well because they're adjacent on the color wheel.
5Follow the 60-30-10 Rule
Once you have your colors, apply them with the classic 60-30-10 ratio:
- 60% โ Dominant neutral (background, page chrome)
- 30% โ Secondary neutral or primary (cards, sidebars, headers)
- 10% โ Accent color (buttons, links, highlights)
This ratio ensures your accent color has the most impact because it's used sparingly. When everything is a highlight, nothing is a highlight.
6Test, Test, Test
Contrast Check
Run every text/background pair through a contrast checker. Body text needs at least 4.5:1 ratio for WCAG AA. Buttons and interactive elements need 3:1 minimum. Use our Contrast Checker to test quickly.
Apply to Real Content
Colors look different in context. Don't judge a palette by swatches alone โ drop them into a real page with real text, images, and components. You might find that a color that looked great as a swatch feels overwhelming at scale.
Test on Actual Screens
Colors shift dramatically between monitors. What looks perfect on your fancy calibrated display might be washed out on a cheap laptop or a phone in bright sunlight. Test on multiple devices.
7Create System Scale
Don't just pick 3-5 colors and call it done. For a production-ready palette, create a scale of shades and tints for each color. This gives you flexibility while staying on brand.
A typical scale has 9-10 steps from 50 (lightest) to 900 (darkest):
- 50-200 โ Light tints, great for backgrounds and subtle states
- 300-500 โ Mid tones, use for hover states, secondary elements
- 500-600 โ The "base" of the color, your brand color
- 700-900 โ Dark shades, use for text and active states
Our Color Picker tool automatically generates a full 50-900 scale from any color.
Common Mistakes to Avoid
Too Many Colors
The #1 mistake beginners make. A website is not a rainbow. Stick to 1 primary + neutrals + 1-2 accents max. You can add variety with shades and tints, not new hues.
All Saturated, No Rest
If every color is fully saturated, the design vibrates and feels overwhelming. Use desaturated neutrals as breathing room. Saturated colors should be reserved for the elements that matter most.
Ignoring State Colors
Don't forget hover, active, focus, disabled, success, and error states. Plan these into your palette from the start โ don't improvise them later.
Skipping Dark Mode
If you're building a modern website, dark mode isn't optional for much longer. Design both modes at the same time. You'll save yourself a painful retrofit later.
Final Checklist
Before finalizing your palette, run through this list:
- โ Primary color clearly communicates brand personality
- โ Neutrals have enough range (light โ dark) for clear hierarchy
- โ All text passes WCAG AA contrast (4.5:1 minimum)
- โ Accent colors are used sparingly (max 10% of the design)
- โ Palette works in both light and dark mode
- โ Colors look good on actual screens, not just swatches
- โ You have a scale of shades (50-900) for flexibility
Ready to build your palette? Start with our Color Palette Generator โ pick a base color and get a complete, balanced palette in seconds.