#2F2B39 is a muted, temperate purple. On the Color Lab it reads clean and engineered, quietly premium. It is too dark to lead as a primary accent and reproduces cleanly in print.
Not just a swatch — here's how #2F2B39 works with other colors. Named schemes with #2F2B39 in its natural role, and a note on why the supporting colors balance it.
Gunmetal Gray plays the worn-leather lead, deepened by saddle brown and an oxblood anchor, softened by aged cream and cooled by a muted forest green.
Gunmetal Gray 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.
Gunmetal Gray 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.
Gunmetal Gray 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 Gunmetal Gray carrying the quiet middle.
Gunmetal Gray sits between cream and a deep berry here, softened by a blush accent and grounded by charcoal.
How #2F2B39 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 #2F2B39 at work across the surfaces designers actually ship.
:root {
--color-base: #2F2B39;
--color-base-rgb: 47 43 57;
--color-base-oklch: oklch(29.9% 0.026 297.9);
--color-50: #F7F6F9;
--color-100: #E9E8EE;
--color-200: #D4D1DC;
--color-300: #B4AFC1;
--color-400: #948DA5;
--color-500: #756E87;
--color-600: #5D586A;
--color-700: #45424D;
--color-800: #2F2D34;
--color-900: #1E1D20;
--color-on-base: #FFFFFF;
}
// tailwind.config.js
colors: {
gunmetal-gray: {
50: '#F7F6F9',
100: '#E9E8EE',
200: '#D4D1DC',
300: '#B4AFC1',
400: '#948DA5',
500: '#756E87',
600: '#5D586A',
700: '#45424D',
800: '#2F2D34',
900: '#1E1D20',
},
}
$base: #2F2B39; $base-ink: #FFFFFF; $base-50: #F7F6F9; $base-100: #E9E8EE; $base-200: #D4D1DC; $base-300: #B4AFC1; $base-400: #948DA5; $base-500: #756E87; $base-600: #5D586A; $base-700: #45424D; $base-800: #2F2D34; $base-900: #1E1D20; $base-hover: #26232F; $base-subtle: #BFBBC8;
{
"color": {
"base": {
"value": "#2F2B39",
"type": "color"
},
"onBase": {
"value": "#FFFFFF",
"type": "color"
},
"scale": {
"50": {
"value": "#F7F6F9",
"type": "color"
},
"100": {
"value": "#E9E8EE",
"type": "color"
},
"200": {
"value": "#D4D1DC",
"type": "color"
},
"300": {
"value": "#B4AFC1",
"type": "color"
},
"400": {
"value": "#948DA5",
"type": "color"
},
"500": {
"value": "#756E87",
"type": "color"
},
"600": {
"value": "#5D586A",
"type": "color"
},
"700": {
"value": "#45424D",
"type": "color"
},
"800": {
"value": "#2F2D34",
"type": "color"
},
"900": {
"value": "#1E1D20",
"type": "color"
}
}
}
}