ColorWell · contrast check
White or black text on #8b5cf6?
Tailwind violet-500
Use black text. It gives 4.96:1, which passes AA, not AAA.
White text
4.23:1
passes AA for large text only (18pt+/14pt bold)
Black text
4.96: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
#6c3ec9— 6.62:1
The colour itself
- Hex:
#8b5cf6 - RGB:
139, 92, 246 - Oklch:
60.56% 0.219 293
Shade ramp
#f4e3ff #e1cbff #c9acff #ac86ff #8a57fa #6c3ec9 #50279b #350f6f #1c0046
Paste this into your config
// tailwind.config.js
colors: {
brand: {
100: "#f4e3ff",
200: "#e1cbff",
300: "#c9acff",
400: "#ac86ff",
500: "#8a57fa",
600: "#6c3ec9",
700: "#50279b",
800: "#350f6f",
900: "#1c0046",
},
}Text colour to pair with the 500 shade (#8a57fa): black, at 4.82:1. For #8b5cf6 itself it is black, at 4.96: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 #3b82f6 Tailwind blue-500
- text on #6366f1 Tailwind indigo-500