All articles
DesignJune 15, 2025

Designing for Dark Mode Is Harder Than You Think

Designing for Dark Mode Is Harder Than You Think

The most common approach to dark mode is mechanical: swap white for black, darken the grays, call it done. The result almost always looks wrong. Shadows disappear against dark surfaces. Text that was readable at 70% opacity on white becomes invisible on charcoal. Brand colors that sang on a light background turn muddy or blinding on a dark one.

True dark mode design requires rethinking elevation, contrast, and color relationships from scratch. In a light interface, elevation is expressed through shadows — elements float above the surface. In a dark interface, shadows are invisible. Elevation has to come from surface brightness instead: higher elements are lighter, not darker.

Color is the harder problem. A saturated blue that works as an accent on white needs to be desaturated on a dark background to avoid vibrating against it. Error reds need to shift warmer. Success greens need to shift cooler. The semantic meaning stays the same; every value changes.

We don't treat dark mode as a toggle. We treat it as a parallel design system with its own rules, tested independently, refined separately. The goal isn't two versions of one interface — it's one interface that feels intentional in any lighting condition.

Next article

Building Software That Lasts

The best code isn't clever. It's boring enough to survive.