Skip to content

Colors

Color Palette Generator

Turn one base color into a full design-ready palette: tints, shades, and harmonic variations, each with HEX/RGB/HSL values.

Tint & shade ramp (design-system style)

Harmonies

All values

HEX: #0284C7
RGB: rgb(2, 132, 199)
HSL: hsl(200, 98%, 39%)

Tints and shades interpolate lightness in HSL space; harmonies rotate hue. Click any swatch to copy its hex.

The 60-30-10 Reality Check

A generated palette is a set of options, not a design: most screens work best when one dominant color takes ~60% of the surface, a secondary takes 30%, and an accent gets the last 10%. Palettes with five saturated colors look chaotic at full scale no matter how harmonious the wheel positions are.

Before shipping, run every text/background pair through the contrast checker — a palette that fails 4.5:1 on body text is not shippable regardless of how well it harmonizes.

How the Color Math Works

  1. Pick a base color with the picker or paste any color format.
  2. The generator produces a 10-step tint/shade ramp — the structure used by design systems like Tailwind.
  3. Harmony rows show complementary, analogous, and triadic relatives of the base.
  4. Copy any swatch in HEX, RGB, or HSL, or export the entire palette as CSS variables.
Formula & Technical Standard
Tints/shades interpolate lightness in HSL space; harmonies rotate hue by ±30°, 180°, and ±120°.

Worked Example

Brand color ramp
Input: Base #0284c7
Output: 50–950 scale with light and dark steps
A full ramp gives you hover states, surfaces, and borders without ad-hoc color decisions.
Accent from harmony
Input: Complementary of the brand base
Output: Opposite-hue accent swatch
Complementary pairs maximize contrast for CTAs while sharing saturation character with the brand color.

Common Questions

How many colors does a palette need?

Most products thrive with one neutral ramp plus one or two accent colors. The generator’s ramp covers all surface and state needs.

Are the generated hex values accessible?

The ramp includes light and dark extremes, so accessible pairings exist — verify specific pairs with the Contrast Checker.