The Dow Jones Color System
First, Everyone
Had to Agree
How a broken color palette became a standard a dozen brands signed off on — before a single line was automated.

Kevin Muldoon  ·  Design Systems Architect  ·  Farther
1
The Real Issue
The number lied. And so did the name.

NewsKit shipped a clean ramp — blue010 to blue100, light to dark. Then each brand re-themed it, and the discipline broke: hex values were dropped in with no regard for the weight number, so it stopped predicting anything. Worse, the color was named for what it was — “blue” — not what it did. A token called blue can’t hold Barron’s navy or MarketWatch’s green. It needed to be primary.
NewsKit original blue ramp (left) vs. the WSJ theme (right) — green080 sits lighter than blue070, and it's named 'green' though it's blue
Left, the clean ramp. Right, after theming: green080 is lighter than blue070 — and it’s called green though it’s blue.
2
The Fix — Genome
The drift wasn’t carelessness. The designers had no tool.

They were hand-typing hex because nothing generated a proper ramp. So I built one: Genome — feed it a brand color and it produces a perceptually-even scale, indexed to CIE L* and named by role, so one token carries any brand’s hue. I studied every major system to build one that could express them all.
The Genome Color Tool — ten semantic roles across L*-indexed weights, normal anchored at 400
Ten semantic roles, every weight indexed to L*. “Normal” anchored at 400 — borrowing CSS’s font-weight convention. Hold that thought.
3
The Real Obstacle
You Can’t Automate a System
Built Non-Systematically.
Bespoke solutions require bespoke reviews.

Every hand-picked hex is a one-off — and a one-off can only be checked one at a time, by hand, forever. You can’t automate that. Before any pipeline could touch the palette, it had to become systematic: weights chosen by rule, not by taste. And because it’s a white-label system, systematic meant one thing — every brand agreeing to the same meaningful weights.
4
Who Had to Say Yes
Four decision-makers, and the portfolio follows.

The brands didn’t each hold a veto. It came down to four people — the VPs and directors who owned them between them. Win those four, and every brand below moves. So the whole thing rested on making the case to four.
The Wall Street Journal
Barron’s
MarketWatch
Financial News London
Mansion Global
Factiva
Penta
MarketSurge
WSJ Pro
BuySide
Risk & Compliance
… and more
5
Making the Case
I showed them the drift. The case made itself.

I didn’t have to campaign. I put the L* drift on screen — each decision-maker watching their own palette’s numbers stop meaning anything. They already knew a white-label system needs semantically meaningful weights, or theme-swapping breaks at scale. Once the problem was undeniable, agreement was fast: all four signed within three months.
The system was adopted because the people who owned the brands chose it — not because anyone was told to.
6
Before Any Automation
This Came First.

Before Style Dictionary. Before a single token was compiled. Before any of the automation that let the system scale to twenty brands and five platforms — there was this: agreement. You cannot compile a standard nobody signed. Every architect wants to jump to the tooling; the tooling is worthless without the consensus beneath it.
The hardest, least glamorous, most important work happens before the code.
7
The Result
One color standard, adopted across the brands.

With consensus in hand, the brands moved onto a shared, accessible, perceptually-honest color foundation. Only then could the automation follow — the tokens, the pipeline, the five platforms. The agreement is what made the scale possible. The code was the reward for the diplomacy, not a substitute for it.
Adoption you can defend: not a metric handed to me, a consensus I collected.
8
A Confession
And then I realized I was wrong.

Genome shipped, and it worked — the brands themed reliably and the accessibility decisions scaled. And then I realized I’d made one wrong call. I anchored “normal” at weight 400, because CSS does — where font-weight: 400 means “normal.” I’d borrowed the convention without questioning it. But the history of font-weight naming is a mess, and 400 isn’t the perceptual center of anything. L*50 is.
9
The Better Standard — Univers
So I moved the number to where it tells the truth.

500 — the true center of a 000–999 scale, and exactly L*50: the one value that clears 4.5:1 on both white and black. I named the refined standard Univers — after Frutiger’s typeface, where systematic weight-numbering began.
 WeightL*On whiteOn blackSafe text
100951.1:118.6:1black
300791.7:112.0:1black
500504.5:14.7:1either
700309.3:12.3:1white
9001116.9:11.3:1white
10
The Complete Scale
Twenty-two weights. The famous systems kept fewer.

The Universal color scale compared to Adobe Spectrum, ColorBox, IBM Carbon, Lightning Salesforce, and Genome
Spectrum, Carbon, Salesforce, ColorBox — each dropped notes from the scale. A universal standard can’t afford gaps: it has to hold any brand’s color, at any lightness. Univers keeps all twenty-two.
11
The Point
I updated my own standard the moment the evidence
demanded it. The goal was never to be right —
it was a color standard anyone could adopt, anywhere.

A design system is a system of truth. So is the standard beneath it.
12