Tailwind CSS v3.4 color family

Tailwind rose 11 shades, 50 to 950

Rose is one of the 22 color families in Tailwind CSS v3.4, with eleven shades from 50 to 950. Its 500 shade, #F43F5E, sits at OKLCH hue 16.4°. Lightness runs from 0.969 at 50 to 0.271 at 950.

500 shade
#F43F5E
OKLCH hue at 500
16.4°
Body text on white
600 to 950
Body text on black
50 to 500

Tailwind CSS 4.3.3

rose: current colors

11 shades with exact official OKLCH values. Use bg-rose-500, text-rose-500 or border-rose-500 in Tailwind. Wide-gamut colors are preserved; these are not the v3 hex values.

ColorExact OKLCHCSS variable
rose-50oklch(96.9% 0.015 12.422)--color-rose-50
rose-100oklch(94.1% 0.03 12.58)--color-rose-100
rose-200oklch(89.2% 0.058 10.001)--color-rose-200
rose-300oklch(81% 0.117 11.638)--color-rose-300
rose-400oklch(71.2% 0.194 13.428)--color-rose-400
rose-500oklch(64.5% 0.246 16.439)--color-rose-500
rose-600oklch(58.6% 0.253 17.585)--color-rose-600
rose-700oklch(51.4% 0.222 16.935)--color-rose-700
rose-800oklch(45.5% 0.188 13.697)--color-rose-800
rose-900oklch(41% 0.159 10.272)--color-rose-900
rose-950oklch(27.1% 0.105 12.094)--color-rose-950

Source: Tailwind CSS 4.3.3 theme.css (MIT). Values are pinned to this release. Older v3 reference values below are kept separately for existing projects.

Scale

Every shade, 50 to 950

Each shade has a page of its own. Under each, white and black text on it; a bold figure passes 4.5:1.

  1. 50#FFF1F2
    White
    1.09
    Black
    19.11
  2. 100#FFE4E6
    White
    1.20
    Black
    17.49
  3. 200#FECDD3
    White
    1.41
    Black
    14.88
  4. 300#FDA4AF
    White
    1.89
    Black
    11.10
  5. 400#FB7185
    White
    2.69
    Black
    7.80
  6. 500#F43F5E
    White
    3.67
    Black
    5.71
  7. 600#E11D48
    White
    4.69
    Black
    4.47
  8. 700#BE123C
    White
    6.28
    Black
    3.34
  9. 800#9F1239
    White
    8.01
    Black
    2.61
  10. 900#881337
    White
    9.56
    Black
    2.19
  11. 950#4C0519
    White
    15.63
    Black
    1.34

Values

Hex, RGB and OKLCH values

The Tailwind CSS v3.4 values, with the contrast of white and black text on each shade.

ShadeHEXRGBOKLCHWhite textBlack text
rose-50#FFF1F2rgb(255, 241, 242)oklch(0.969 0.015 12.4)1.0919.11
rose-100#FFE4E6rgb(255, 228, 230)oklch(0.941 0.030 12.6)1.2017.49
rose-200#FECDD3rgb(254, 205, 211)oklch(0.892 0.056 10.0)1.4114.88
rose-300#FDA4AFrgb(253, 164, 175)oklch(0.810 0.106 11.6)1.8911.10
rose-400#FB7185rgb(251, 113, 133)oklch(0.719 0.169 13.4)2.697.80
rose-500#F43F5Ergb(244, 63, 94)oklch(0.645 0.215 16.4)3.675.71
rose-600#E11D48rgb(225, 29, 72)oklch(0.586 0.222 17.6)4.694.47
rose-700#BE123Crgb(190, 18, 60)oklch(0.514 0.198 16.9)6.283.34
rose-800#9F1239rgb(159, 18, 57)oklch(0.455 0.171 13.7)8.012.61
rose-900#881337rgb(136, 19, 55)oklch(0.410 0.150 10.3)9.562.19
rose-950#4C0519rgb(76, 5, 25)oklch(0.271 0.101 12.1)15.631.34

Legibility

Which shades pass on each other

Every shade as text on every other shade. 28 of 110 pairings pass 4.5:1 for body text, and 22 more pass 3:1 for large text.

Text shade, then background shade50100200300400500600700800900950
50same shade1.091.281.722.443.344.275.727.298.7014.23
1001.09same shade1.171.572.243.053.915.236.677.9613.02
2001.281.17same shade1.341.902.603.324.455.686.7811.08
3001.721.571.34same shade1.421.942.483.324.235.058.26
4002.442.241.901.42same shade1.361.742.332.973.555.80
5003.343.052.601.941.36same shade1.271.712.182.604.25
6004.273.913.322.481.741.27same shade1.331.702.033.32
7005.725.234.453.322.331.711.33same shade1.271.522.48
8007.296.675.684.232.972.181.701.27same shade1.191.95
9008.707.966.785.053.552.602.031.521.19same shade1.63
95014.2313.0211.088.265.804.253.322.481.951.63same shade

Rows are the text shade, columns the background. A bold figure on a tinted cell passes 4.5:1 for body text; a plain one passes 3:1 for large text only; a faint one fails.

Color vision

The scale with color blindness

The same eleven shades as seen with each color vision deficiency. Lightness keeps a ramp in order even where its hue collapses.

Simulated with Machado et al. (2009) at full severity, in linear light.

What each type sees
  • Typical vision

    Closest neighbors: 800 and 900, ΔE2000 5.0

  • Protanopia

    Closest neighbors: 50 and 100, ΔE2000 2.4

  • Deuteranopia

    Closest neighbors: 50 and 100, ΔE2000 2.4

  • Tritanopia

    Closest neighbors: 50 and 100, ΔE2000 5.6

  • Achromatopsia

    Closest neighbors: 50 and 100, ΔE2000 2.1

Code

Design tokens

The whole family in six formats, ready to paste.

CSS custom properties

:root {
  --color-rose-50: #fff1f2;
  --color-rose-100: #ffe4e6;
  --color-rose-200: #fecdd3;
  --color-rose-300: #fda4af;
  --color-rose-400: #fb7185;
  --color-rose-500: #f43f5e;
  --color-rose-600: #e11d48;
  --color-rose-700: #be123c;
  --color-rose-800: #9f1239;
  --color-rose-900: #881337;
  --color-rose-950: #4c0519;
}

Tailwind config

// tailwind.config.js — rose is built in; this pins the v3.4 values.
module.exports = {
  theme: {
    extend: {
      colors: {
        rose: {
          50: '#fff1f2',
          100: '#ffe4e6',
          200: '#fecdd3',
          300: '#fda4af',
          400: '#fb7185',
          500: '#f43f5e',
          600: '#e11d48',
          700: '#be123c',
          800: '#9f1239',
          900: '#881337',
          950: '#4c0519',
        },
      },
    },
  },
};

Tailwind v4 theme

/* app.css — Tailwind CSS v4 */
@import "tailwindcss";

@theme {
  /* v4 has its own rose; these pin the v3 values. */
  --color-rose-50: oklch(0.969 0.015 12.4);
  --color-rose-100: oklch(0.941 0.030 12.6);
  --color-rose-200: oklch(0.892 0.056 10.0);
  --color-rose-300: oklch(0.810 0.106 11.6);
  --color-rose-400: oklch(0.719 0.169 13.4);
  --color-rose-500: oklch(0.645 0.215 16.4);
  --color-rose-600: oklch(0.586 0.222 17.6);
  --color-rose-700: oklch(0.514 0.198 16.9);
  --color-rose-800: oklch(0.455 0.171 13.7);
  --color-rose-900: oklch(0.410 0.150 10.3);
  --color-rose-950: oklch(0.271 0.101 12.1);
}

Design tokens (W3C DTCG)

{
  "color": {
    "rose": {
      "50": {
        "$type": "color",
        "$value": {
          "colorSpace": "srgb",
          "components": [1, 0.9451, 0.949],
          "hex": "#fff1f2"
        }
      },
      "100": {
        "$type": "color",
        "$value": {
          "colorSpace": "srgb",
          "components": [1, 0.8941, 0.902],
          "hex": "#ffe4e6"
        }
      },
      "200": {
        "$type": "color",
        "$value": {
          "colorSpace": "srgb",
          "components": [0.9961, 0.8039, 0.8275],
          "hex": "#fecdd3"
        }
      },
      "300": {
        "$type": "color",
        "$value": {
          "colorSpace": "srgb",
          "components": [0.9922, 0.6431, 0.6863],
          "hex": "#fda4af"
        }
      },
      "400": {
        "$type": "color",
        "$value": {
          "colorSpace": "srgb",
          "components": [0.9843, 0.4431, 0.5216],
          "hex": "#fb7185"
        }
      },
      "500": {
        "$type": "color",
        "$value": {
          "colorSpace": "srgb",
          "components": [0.9569, 0.2471, 0.3686],
          "hex": "#f43f5e"
        }
      },
      "600": {
        "$type": "color",
        "$value": {
          "colorSpace": "srgb",
          "components": [0.8824, 0.1137, 0.2824],
          "hex": "#e11d48"
        }
      },
      "700": {
        "$type": "color",
        "$value": {
          "colorSpace": "srgb",
          "components": [0.7451, 0.0706, 0.2353],
          "hex": "#be123c"
        }
      },
      "800": {
        "$type": "color",
        "$value": {
          "colorSpace": "srgb",
          "components": [0.6235, 0.0706, 0.2235],
          "hex": "#9f1239"
        }
      },
      "900": {
        "$type": "color",
        "$value": {
          "colorSpace": "srgb",
          "components": [0.5333, 0.0745, 0.2157],
          "hex": "#881337"
        }
      },
      "950": {
        "$type": "color",
        "$value": {
          "colorSpace": "srgb",
          "components": [0.298, 0.0196, 0.098],
          "hex": "#4c0519"
        }
      }
    }
  }
}

SwiftUI colors

import SwiftUI

enum Palette {
    static let rose50 = Color(.sRGB, red: 1.000, green: 0.945, blue: 0.949, opacity: 1)
    static let rose100 = Color(.sRGB, red: 1.000, green: 0.894, blue: 0.902, opacity: 1)
    static let rose200 = Color(.sRGB, red: 0.996, green: 0.804, blue: 0.827, opacity: 1)
    static let rose300 = Color(.sRGB, red: 0.992, green: 0.643, blue: 0.686, opacity: 1)
    static let rose400 = Color(.sRGB, red: 0.984, green: 0.443, blue: 0.522, opacity: 1)
    static let rose500 = Color(.sRGB, red: 0.957, green: 0.247, blue: 0.369, opacity: 1)
    static let rose600 = Color(.sRGB, red: 0.882, green: 0.114, blue: 0.282, opacity: 1)
    static let rose700 = Color(.sRGB, red: 0.745, green: 0.071, blue: 0.235, opacity: 1)
    static let rose800 = Color(.sRGB, red: 0.624, green: 0.071, blue: 0.224, opacity: 1)
    static let rose900 = Color(.sRGB, red: 0.533, green: 0.075, blue: 0.216, opacity: 1)
    static let rose950 = Color(.sRGB, red: 0.298, green: 0.020, blue: 0.098, opacity: 1)
}

Jetpack Compose colors

import androidx.compose.ui.graphics.Color

object Palette {
    val Rose50 = Color(0xFFFFF1F2)
    val Rose100 = Color(0xFFFFE4E6)
    val Rose200 = Color(0xFFFECDD3)
    val Rose300 = Color(0xFFFDA4AF)
    val Rose400 = Color(0xFFFB7185)
    val Rose500 = Color(0xFFF43F5E)
    val Rose600 = Color(0xFFE11D48)
    val Rose700 = Color(0xFFBE123C)
    val Rose800 = Color(0xFF9F1239)
    val Rose900 = Color(0xFF881337)
    val Rose950 = Color(0xFF4C0519)
}

Families

Other Tailwind families

The rest of the Tailwind CSS v3.4 palette, in the order Tailwind lists it.