Tailwind color scheme generator
Enter any hex color and get an 11-shade Tailwind palette, from shade 50 to 950. Copy the output into your tailwind.config.js or as CSS custom properties.
Click any swatch to copy its hex. The outlined swatch (primary row, shade 500) is your input color.
// tailwind.config.js
module.exports = {
theme: {
extend: {
colors: {
gray: {
50: '#F7F7F7',
100: '#E9E9EA',
200: '#D5D6D8',
300: '#C1C3C6',
400: '#AAAEB4',
500: '#9197A1',
600: '#737B87',
700: '#5A606A',
800: '#43474E',
900: '#2F3237',
950: '#202225',
},
brand: {
50: '#F7F7F8',
100: '#E5E8EE',
200: '#C7D3E5',
300: '#A4BCE3',
400: '#75A1E8',
500: '#3C83F6',
600: '#1565E5',
700: '#1851AC',
800: '#173D7A',
900: '#132C53',
950: '#0F1E36',
},
blue: {
50: '#F7F7F8',
100: '#E6E5EE',
200: '#CBC7E5',
300: '#ABA4E3',
400: '#8275E8',
500: '#523CF6',
600: '#2D15E5',
700: '#2918AC',
800: '#23177A',
900: '#1B1353',
950: '#130F36',
},
violet: {
50: '#F7F7F8',
100: '#EAE5EE',
200: '#DAC7E5',
300: '#CBA4E3',
400: '#BC75E8',
500: '#AF3CF6',
600: '#9515E5',
700: '#7318AC',
800: '#54177A',
900: '#3A1353',
950: '#270F36',
},
fuchsia: {
50: '#F8F7F8',
100: '#EEE5ED',
200: '#E5C7E2',
300: '#E3A4DC',
400: '#E875DB',
500: '#F63CE0',
600: '#E515CC',
700: '#AC189B',
800: '#7A176F',
900: '#53134B',
950: '#360F32',
},
rose: {
50: '#F8F7F7',
100: '#EEE5E8',
200: '#E5C7D3',
300: '#E3A4BC',
400: '#E875A1',
500: '#F63C83',
600: '#E51565',
700: '#AC1851',
800: '#7A173D',
900: '#53132C',
950: '#360F1E',
},
red: {
50: '#F8F7F7',
100: '#EEE6E5',
200: '#E5CBC7',
300: '#E3ABA4',
400: '#E88275',
500: '#F6523C',
600: '#E52D15',
700: '#AC2918',
800: '#7A2317',
900: '#531B13',
950: '#36130F',
},
orange: {
50: '#F8F7F7',
100: '#EEEAE5',
200: '#E5DAC7',
300: '#E3CBA4',
400: '#E8BC75',
500: '#F6AF3C',
600: '#E59515',
700: '#AC7318',
800: '#7A5417',
900: '#533A13',
950: '#36270F',
},
yellow: {
50: '#F8F8F7',
100: '#EDEEE5',
200: '#E2E5C7',
300: '#DCE3A4',
400: '#DBE875',
500: '#E0F63C',
600: '#CCE515',
700: '#9BAC18',
800: '#6F7A17',
900: '#4B5313',
950: '#32360F',
},
lime: {
50: '#F7F8F7',
100: '#E8EEE5',
200: '#D3E5C7',
300: '#BCE3A4',
400: '#A1E875',
500: '#83F63C',
600: '#65E515',
700: '#51AC18',
800: '#3D7A17',
900: '#2C5313',
950: '#1E360F',
},
green: {
50: '#F7F8F7',
100: '#E5EEE6',
200: '#C7E5CB',
300: '#A4E3AB',
400: '#75E882',
500: '#3CF652',
600: '#15E52D',
700: '#18AC29',
800: '#177A23',
900: '#13531B',
950: '#0F3613',
},
teal: {
50: '#F7F8F7',
100: '#E5EEEA',
200: '#C7E5DA',
300: '#A4E3CB',
400: '#75E8BC',
500: '#3CF6AF',
600: '#15E595',
700: '#18AC73',
800: '#177A54',
900: '#13533A',
950: '#0F3627',
},
cyan: {
50: '#F7F8F8',
100: '#E5EDEE',
200: '#C7E2E5',
300: '#A4DCE3',
400: '#75DBE8',
500: '#3CE0F6',
600: '#15CCE5',
700: '#189BAC',
800: '#176F7A',
900: '#134B53',
950: '#0F3236',
},
},
},
},
};How it works
- 1. Enter a color using the color picker or a hex code. The input color becomes shade 500, the midpoint of the generated scale.
- 2. The generator computes 10 additional shades by interpolating lightness and saturation in HSL toward near-white (shade 50) and near-black (shade 950), using perceptual weights tuned to match Tailwind's scale distribution.
- 3. Name your color, then copy the palette as a
tailwind.config.jssnippet or as CSS:rootvariables. Click any individual swatch to copy that shade's hex value.
Using color scales in Tailwind
Tailwind's color system is built on consistent numeric scales. Once you add your palette to the config, you can reference any shade with utility classes like bg-brand-100, text-brand-700, or border-brand-300.
A common convention: use shades 50–100 for tinted backgrounds and surfaces, 200–400 for decorative borders and icons, 500–600 for primary actions and interactive elements, and 700–950 for headings and high-contrast text on light backgrounds.
Always verify contrast ratios for text-on-background combinations before shipping. Use the contrast checker to confirm WCAG AA or AAA compliance for your chosen shade pairs.
Frequently asked questions
- Tailwind CSS uses an 11-step color scale with shades numbered 50, 100, 200, 300, 400, 500, 600, 700, 800, 900, and 950. Shade 50 is the lightest (near-white) and 950 is the darkest (near-black). This system gives you predictable, consistent color variations for backgrounds, text, borders, and hover states across your UI.
- Your primary brand color is typically placed at shade 500 or 600. Shade 500 works well as a button background with white text (check WCAG contrast first), while 600 and 700 are common for hover states. Lighter shades (50–200) work for backgrounds and tinted surfaces; darker shades (700–950) for headings and high-contrast elements.
-
Copy the tailwind.config snippet and merge it into the
theme.extend.colorssection of yourtailwind.config.jsortailwind.config.tsfile. You can then use classes likebg-brand-500ortext-brand-700anywhere in your templates. If you prefer CSS custom properties, use the CSS variables tab and reference them withvar(--color-brand-500). -
Yes. A complete color scale suits dark mode well because you can reassign which shade serves which role. Use shade 100 for text in dark mode where you would use 900 in light mode, and 900 for backgrounds where you would use 50 in light mode. Tailwind's
dark:variant handles the switching.