Dark Mode Design: Do's, Don'ts & Real Examples

Designing dark mode properly — surfaces, contrast, elevation and the mistakes that ruin it.

Good dark mode design is not a colour-inverted light theme, and the difference is brutally obvious the moment you ship a lazy one. A bad dark mode looks like grey mud with floating white text; a good one feels like a designed material with depth, hierarchy and calm.

This is a practical do/don't guide to dark mode design, built from the things that actually break in client work — surfaces, contrast, colour shifts and testing.

Surfaces and elevation

The core idea borrowed from Material and refined across Apple's interfaces: in dark mode, elevation is expressed with lighter surfaces, not heavier shadows. Shadows mostly disappear on dark backgrounds, so closeness to the viewer is signalled by a slightly lighter grey.

Never use pure black

Pure black (#000000) against pure white text creates a harsh, vibrating contrast that tires the eye, and it leaves you no room to show elevation. Most well-made dark themes sit on a very dark grey or near-black with a faint cool or warm cast.

Pure black is a wall. A near-black is a room you can put furniture in.
Tip One exception: OLED screens render true black as fully off pixels, which saves battery and looks striking. If you offer a pure-black "AMOLED" option, make it a deliberate variant, not your only dark theme.

Desaturate everything

Saturated colours that look great on white become aggressive and glowing on dark. The fix is to pull saturation down and nudge lightness up so accents feel present without screaming.

Contrast, but not maximum contrast

Body text should not be pure white. Aim for a high-but-comfortable contrast — an off-white around the light-grey range — while still clearing WCAG AA for body copy and meeting the thresholds for interactive elements.

Brand colour shifts

Your logo, illustrations and product UI may all need adjusted palettes in dark mode. This is the part teams skip and regret. Stripe, Linear and Apple all maintain distinct light and dark palettes rather than auto-inverting.

AssetLight modeDark mode move
Brand accentFull saturationDesaturate, raise lightness
Body textNear-blackOff-white, not pure white
SurfacesWhite + shadowNear-black + lighter elevation
BordersLight grey linesSubtle light-on-dark or low-opacity white
Images/illosAs designedCheck halos; provide dark variants

Real examples worth studying

You do not need to invent this from scratch. Study how the well-known references handle it:

Test before you trust it

Dark mode is the theme most likely to look perfect on your calibrated monitor and fall apart elsewhere.

The short version

Treat dark mode as its own design, not a filter. Near-black base, layered surfaces for elevation, desaturated accents, off-white text, real contrast checks on every surface, and proper testing across devices. Do that and dark mode reads as craft. Skip it and it reads as an afterthought — because it was one.