Skip to content

Tailwind CSS v4 default palette

Tailwind gray-100: #F3F4F6

In Tailwind CSS v4, gray-100 is defined as --color-gray-100: oklch(96.7% 0.003 264.542), which is #F3F4F6 in hex and rgb(243, 244, 246): a neutral near-white. In Tailwind v3, gray-100 was #F3F4F6.

gray-100#F3F4F6

In OKLCH, gray-100 has a lightness of 96.7%, chroma 0.003 and hue 264.5°.

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

In v3, gray-100 was #F3F4F6. The v4 value is ΔE OK 0.0 away, below the point where most people can tell them apart.

Tailwind gray is a cool gray with a lighter blue tint than slate, the default neutral in many Tailwind projects.

Color codes for gray-100

Color codes for gray-100
Tailwind v4 token--color-gray-100
OKLCH (source value)oklch(96.7% 0.003 264.542)
HEX#F3F4F6
RGBrgb(243, 244, 246)
HSLhsl(220, 14%, 96%)
HWBhwb(220 95% 4%)
CMYK (naive, no ICC profile)cmyk(1%, 1%, 0%, 4%)
Decimal15,987,958
Tailwind v3 hex#F3F4F6
Utility classesbg-gray-100, text-gray-100, border-gray-100

Tailwind gray scale

Contrast and accessibility

On gray-100, black text has a contrast ratio of 19.08:1 and passes AAA at any text size; white text reaches 1.10: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 gray-10019.08:1PassPassPassPass99.4
White text on gray-1001.10:1FailFailFailFail0.0
Gray-100 text on white1.10:1FailFailFailFail0.0
Gray-100 text on black19.08:1PassPassPassPass−100.6

Tints and shades

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

Tints (mixed with white)

  1. 5%
    #f4f5f6
  2. 15%
    #f5f6f7
  3. 25%
    #f6f7f8
  4. 35%
    #f7f8f9
  5. 45%
    #f8f9fa
  6. 55%
    #fafafb
  7. 65%
    #fbfbfc
  8. 75%
    #fcfcfd
  9. 85%
    #fdfdfe
  10. 95%
    #fefeff

Shades (mixed with black)

  1. 5%
    #e7e8ea
  2. 15%
    #cfcfd1
  3. 25%
    #b6b7b9
  4. 35%
    #9e9fa0
  5. 45%
    #868687
  6. 55%
    #6d6e6f
  7. 65%
    #555556
  8. 75%
    #3d3d3e
  9. 85%
    #242525
  10. 95%
    #0c0c0c

Color harmonies

Rotating the hue in OKLCH while keeping lightness and chroma, gray-100's complementary color is #F5F4F2 (close to whitesmoke), its analogous colors are #F2F4F6 and #F4F4F6, and its triadic partners are #F6F3F3 and #F3F5F3. For text on top, black gives the higher contrast.

Color harmonies
HarmonyRotationColor
Complementary+180°#f5f4f2
Analogous−30°, +30°#f2f4f6#f4f4f6
Triadic+120°, +240°#f6f3f3#f3f5f3
Split-complementary+150°, +210°#f6f4f2#f4f4f2

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 gray-100 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
whitesmoke#f5f5f50.4
aliceblue#f0f8ff1.3
ghostwhite#f8f8ff1.6

Nearest Tailwind v4 colors

Nearest Tailwind v4 colors
ColorHEXΔE OK
zinc-100#f4f4f50.2
neutral-100#f5f5f50.4
slate-100#f1f5f90.4

Code snippets

Tailwind CSS
<div class="bg-gray-100 text-black">...</div>
<p class="text-gray-100 border-gray-100">...</p>
CSS
.element {
  color: var(--color-gray-100);
  background-color: oklch(96.7% 0.003 264.542);
  border-color: #f3f4f6;
  outline-color: rgb(243 244 246);
}
SwiftUI
import SwiftUI

extension Color {
  static let gray100 = Color(red: 0.953, green: 0.957, blue: 0.965)
}
Jetpack Compose
import androidx.compose.ui.graphics.Color

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

const gray100 = Color(0xFFF3F4F6);
Android XML
<!-- res/values/colors.xml -->
<color name="gray_100">#F3F4F6</color>

Frequently asked questions

What is the hex code for Tailwind gray-100?
In Tailwind CSS v4, gray-100 is oklch(96.7% 0.003 264.542), which converts to #F3F4F6 (rgb(243, 244, 246)) in sRGB. In Tailwind v3 the same name was #F3F4F6.
What is the difference between gray-100 in Tailwind v3 and v4?
v3 used the hex #F3F4F6; v4 redefined the palette in OKLCH as oklch(96.7% 0.003 264.542). In v3, gray-100 was #F3F4F6. The v4 value is ΔE OK 0.0 away, below the point where most people can tell them apart.
How do I use gray-100 in plain CSS?
Tailwind v4 defines every palette color as a theme variable, so in CSS you write var(--color-gray-100). By default Tailwind only emits the variables your project uses; @theme static emits all of them.
Can you use white text on gray-100?
White text on gray-100 has a contrast ratio of 1.10:1, which fails AA even for large text under WCAG 2.2. Black text reaches 19.08:1 and passes both AA and AAA. In APCA terms that is Lc 0.0 for white and Lc 99.4 for black.
Which CSS named color is closest to gray-100?
The closest is whitesmoke (#F5F5F5) at ΔE OK 0.4, followed by aliceblue and ghostwhite.

Last reviewed by Arielton Oberek.