ColorWell · contrast check
White or black text on #3b82f6?
Tailwind blue-500
Use black text. It gives 5.71:1, which passes AA, not AAA.
White text
3.68:1
passes AA for large text only (18pt+/14pt bold)
Black text
5.71:1
passes AA, not AAA
What the thresholds mean
| Level | Needs | White text | Black text |
|---|---|---|---|
| AA, normal text | 4.5:1 | fail | pass |
| AA, large text (18pt+/14pt bold) | 3:1 | pass | pass |
| AAA, normal text | 7:1 | fail | fail |
If you need the other one to pass
Same hue, moved along the lightness ramp until the ratio clears AA.
- For white text, use
#1c5dc4— 6.15:1
The colour itself
- Hex:
#3b82f6 - RGB:
59, 130, 246 - Oklch:
62.31% 0.188 260
Shade ramp
#c9f4ff #acdfff #89c4ff #60a2ff #2e7af3 #1c5dc4 #094197 #00276c #000f43
Paste this into your config
// tailwind.config.js
colors: {
brand: {
100: "#c9f4ff",
200: "#acdfff",
300: "#89c4ff",
400: "#60a2ff",
500: "#2e7af3",
600: "#1c5dc4",
700: "#094197",
800: "#00276c",
900: "#000f43",
},
}Text colour to pair with the 500 shade (#2e7af3): black, at 5.19:1. For #3b82f6 itself it is black, at 5.71:1.
Your own colours, the same way
Paste any hex and get this page for it live — ratio, verdict, ramp. Export the whole palette to CSS variables, a Tailwind config or Figma tokens when you want it in the project rather than on the screen.
Open ColorWellOther colours
- text on #ef4444 Tailwind red-500
- text on #f97316 Tailwind orange-500
- text on #f59e0b Tailwind amber-500
- text on #eab308 Tailwind yellow-500
- text on #84cc16 Tailwind lime-500
- text on #22c55e Tailwind green-500
- text on #10b981 Tailwind emerald-500
- text on #14b8a6 Tailwind teal-500
- text on #06b6d4 Tailwind cyan-500
- text on #0ea5e9 Tailwind sky-500
- text on #6366f1 Tailwind indigo-500
- text on #8b5cf6 Tailwind violet-500