Tailwind CSS v4 default palette
Tailwind rose-800: #A50036
In Tailwind CSS v4, rose-800 is defined as --color-rose-800: oklch(45.5% 0.188 13.697), which is #A50036 in hex and rgb(165, 0, 54): a medium-dark, vivid red. In Tailwind v3, rose-800 was #9F1239.
In OKLCH, rose-800 has a lightness of 45.5%, chroma 0.188 and hue 13.7°.
This OKLCH value lies outside sRGB. The hex #A50036 is the sRGB fallback from the CSS Color 4 gamut mapping algorithm; on Display P3 screens browsers show a more saturated color, close to color(display-p3 0.5912 0.0929 0.2201).
In v3, rose-800 was #9F1239. The v4 value is ΔE OK 1.7 away, below the point where most people can tell them apart; v4 is more saturated.
Tailwind rose is a warm pink-red between pink and red, often used as a softer alternative to red for destructive actions.
Color codes for rose-800
| Tailwind v4 token | --color-rose-800 |
|---|---|
| OKLCH (source value) | oklch(45.5% 0.188 13.697) |
| HEX | #A50036 |
| RGB | rgb(165, 0, 54) |
| HSL | hsl(340, 100%, 32%) |
| HWB | hwb(340 0% 35%) |
| CMYK (naive, no ICC profile) | cmyk(0%, 100%, 67%, 35%) |
| Decimal | 10,813,494 |
| Display P3 | color(display-p3 0.5912 0.0929 0.2201) |
| Tailwind v3 hex | #9F1239 |
| Utility classes | bg-rose-800, text-rose-800, border-rose-800 |
Tailwind rose scale
Contrast and accessibility
On rose-800, white text has a contrast ratio of 7.91:1 and passes AAA at any text size; black text reaches 2.65: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 rose-800 | 2.65:1 | Fail | Fail | Fail | Fail | 19.1 |
| White text on rose-800 | 7.91:1 | Pass | Pass | Pass | Pass | −89.8 |
| Rose-800 text on white | 7.91:1 | Pass | Pass | Pass | Pass | 85.0 |
| Rose-800 text on black | 2.65:1 | Fail | Fail | Fail | Fail | −17.1 |
Tints and shades
Each step mixes var(--color-rose-800) with white (tints) or black (shades) in gamma-encoded sRGB, the same result as color-mix(in srgb, var(--color-rose-800), white 25%) in CSS.
Tints (mixed with white)
- 5%
#aa0d40 - 15%
#b32654 - 25%
#bc4068 - 35%
#c5597c - 45%
#ce7390 - 55%
#d78ca5 - 65%
#e0a6b9 - 75%
#e9bfcd - 85%
#f2d9e1 - 95%
#fbf2f5
Shades (mixed with black)
- 5%
#9d0033 - 15%
#8c002e - 25%
#7c0029 - 35%
#6b0023 - 45%
#5b001e - 55%
#4a0018 - 65%
#3a0013 - 75%
#29000e - 85%
#190008 - 95%
#080003
Color harmonies
Rotating the hue in OKLCH while keeping lightness and chroma, rose-800's complementary color is #006766 (close to darkslategray), its analogous colors are #960B70 and #9A2A00, and its triadic partners are #2D6700 and #0052B9. For text on top, white gives the higher contrast.
| Harmony | Rotation | Color |
|---|---|---|
| Complementary | +180° | #006766 |
| Analogous | −30°, +30° | #960b70#9a2a00 |
| Triadic | +120°, +240° | #2d6700#0052b9 |
| Split-complementary | +150°, +210° | #006b43#006282 |
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 rose-800 is a warm color: its hue is 340° on the HSL wheel, in the red, orange and yellow range (0° to about 70°, plus reds above 330°) that is conventionally called warm.
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-rose-800 text-white">...</div>
<p class="text-rose-800 border-rose-800">...</p>.element {
color: var(--color-rose-800);
background-color: oklch(45.5% 0.188 13.697);
border-color: #a50036;
outline-color: rgb(165 0 54);
}import SwiftUI
extension Color {
static let rose800 = Color(red: 0.647, green: 0.000, blue: 0.212)
}import androidx.compose.ui.graphics.Color
val Rose800 = Color(0xFFA50036)import 'package:flutter/material.dart';
const rose800 = Color(0xFFA50036);<!-- res/values/colors.xml -->
<color name="rose_800">#A50036</color>Frequently asked questions
- What is the hex code for Tailwind rose-800?
- In Tailwind CSS v4, rose-800 is oklch(45.5% 0.188 13.697), which converts to #A50036 (rgb(165, 0, 54)) in sRGB after gamut mapping, because the OKLCH value is outside sRGB. In Tailwind v3 the same name was #9F1239.
- What is the difference between rose-800 in Tailwind v3 and v4?
- v3 used the hex #9F1239; v4 redefined the palette in OKLCH as oklch(45.5% 0.188 13.697). In v3, rose-800 was #9F1239. The v4 value is ΔE OK 1.7 away, below the point where most people can tell them apart; v4 is more saturated.
- How do I use rose-800 in plain CSS?
- Tailwind v4 defines every palette color as a theme variable, so in CSS you write var(--color-rose-800). By default Tailwind only emits the variables your project uses; @theme static emits all of them.
- Can you use white text on rose-800?
- White text on rose-800 has a contrast ratio of 7.91:1, which passes both AA and AAA under WCAG 2.2. Black text reaches 2.65:1 and fails AA even for large text. In APCA terms that is Lc −89.8 for white and Lc 19.1 for black.
- Which CSS named color is closest to rose-800?
- The closest is brown (#A52A2A) at ΔE OK 5.2, followed by firebrick and darkred.
Last reviewed by Arielton Oberek.