Tailwind CSS v4 default palette
Tailwind slate-500: #62748E
In Tailwind CSS v4, slate-500 is defined as --color-slate-500: oklch(55.4% 0.046 257.417), which is #62748E in hex and rgb(98, 116, 142): a medium-dark, muted blue. In Tailwind v3, slate-500 was #64748B.
In OKLCH, slate-500 has a lightness of 55.4%, chroma 0.046 and hue 257.4°. It is the most saturated shade of the slate scale.
The value fits inside sRGB, so the hex #62748E represents it without loss on any screen.
In v3, slate-500 was #64748B. The v4 value is ΔE OK 0.5 away, below the point where most people can tell them apart; v4 is more saturated.
Tailwind slate is the bluest of the gray scales, a cool gray that pairs well with blue and indigo accents.
Color codes for slate-500
| Tailwind v4 token | --color-slate-500 |
|---|---|
| OKLCH (source value) | oklch(55.4% 0.046 257.417) |
| HEX | #62748E |
| RGB | rgb(98, 116, 142) |
| HSL | hsl(215, 18%, 47%) |
| HWB | hwb(215 38% 44%) |
| CMYK (naive, no ICC profile) | cmyk(31%, 18%, 0%, 44%) |
| Decimal | 6,452,366 |
| Tailwind v3 hex | #64748B |
| Utility classes | bg-slate-500, text-slate-500, border-slate-500 |
Tailwind slate scale
Contrast and accessibility
On slate-500, white text has a contrast ratio of 4.76:1 and passes AA for normal text; black text reaches 4.40:1.
WCAG 2.2 contrast ratios (success criteria 1.4.3 and 1.4.6: AA needs 4.5:1 for normal text and 3:1 for large text, AAA needs 7:1 and 4.5:1). APCA Lc is the lightness contrast from the APCA-W3 0.0.98G model proposed for WCAG 3; a higher absolute value is more readable, and Lc 75 is its suggested minimum for body text.
| Pair | Ratio | AA | AA large | AAA | AAA large | APCA Lc |
|---|---|---|---|---|---|---|
| Black text on slate-500 | 4.40:1 | Fail | Pass | Fail | Fail | 31.0 |
| White text on slate-500 | 4.76:1 | Pass | Pass | Fail | Pass | −78.5 |
| Slate-500 text on white | 4.76:1 | Pass | Pass | Fail | Pass | 73.1 |
| Slate-500 text on black | 4.40:1 | Fail | Pass | Fail | Fail | −28.6 |
Tints and shades
Each step mixes var(--color-slate-500) with white (tints) or black (shades) in gamma-encoded sRGB, the same result as color-mix(in srgb, var(--color-slate-500), white 25%) in CSS.
Tints (mixed with white)
- 5%
#6a7b94 - 15%
#7a899f - 25%
#8997aa - 35%
#99a5b6 - 45%
#a9b3c1 - 55%
#b8c0cc - 65%
#c8ced7 - 75%
#d8dce3 - 85%
#e7eaee - 95%
#f7f8f9
Shades (mixed with black)
- 5%
#5d6e87 - 15%
#536379 - 25%
#4a576b - 35%
#404b5c - 45%
#36404e - 55%
#2c3440 - 65%
#222932 - 75%
#191d24 - 85%
#0f1115 - 95%
#050607
Color harmonies
Rotating the hue in OKLCH while keeping lightness and chroma, slate-500's complementary color is #827054 (close to dimgray), its analogous colors are #567988 and #716F8D, and its triadic partners are #8C6869 and #66795F. For text on top, white gives the higher contrast.
| Harmony | Rotation | Color |
|---|---|---|
| Complementary | +180° | #827054 |
| Analogous | −30°, +30° | #567988#716f8d |
| Triadic | +120°, +240° | #8c6869#66795f |
| Split-complementary | +150°, +210° | #8a6b5c#757556 |
Computed in OKLCH: the hue is rotated by 180° (complementary), ±30° (analogous), ±120° (triadic) and 180° ±30° (split-complementary) while lightness and chroma stay fixed. Results that fall outside sRGB are brought back with the CSS Color 4 gamut mapping algorithm. Because this uses OKLCH, the values differ from tools that rotate hue in HSL, but every color keeps the same perceived lightness.
Warm or cool?
Tailwind slate-500 is a cool color: its hue is 215° on the HSL wheel, in the green, blue and violet range that is conventionally called cool.
Nearest named and Tailwind colors
Distance is ΔE OK, the Euclidean distance in OKLab multiplied by 100. Values under about 2 are hard to tell apart side by side.
Code snippets
<div class="bg-slate-500 text-white">...</div>
<p class="text-slate-500 border-slate-500">...</p>.element {
color: var(--color-slate-500);
background-color: oklch(55.4% 0.046 257.417);
border-color: #62748e;
outline-color: rgb(98 116 142);
}import SwiftUI
extension Color {
static let slate500 = Color(red: 0.384, green: 0.455, blue: 0.557)
}import androidx.compose.ui.graphics.Color
val Slate500 = Color(0xFF62748E)import 'package:flutter/material.dart';
const slate500 = Color(0xFF62748E);<!-- res/values/colors.xml -->
<color name="slate_500">#62748E</color>Frequently asked questions
- What is the hex code for Tailwind slate-500?
- In Tailwind CSS v4, slate-500 is oklch(55.4% 0.046 257.417), which converts to #62748E (rgb(98, 116, 142)) in sRGB. In Tailwind v3 the same name was #64748B.
- What is the difference between slate-500 in Tailwind v3 and v4?
- v3 used the hex #64748B; v4 redefined the palette in OKLCH as oklch(55.4% 0.046 257.417). In v3, slate-500 was #64748B. The v4 value is ΔE OK 0.5 away, below the point where most people can tell them apart; v4 is more saturated.
- How do I use slate-500 in plain CSS?
- Tailwind v4 defines every palette color as a theme variable, so in CSS you write var(--color-slate-500). By default Tailwind only emits the variables your project uses; @theme static emits all of them.
- Can you use white text on slate-500?
- White text on slate-500 has a contrast ratio of 4.76:1, which passes AA for normal text but not AAA under WCAG 2.2. Black text reaches 4.40:1 and passes AA only for large text (24 px, or 18.66 px bold, and up). In APCA terms that is Lc −78.5 for white and Lc 31.0 for black.
- Which CSS named color is closest to slate-500?
- The closest is slategray (#708090) at ΔE OK 4.2, followed by dimgray and steelblue.
Last reviewed by Arielton Oberek.