Gamut BenchOpen workspace

One brand color.
A complete UI palette.

Scales, semantic roles and contrast-checked light and dark themes — calculated in your browser, delivered as CSS, Tailwind v4 or shadcn.

Start from a brand color Open the converterLocal calculations. No color uploads.
01 · Your brand color
Nearest CSS name: royalblue · approximate
Or start from a template
brand
50100200300400500600700800900950
neutral
success
warning
danger
info

Ship your next idea.

Your changes are ready.

Light · 13/13 passed · button text 5.17:1

Ship your next idea.

Your changes are ready.

Dark · 13/13 passed · button text 5.17:1

How it flows

Every step reads the same project.

Choose a color once. Palettes, scales, contrast checks, themes and code update from that one source — and locked colors stay exactly where you put them.

01

Palette

Brand, neutral and four status colors derived from one source in OKLCH.

Palette generator
02

Scales

5 to 21 steps per family, four curves, hue shift and contrast targets.

Shade generator
03

Check

Aa2.72:1fails
Aa4.51:1AA

WCAG 2.2 and APCA for any pair, plus the nearest passing color at the same hue.

Contrast checker
04

Theme

lightButton
darkButton

Light and dark tokens from the same palette, each checked across 13 role pairs.

Theme generator
05

Export

--primary: #2563EB--primary-foreground: #FFFFFF--ring: #2563EB

CSS variables, Tailwind v4 and shadcn theme CSS are free. Structured formats are Pro.

Export panel
Light and dark

Your brand stays. Every role clears contrast.

The brand source is kept as its own token. Text, borders, focus rings and status colors are adjusted per mode, then checked as real role pairs.

brand #2563EB · preserved

Example interface

A place for your next idea.

Keep your brand. Make every interaction readable.

Your changes are ready.

Button state preview

Light · 13/13 passed · button text 5.17:1

  • foreground / background17.35:1
  • card-foreground / card18.12:1
  • muted-foreground / background4.63:1

Example interface

A place for your next idea.

Keep your brand. Make every interaction readable.

Your changes are ready.

Button state preview

Dark · 13/13 passed · button text 5.17:1

  • foreground / background16.26:1
  • card-foreground / card14.88:1
  • muted-foreground / background4.51:1

Checks cover the listed color pairs, not complete website accessibility.

Delivery

Paste it into the stack you already use.

Preview, copy and download read the same project object, so what you check is what you ship.

  • CSS and Tailwind exportFree
  • Structured exports and optionsPro
  • Read-only snapshot linksFree
Why OKLCH

Every rainbow you have ever shipped is uneven.

Both color rows sweep the same 25 hues. Under each is that row converted to perceptual lightness.

2.1×

How much brighter HSL yellow is than HSL blue at the same stated 50% lightness.

0.00

Lightness variation across the OKLCH row, so a 500 in teal weighs the same as a 500 in red.

sRGB

Steps whose chroma had to be reduced to fit sRGB are flagged, never silently clipped.

HSL rainbowhsl(h 100% 50%)
Its lightness0.452 → 0.968
OKLCH, evenoklch(.72 .16 h)
Its lightnessflat at 0.72
Plans

Free covers the whole path.

Pro actions are labeled where they appear. Calculated results are never blurred or hidden behind them.

Free
  • Projects and cloud syncGuest: 1 local · Free: 3 cloud
  • Scale controls5–21 steps
  • WCAG + APCA and theme role checksIncluded
  • CSS and Tailwind exportCSS, Tailwind v4, shadcn
  • Complete backup and restoreIncluded
Pro
  • Projects and cloud sync100 projects
  • Cell editing, curves and alignmentIncluded
  • Contrast matrixIncluded
  • Color vision simulationIncluded
  • Structured exports and optionsJSON, DTCG, Style Dictionary, JS/TS
  • Manual role mappingIncluded
Compare plans
Do my colors leave this browser?

Calculations run in your browser. Guest projects stay local; account projects sync to the cloud and your other devices.

What happens at three free projects?

Nothing is deleted. Keep working in an editable project, back up your data, or view plans for more projects.

Does passing every check make my site accessible?

Checks cover the listed role pairs. APCA is shown as experimental guidance, not a WCAG verdict.

Can I bring an existing palette?

Paste CSS variables or JSON. Every parsed color is previewed before it is added, and locked colors are never overwritten.

Bring the brand color you have.
Leave with a theme you can ship.

Free, no sign-up, and no color uploads.