Skip to main content
PerfectPalette

Deterministic scoring you can trust

Two scoring systems evaluate every palette and design system against weighted, transparent criteria. Same inputs, same scores — always. No black boxes, no subjective ratings.

Palette Health Score

A weighted composite of four subscores evaluates your palette's readiness. Contrast Coverage (35%) measures AA/AAA pairing approval. Harmony (30%) evaluates hue relationships with per-issue penalties. Role Completeness (20%) checks that hero, accent, and neutral roles are assigned. Neutral Anchoring (15%) validates grounding colors.

  • Requires ≥4 approved AA/AAA pairings — score capped at 60 without them
  • Harmony penalties: 6pts for off-model hue, 3pts for saturation outliers
  • Deterministic hints: up to 3 actionable suggestions per evaluation
  • Weights are canonical and published — no hidden adjustments
Health Score93
Contrast Coverage
8835%
Harmony
9230%
Role Completeness
10020%
Neutral Anchoring
10015%

Design System Score

Seven subscores evaluate token-scale design systems for production readiness. Scale Quality (18%) checks monotonic OKLCH lightness and gamut clipping. Text Accessibility (18%) validates contrast for primary and secondary text. Hierarchy (17%) ensures surfaces stay neutral while actions pop.

  • Role Coverage (12%): all role references resolve to valid scale steps
  • Non-text A11y (13%): borders and focus rings meet 3.0:1 contrast
  • Theme Resilience (10%): scales have sufficient lightness range for dark mode
  • Harmony Cohesion (12%): bridges palette harmony analysis into system scoring
Scale Quality95
Text A11y100
Non-text A11y85
Hierarchy70
Role Coverage100
Theme Resilience90
Harmony Cohesion88

Hard gates enforce quality floors

Four hard gates cap the Design System Score when critical requirements aren't met. Missing role groups caps at 60. Failing text contrast caps at 50. These aren't suggestions — they're structural requirements that prevent a design system from shipping with fundamental issues.

  • Missing role groups (surface, border, text, action, state) → capped at 60
  • Text primary fails AA contrast (4.5:1) → capped at 50
  • Focus ring fails contrast (3.0:1) → capped at 70
  • Non-monotonic scale lightness → capped at 70

Hard gates

PassAll role groups assignedcap 60
PassText primary ≥ 4.5:1 contrastcap 50
PassFocus ring ≥ 3.0:1 contrastcap 70
FailMonotonic scale lightnesscap 70

Know your palette is ready

Scoring is free for all users. Every palette gets a health score. Design system scoring included with the editor.