Nearest named color: Jet Black
#0F0F1C
#0F0F1C
Nearest named
Jet Black
Family
Black
Lightness
17.6%
Chroma
0.027
Hue angle
283.3°
Temperature
Cool
Contrast on white
19.00:1 · AAA
Contrast on black
1.02:1 · Fail
Web-safe
#000033
CSS oklch()
18% 0.03 283

#0F0F1C is a muted, temperate purple. On the Color Lab it reads clean and engineered, quietly premium. It holds up as a large surface and is too dark to lead as a primary accent.

Palettes built on #0F0F1C

Not just a swatch — here's how #0F0F1C works with other colors. Named schemes with #0F0F1C in its natural role, and a note on why the supporting colors balance it.

Vintage Leather Lead · 5 colors

Jet Black plays the worn-leather lead, deepened by saddle brown and an oxblood anchor, softened by aged cream and cooled by a muted forest green.

Japanese Sand Base · 5 colors

Jet Black sets a calm, sun-bleached base here, wrapped in bone and paper off-whites and a soft greige, with a single ink accent for wabi-sabi restraint.

Luxury Packaging Feature · 5 colors

Jet Black carries the depth in this luxury scheme, offset by a brass accent and near-black and held together by a deep neutral and an off-white surface.

Moody Editorial Color · 5 colors

Jet Black adds the colour to this moody editorial scheme — charcoal and a mid-grey around it, a bone highlight, and a muted jewel accent drawn from Jet Black.

Minimal Editorial Surface · 5 colors

Jet Black is the single accent in this high-contrast editorial system — set on near-white paper against near-black ink, with a warm grey and a desaturated tint of Jet Black carrying the quiet middle.

Build a working theme in the generator →

Color Lab

How #0F0F1C actually behaves in design work — read from its OKLCH lightness, chroma and hue, not just its raw numbers. Ten signals to help you decide where this color earns its place.

Warmth 45/100
Neutral
Balanced temperature — flexible, sits between warm and cool schemes.
Softness 20/100
Very low
Firm and assertive — carries weight and contrast.
Depth 78/100
High
Deep and grounding — anchors a layout, strong dark-mode base.
Naturalness 0/100
Very low
Reads engineered rather than organic — synthetic, digital.
Vintage feel 20/100
Very low
Clean and current — no dusty, aged cast.
Luxury 77/100
High
Restrained and premium — deep, quiet, high-end packaging and fashion.
Brand distinctiveness 10/100
Very low
Quiet and neutral — a supporting tone, not a signature.
UI accent fit 7/100
Very low
Weak as an action color — too pale, too dark or too muted to signal.
Surface fit 65/100
High
Calm enough for large fills — backgrounds, cards, sections.
Print safety 96/100
Very high
Reproduces faithfully in CMYK — safe for packaging and print.

Pairs with #0F0F1C

For UI
For branding
For interior
For fashion
People also use #0F0F1C with

UI roles & guardrails

Primary action Safe as a filled button with white label. AAA
Body text Passes on white at 16px and above. Pass
Large display Fine for headings 24px+ on white. Pass
Background Pair with white text at 19.0:1. Use
Subtle surface Use #C6C6DA for cards and hover fills. Tint 80
Avoid beside #120E1B — the hue gap is too small to read as intentional. Clash

In real applications

Not a swatch to memorise — a color to build with. Here is #0F0F1C at work across the surfaces designers actually ship.

Website / UI
Northwind Sign up
Build faster.
A working theme, generated in seconds.
Dashboard
Revenue
$48.2k ▲ 12%
Brand
AVELINE
Studio
Poster
Nov 14 · 8PM
NIGHT
MARKET
Packaging
BLOOM
Botanical Wash
250 ml
Interior

Scales

ShadesBase darkened in 10% steps
TintsBase lifted toward white
TonesSaturation removed, lightness held
Monochromatic scaleDesign-system ready, 50–900

Every model

Export

:root {
  --color-base: #0F0F1C;
  --color-base-rgb: 15 15 28;
  --color-base-oklch: oklch(17.6% 0.027 283.3);
  --color-50: #F5F5FA;
  --color-100: #E4E4F1;
  --color-200: #CACAE2;
  --color-300: #A4A4CB;
  --color-400: #8080B2;
  --color-500: #606095;
  --color-600: #4E4E74;
  --color-700: #3B3B54;
  --color-800: #292938;
  --color-900: #1B1B23;
  --color-on-base: #FFFFFF;
}