#0F1D1F is a near-black neutral with only a whisper of temperate cast. 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.
Not just a swatch — here's how #0F1D1F works with other colors. Named schemes with #0F1D1F in its natural role, and a note on why the supporting colors balance it.
Graphite is the vivid signal in this product UI — on a near-black surface with cool white, a slate grey and a lighter tint of Graphite.
Graphite plays the worn-leather lead, deepened by saddle brown and an oxblood anchor, softened by aged cream and cooled by a muted forest green.
Graphite 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.
Graphite opens this coastal palette with sea-glass and warm sand alongside it, grounded by driftwood grey and a deep-navy anchor.
Graphite 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 Graphite carrying the quiet middle.
How #0F1D1F 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.
Not a swatch to memorise — a color to build with. Here is #0F1D1F at work across the surfaces designers actually ship.
:root {
--color-base: #0F1D1F;
--color-base-rgb: 15 29 31;
--color-base-oklch: oklch(21.9% 0.020 207.2);
--color-50: #F4FAFA;
--color-100: #E3F0F2;
--color-200: #C8E1E4;
--color-300: #A1C8CE;
--color-400: #7CAEB6;
--color-500: #5C9199;
--color-600: #4B7177;
--color-700: #395256;
--color-800: #283739;
--color-900: #1A2223;
--color-on-base: #FFFFFF;
}
// tailwind.config.js
colors: {
graphite: {
50: '#F4FAFA',
100: '#E3F0F2',
200: '#C8E1E4',
300: '#A1C8CE',
400: '#7CAEB6',
500: '#5C9199',
600: '#4B7177',
700: '#395256',
800: '#283739',
900: '#1A2223',
},
}
$base: #0F1D1F; $base-ink: #FFFFFF; $base-50: #F4FAFA; $base-100: #E3F0F2; $base-200: #C8E1E4; $base-300: #A1C8CE; $base-400: #7CAEB6; $base-500: #5C9199; $base-600: #4B7177; $base-700: #395256; $base-800: #283739; $base-900: #1A2223; $base-hover: #0C1719; $base-subtle: #A7C7CC;
{
"color": {
"base": {
"value": "#0F1D1F",
"type": "color"
},
"onBase": {
"value": "#FFFFFF",
"type": "color"
},
"scale": {
"50": {
"value": "#F4FAFA",
"type": "color"
},
"100": {
"value": "#E3F0F2",
"type": "color"
},
"200": {
"value": "#C8E1E4",
"type": "color"
},
"300": {
"value": "#A1C8CE",
"type": "color"
},
"400": {
"value": "#7CAEB6",
"type": "color"
},
"500": {
"value": "#5C9199",
"type": "color"
},
"600": {
"value": "#4B7177",
"type": "color"
},
"700": {
"value": "#395256",
"type": "color"
},
"800": {
"value": "#283739",
"type": "color"
},
"900": {
"value": "#1A2223",
"type": "color"
}
}
}
}