Tailwind CSS v3 color
Tailwind blue-950 #172554
Tailwind CSS v3's blue-950 is #172554. It is a very dark muted blue in the blue family. In OKLCH it sits at lightness 0.282, chroma 0.087 and hue 267.9°. The nearest CSS named color is midnightblue (#191970), ΔE2000 8.1 away.
- Relative luminance
- 0.0215
- OKLCH L · C · h
- 0.282 · 0.087 · 267.9
- Best text
- White 14.69:1
- Hue family
- Blue
#172554 color codes
- HEX
#172554- RGB
rgb(23, 37, 84)- HSL
hsl(226, 57%, 21%)- OKLCH
oklch(0.282 0.087 267.9)- OKLab
oklab(0.282 -0.003 -0.087)- CIELAB (D65)
L* 16.23, a* 12.01, b* -30.45- XYZ (D65)
X 2.61, Y 2.15, Z 8.66- CMYK (naive)
cmyk(73%, 56%, 0%, 67%)
CIELAB and XYZ use the D65 white point; CSS lab() uses D50, so paste the OKLCH or HEX value into stylesheets. CMYK here is a plain formula with no press profile.
Legibility
Contrast: is #172554 accessible?
White text on it reaches 14.69:1, passing AAA. Black text fails at 1.42:1.
WCAG 2 gives the same ratio whichever color is the text; APCA does not, so its Lc changes sign and size with polarity.
Open the Contrast System-
Black text on it
1.42:1
- AA fails
- AA large fails
- AAA fails
- APCA Lc 0
Text is here, unreadable at 1.42:1
-
White text on it
14.69:1
- AA passes
- AA large passes
- AAA passes
- APCA Lc −104
-
As text on black
1.42:1
- AA fails
- AA large fails
- AAA fails
- APCA Lc 0
Text is here, unreadable at 1.42:1
-
As text on white
14.69:1
- AA passes
- AA large passes
- AAA passes
- APCA Lc +101
Nearest versions that pass 4.5:1
-
For text on white
#172554 14.69:1
It already reaches 14.69:1 on white, so no change is needed.
-
For text on black
#5F73A9 4.51:1
Lightening its OKLCH lightness from 0.28 to 0.56 reaches 4.51:1 on black, keeping the hue.
Checking another pair? Use the Contrast Checker.
Studio
Adjust #172554 live
Move lightness, chroma and hue in OKLCH, or drag on the map. The map is every lightness and chroma at the current hue: sRGB inside the solid area, Display P3 out to the dashed line.
Scale
Shades and tints of #172554
Eleven OKLCH lightness steps at this hue, each with its contrast against white and black. #172554 sits at step 900.
Under each step, white and black text on it; a bold figure passes 4.5:1.
Tailwind CSS v3 blue scale
The real Tailwind palette, for comparison with the computed ramp above.
Gamut
How vivid #172554 can get
At its lightness and hue, sRGB reaches OKLCH chroma 0.189; #172554 uses 46% of it. Display P3 reaches no further at this hue.
- sRGB
- Display P3
- Rec. 2020
- Dominant wavelength
- OKLCH chroma
- 0.087
- sRGB edge
- 0.189
- Display P3 edge
- 0.189
- Rec. 2020 edge
- 0.201
- Dominant wavelength
- 470 nm
- Excitation purity
- 62%
- Chromaticity
- x 0.1948, y 0.1598
- This color#172554
- Most vivid in sRGB#0E0084
- Most vivid in Display P3oklch(0.282 0.189 267.9)
On a screen without Display P3 the last tile shows the sRGB edge instead.
.accent {
color: #172554;
}
@media (color-gamut: p3) {
.accent { color: color(display-p3 0.0453 0 0.4972); }
}
Mixing
Mixing #172554
Each row is the same mix worked out in a different space, with the halfway color at its end. sRGB, which older CSS gradients use, can sag gray or dark in the middle; OKLab keeps the lightness steps even; OKLCH holds chroma and hue as it goes.
White #FFFFFF
- sRGB50%#8B92AA
- OKLab50%#818CA8
- OKLCH50%#818CA8
Black #000000
- sRGB50%#0C132A
- OKLab50%#04081B
- OKLCH50%#04081B
Its complement #352700
- sRGB50%#26262A
- OKLab50%#262931
- OKLCH50%#441729
/* A gradient and a mix, worked out in OKLCH */
background: linear-gradient(in oklch, #172554, white);
color: color-mix(in oklch, #172554 50%, white);
In use
#172554 in an interface
A button, a link, a heading, a focused field, an icon and a chart line in this color, on a light page and a dark one. Each check is a WCAG 2 contrast minimum: 1.4.3 for text, 1.4.11 for the rest.
Light page
- Button labelText, 4.5:114.69:1 Passes
- Link and body-size textText, 4.5:114.69:1 Passes
- Large headingLarge text, 3:114.69:1 Passes
- Icons, borders and focus ringsNon-text, 3:114.69:1 Passes
Dark page
- Button labelText, 4.5:114.69:1 Passes
- Link and body-size textText, 4.5:11.27:1 Fails
- Large headingLarge text, 3:11.27:1 Fails
- Icons, borders and focus ringsNon-text, 3:11.27:1 Fails
For text on this page, the nearest shade that passes is #677CB3 4.55:1
Color vision
How #172554 looks with color blindness
Achromatopsia changes it most, ΔE2000 19.5; deuteranopia changes it least, 3.5.
Simulated with Machado et al. (2009) at full severity, in linear light.
Simulate a whole page What each type sees-
Protanopia
No working red (long-wavelength) cones
#092B56 ΔE2000 4.0
Close match
Reads as very dark muted blue
-
Deuteranopia
No working green (medium-wavelength) cones
#002653 ΔE2000 3.5
Close match
Reads as very dark muted blue
-
Tritanopia
No working blue (short-wavelength) cones
#003038 ΔE2000 19.4
Distinct
Reads as very dark grayish teal
-
Achromatopsia
No cone color vision; lightness only
#282828 ΔE2000 19.5
Distinct
Reads as near-black
Pairing check
Checked against its complement, #352700. Their lightness contrast is only 1.00:1, so where hue collapses, add a label, icon or pattern.
| Vision | The pair | ΔE2000 | Verdict |
|---|---|---|---|
| Normal vision | #172554 · #352700 | 36.8 | Stays distinct |
| Protanopia | #092B56 · #2D2700 | 36.3 | Stays distinct |
| Deuteranopia | #002653 · #312A01 | 37.7 | Stays distinct |
| Tritanopia | #003038 · #3B2220 | 33.5 | Stays distinct |
| Achromatopsia | #282828 · #292929 | 0.3 | Easily confused |
Harmony
Color harmonies for #172554
Its complement is #352700, a very dark muted brown, on the warm side of the wheel.
Hue rotations in OKLCH, mapped into sRGB by trimming chroma so hue and lightness stay put.
Open the Harmony Studio- Base#172554
- Complement#352700
Complementary
Open in Harmony Studio- −30°#002D45
- Base#172554
- +30°#2F1D4E
Analogous
Open in Harmony Studio- Base#172554
- +120°#4C120E
- +240°#00340F
Triadic
Open in Harmony Studio- Base#172554
- +150°#411F00
- +210°#272D00
Split-complementary
Open in Harmony StudioCode
Design tokens
Ready-to-paste tokens in six formats. Rename them to fit your system.
:root {
--color-blue-950: #172554;
}
// tailwind.config.js — already built in as blue-950;
// pin the v3 value explicitly like this:
module.exports = {
theme: {
extend: {
colors: {
blue: { 950: '#172554' },
},
},
},
};
/* app.css — Tailwind CSS v4 */
@import "tailwindcss";
@theme {
/* v4 has its own blue-950; this pins the v3 value. */
--color-blue-950: oklch(0.282 0.087 267.9);
}
{
"color": {
"blue-950": {
"$type": "color",
"$value": {
"colorSpace": "srgb",
"components": [0.0902, 0.1451, 0.3294],
"hex": "#172554"
},
"$description": "Tailwind CSS v3 blue-950"
}
}
}
import SwiftUI
enum Palette {
static let blue950 = Color(.sRGB, red: 0.090, green: 0.145, blue: 0.329, opacity: 1)
}
import androidx.compose.ui.graphics.Color
object Palette {
val Blue950 = Color(0xFF172554)
}
Matches
The nearest match in each system
The closest CSS name, Tailwind shade, RAL Classic paint and Crayola crayon by ΔE2000; under 2 is hard to tell apart side by side. RAL and Crayola values approximate physical colors.
Tools
Open #172554 in the tools
Each opens over this page. More colors live in the Color Library, and every color page is listed on the hub.
- Color InspectorEvery format, its names, contrast and color vision in one panel.
- Contrast SystemBlack and white text on this color, with fixes in both directions.
- Harmony StudioPalettes built from this color, walked to a contrast target if you ask.
- Color Space ConverterThe same color in 34 notations, with its gamut headroom.
- Color Name FinderThe nearest of 1,055 color names by ΔE2000.