Skip to content

Tailwind CSS v4 default palette

Tailwind olive-50: #FBFBF9

In Tailwind CSS v4, olive-50 is defined as --color-olive-50: oklch(98.8% 0.003 106.5), which is #FBFBF9 in hex and rgb(251, 251, 249): a neutral near-white.

olive-50#FBFBF9

In OKLCH, olive-50 has a lightness of 98.8%, chroma 0.003 and hue 106.5°.

The value fits inside sRGB, so the hex #FBFBF9 represents it without loss on any screen.

Tailwind olive is a tinted neutral added in v4.2: a gray with a yellow-green cast. It has no v3 equivalent.

Color codes for olive-50

Color codes for olive-50
Tailwind v4 token--color-olive-50
OKLCH (source value)oklch(98.8% 0.003 106.5)
HEX#FBFBF9
RGBrgb(251, 251, 249)
HSLhsl(60, 20%, 98%)
HWBhwb(60 98% 2%)
CMYK (naive, no ICC profile)cmyk(0%, 0%, 1%, 2%)
Decimal16,514,041
Utility classesbg-olive-50, text-olive-50, border-olive-50

Tailwind olive scale

Contrast and accessibility

On olive-50, black text has a contrast ratio of 20.26:1 and passes AAA at any text size; white text reaches 1.03: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.

Contrast and accessibility
PairRatioAAAA largeAAAAAA largeAPCA Lc
Black text on olive-5020.26:1PassPassPassPass103.6
White text on olive-501.03:1FailFailFailFail0.0
Olive-50 text on white1.03:1FailFailFailFail0.0
Olive-50 text on black20.26:1PassPassPassPass−105.1

Tints and shades

Each step mixes var(--color-olive-50) with white (tints) or black (shades) in gamma-encoded sRGB, the same result as color-mix(in srgb, var(--color-olive-50), white 25%) in CSS.

Tints (mixed with white)

  1. 5%
    #fbfbf9
  2. 15%
    #fcfcfa
  3. 25%
    #fcfcfb
  4. 35%
    #fcfcfb
  5. 45%
    #fdfdfc
  6. 55%
    #fdfdfc
  7. 65%
    #fefefd
  8. 75%
    #fefefe
  9. 85%
    #fefefe
  10. 95%
    #ffffff

Shades (mixed with black)

  1. 5%
    #eeeeed
  2. 15%
    #d5d5d4
  3. 25%
    #bcbcbb
  4. 35%
    #a3a3a2
  5. 45%
    #8a8a89
  6. 55%
    #717170
  7. 65%
    #585857
  8. 75%
    #3f3f3e
  9. 85%
    #262625
  10. 95%
    #0d0d0c

Color harmonies

Rotating the hue in OKLCH while keeping lightness and chroma, olive-50's complementary color is #FBFBFD (close to snow), its analogous colors are #FCFBF9 and #FAFCFA, and its triadic partners are #F9FBFD and #FDFAFB. For text on top, black gives the higher contrast.

Color harmonies
HarmonyRotationColor
Complementary+180°#fbfbfd
Analogous−30°, +30°#fcfbf9#fafcfa
Triadic+120°, +240°#f9fbfd#fdfafb
Split-complementary+150°, +210°#fafbfd#fcfafc

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 olive-50 is close to neutral: its OKLCH chroma is only 0.003, so its temperature comes from context. It has no perceptible hue.

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.

Nearest CSS named colors

Nearest CSS named colors
ColorHEXΔE OK
snow#fffafa0.6
mintcream#f5fffa1.2
floralwhite#fffaf01.2

Nearest Tailwind v4 colors

Nearest Tailwind v4 colors
ColorHEXΔE OK
taupe-50#fbfaf90.3
stone-50#fafaf90.4
mist-50#f9fbfb0.4

Code snippets

Tailwind CSS
<div class="bg-olive-50 text-black">...</div>
<p class="text-olive-50 border-olive-50">...</p>
CSS
.element {
  color: var(--color-olive-50);
  background-color: oklch(98.8% 0.003 106.5);
  border-color: #fbfbf9;
  outline-color: rgb(251 251 249);
}
SwiftUI
import SwiftUI

extension Color {
  static let olive50 = Color(red: 0.984, green: 0.984, blue: 0.976)
}
Jetpack Compose
import androidx.compose.ui.graphics.Color

val Olive50 = Color(0xFFFBFBF9)
Flutter
import 'package:flutter/material.dart';

const olive50 = Color(0xFFFBFBF9);
Android XML
<!-- res/values/colors.xml -->
<color name="olive_50">#FBFBF9</color>

Frequently asked questions

What is the hex code for Tailwind olive-50?
In Tailwind CSS v4, olive-50 is oklch(98.8% 0.003 106.5), which converts to #FBFBF9 (rgb(251, 251, 249)) in sRGB.
Is olive-50 available in Tailwind v3?
No. The olive scale was added in Tailwind CSS v4.2. In v3 you can recreate it in tailwind.config.js under theme.extend.colors with the hex #FBFBF9.
How do I use olive-50 in plain CSS?
Tailwind v4 defines every palette color as a theme variable, so in CSS you write var(--color-olive-50). By default Tailwind only emits the variables your project uses; @theme static emits all of them.
Can you use white text on olive-50?
White text on olive-50 has a contrast ratio of 1.03:1, which fails AA even for large text under WCAG 2.2. Black text reaches 20.26:1 and passes both AA and AAA. In APCA terms that is Lc 0.0 for white and Lc 103.6 for black.
Which CSS named color is closest to olive-50?
The closest is snow (#FFFAFA) at ΔE OK 0.6, followed by mintcream and floralwhite.

Last reviewed by Arielton Oberek.