#2E292A 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 #2E292A works with other colors. Named schemes with #2E292A in its natural role, and a note on why the supporting colors balance it.
Bistre is the vivid signal in this product UI — on a near-black surface with cool white, a slate grey and a lighter tint of Bistre.
Bistre plays the worn-leather lead, deepened by saddle brown and an oxblood anchor, softened by aged cream and cooled by a muted forest green.
Bistre 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.
Bistre sits between cream and a deep berry here, softened by a blush accent and grounded by charcoal.
Bistre 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 Bistre carrying the quiet middle.
How #2E292A 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 #2E292A at work across the surfaces designers actually ship.
:root {
--color-base: #2E292A;
--color-base-rgb: 46 41 42;
--color-base-oklch: oklch(28.7% 0.008 3.9);
--color-50: #F8F7F7;
--color-100: #ECE9EA;
--color-200: #D9D4D5;
--color-300: #BBB4B5;
--color-400: #9E9496;
--color-500: #807577;
--color-600: #655D5F;
--color-700: #4A4546;
--color-800: #322F2F;
--color-900: #201D1E;
--color-on-base: #FFFFFF;
}
// tailwind.config.js
colors: {
bistre: {
50: '#F8F7F7',
100: '#ECE9EA',
200: '#D9D4D5',
300: '#BBB4B5',
400: '#9E9496',
500: '#807577',
600: '#655D5F',
700: '#4A4546',
800: '#322F2F',
900: '#201D1E',
},
}
$base: #2E292A; $base-ink: #FFFFFF; $base-50: #F8F7F7; $base-100: #ECE9EA; $base-200: #D9D4D5; $base-300: #BBB4B5; $base-400: #9E9496; $base-500: #807577; $base-600: #655D5F; $base-700: #4A4546; $base-800: #322F2F; $base-900: #201D1E; $base-hover: #252121; $base-subtle: #C2BDBE;
{
"color": {
"base": {
"value": "#2E292A",
"type": "color"
},
"onBase": {
"value": "#FFFFFF",
"type": "color"
},
"scale": {
"50": {
"value": "#F8F7F7",
"type": "color"
},
"100": {
"value": "#ECE9EA",
"type": "color"
},
"200": {
"value": "#D9D4D5",
"type": "color"
},
"300": {
"value": "#BBB4B5",
"type": "color"
},
"400": {
"value": "#9E9496",
"type": "color"
},
"500": {
"value": "#807577",
"type": "color"
},
"600": {
"value": "#655D5F",
"type": "color"
},
"700": {
"value": "#4A4546",
"type": "color"
},
"800": {
"value": "#322F2F",
"type": "color"
},
"900": {
"value": "#201D1E",
"type": "color"
}
}
}
}