Palettes · Dashboards

Dashboard colors one working example, light and dark, checked for color vision

A dashboard is where every color problem meets: chart series, good and bad changes, service states, two themes. This one is built from the site’s measured palettes, and every color on it is measured where it is used, in both themes and in four simulated visions. Nothing relies on color alone.

Contrast pairs, both themes
24
Visions checked
4
Meanings with a second carrier
4

The example

The dashboard

Switch the theme and the vision. The colors change; the meaning does not, because every color has a word, a shape or a number beside it.

Theme
View as

Simulated with Machado, Oliveira and Fernandes (2009); grayscale keeps luminance only.

Store operations

Week 41, 6 to 12 October

  • Orders

    1,284

    Better up 6% on last week

  • Late deliveries

    42

    Worse up 9 on last week

  • Return rate

    3.1%

    Better down 0.4 points

  • Out of stock

    7

    Watch same as last week

Orders by channel, last eight weeks
25035045055034363840
Late deliveries by region
  • North12
  • South7
  • East15
  • West8
Services
ServiceStatus
PaymentsRunning
Site searchSlow
Delivery trackingDown
EmailMaintenance tonight

Measured

What was checked

Every pair the dashboard puts on screen, in both themes. Text needs 4.5:1 and the lines and marks of a chart 3:1 (WCAG 1.4.3 and 1.4.11).

Contrast of every pair on the dashboard, in both themes
Where it is usedLightDarkNeeds
Text and numbers on a card14.07:115.76:14.5:1
Success: the word on a card6.58:110.38:14.5:1
Success: the badge word on its tint5.87:18.95:14.5:1
Warning: the word on a card7.09:110.85:14.5:1
Warning: the badge word on its tint6.36:19.34:14.5:1
Error: the word on a card6.47:16.54:14.5:1
Error: the badge word on its tint5.29:16.16:14.5:1
Information: the word on a card8.72:110.03:14.5:1
Information: the badge word on its tint8.01:19.09:14.5:1
Series 1: line and marks on a card21.00:118.09:13:1
Series 2: line and marks on a card5.18:13.48:13:1
Series 3: line and marks on a card3.86:14.67:13:1

The three series, in each vision

Chosen, not picked: of the Okabe–Ito colors that reach 3:1 on the card, the three whose closest pair stays furthest apart in every vision. Grayscale brings them nearer, which is why each line also has a label and its own marker.

The three series, in each vision
VisionLight: Closest pairDark: Closest pair
Typical vision39.2 Distinct43.2 Distinct
Protanopia41.5 Distinct42.5 Distinct
Deuteranopia38.3 Distinct39.2 Distinct
Tritanopia41.5 Distinct42.8 Distinct
Grayscale8.3 Noticeable8.3 Noticeable

The four states, in each vision

The state colors come close in some visions and nearly meet in grayscale. They are the third cue, after the word and the icon.

The four states, in each vision
VisionLight: Closest pairDark: Closest pair
Typical vision13.2 Distinct28.8 Distinct
Protanopia4.4 Close match3.7 Close match
Deuteranopia4.1 Close match6.9 Noticeable
Tritanopia10.0 Noticeable10.7 Distinct
Grayscale0.4 Imperceptible0.8 Imperceptible

What carries each meaning besides color

What carries each meaning besides color
MeaningCarried by
Which line is which channelA label at the end of each line, and a different marker shape on each
Whether a number got better or worseA word (Better, Worse, Watch) and an icon shape beside every change
Whether a service is workingA word and an icon in every badge
How many late deliveries each region hadThe value printed at the end of every bar

Use them

The colors, as tokens

The dashboard’s colors as CSS custom properties, light first, then dark.

:root {
  --page: #F5F0E6;
  --card: #FFFFFF;
  --ink: #2F2B24;
  --chart-1: #000000; /* Black */
  --chart-2: #0072B2; /* Blue */
  --chart-3: #D55E00; /* Vermilion */
  --ok: #136B39;
  --ok-bg: #E8F5EE;
  --warn: #92400E;
  --warn-bg: #FEF3C7;
  --bad: #B91C1C;
  --bad-bg: #FEE2E2;
  --info: #1E40AF;
  --info-bg: #EFF6FF;
}

@media (prefers-color-scheme: dark) {
  :root {
    --page: #0F0E0C;
    --card: #171613;
    --ink: #F2EFE9;
    --chart-1: #FFFFFF; /* White */
    --chart-2: #0072B2; /* Blue */
    --chart-3: #D55E00; /* Vermilion */
    --ok: #4ADE80;
    --ok-bg: #12281C;
    --warn: #E2C766;
    --warn-bg: #2A2312;
    --bad: #F87171;
    --bad-bg: #241A12;
    --info: #93C5FD;
    --info-bg: #16202E;
  }
}

Criteria

WCAG criteria it meets

Found a mistake? Write to us and we will correct it.