0Pricing
Tailwind CSS Academy · Lesson

Tailwind's Color Palette

Explore the full Tailwind color system with shades from 50 to 950, and apply background colors using bg-* utilities.

Tailwind's Color Palette is a free Tailwind CSS Academy lesson on CoddyKit — lesson 1 of 4. You can read the complete lesson below for free — then practise it hands-on in the browser with a built-in code editor and a 24/7 AI tutor. It is part of the Tailwind CSS Academy learning path, one of 4 lessons in the course, and your progress syncs across the web and the CoddyKit app.

Overview of the Color Palette

Tailwind's default color palette contains 22 named color families, each with 11 shades numbered from 50 to 950. The families include neutrals (slate, gray, zinc, stone, neutral), warm tones (red, orange, amber, yellow), cool tones (lime, green, emerald, teal, cyan, sky, blue, indigo, violet), and vibrant accents (purple, fuchsia, pink, rose). Every shade is pre-approved for use in your design system.

<!-- Using different color families -->
<div class="bg-slate-100">Slate 100</div>
<div class="bg-blue-500">Blue 500</div>
<div class="bg-emerald-600">Emerald 600</div>
<div class="bg-rose-400">Rose 400</div>

Understanding Shade Numbers

Shade numbers communicate lightness: 50 is nearly white (a faint tint), 100–300 are light pastels, 400–600 are vibrant mid-tones, 700–800 are dark and saturated, and 900–950 are nearly black. As a rule of thumb, use 50–200 for backgrounds, 400–600 for icons and accents, and 700–900 for text to guarantee readable contrast on white.

<div class="bg-blue-50 p-4">Shade 50 — near-white background</div>
<div class="bg-blue-200 p-4">Shade 200 — light accent</div>
<div class="bg-blue-500 p-4 text-white">Shade 500 — vivid button color</div>
<div class="bg-blue-700 p-4 text-white">Shade 700 — dark hover state</div>
<div class="bg-blue-950 p-4 text-white">Shade 950 — deep background</div>

Applying Background Colors

Apply background colors with the bg-{color}-{shade} utility. This sets CSS background-color on the element. Use a light shade like bg-indigo-50 for subtle section backgrounds, a mid-tone like bg-indigo-600 for primary buttons, and a dark shade like bg-indigo-950 for footer and sidebar backgrounds. Always pair with a text color that provides sufficient contrast.

<!-- Section with subtle tint -->
<section class="bg-indigo-50 py-16 px-6">
  <h2 class="text-indigo-900 text-2xl font-bold">Features</h2>
</section>

<!-- Primary button -->
<button class="bg-indigo-600 hover:bg-indigo-700 text-white px-6 py-2 rounded">
  Call to Action
</button>

Special Color Values

Beyond the numbered palette, Tailwind provides several special color keywords. bg-white and bg-black set pure white and black. bg-transparent makes the background transparent (inherits parent). bg-current uses the element's current text color as the background. bg-inherit explicitly inherits the background from the parent element.

<div class="bg-white p-4">White background</div>
<div class="bg-black text-white p-4">Black background</div>
<div class="bg-transparent border border-gray-300 p-4">
  Transparent (shows parent background)
</div>

Color Families: Warm vs Cool

Choosing between warm and cool colors affects the emotional tone of your design. Warm colors (red, orange, amber, yellow) convey energy, urgency, and warmth — great for alerts, sale badges, and warning states. Cool colors (blue, indigo, teal, cyan) convey trust, calm, and professionalism — ideal for primary actions, data dashboards, and corporate applications.

<!-- Warm: urgency/alert -->
<div class="bg-amber-100 border-l-4 border-amber-500 text-amber-800 p-4">
  Limited time offer!
</div>

<!-- Cool: trust/primary -->
<div class="bg-blue-100 border-l-4 border-blue-500 text-blue-800 p-4">
  Your data is encrypted and secure.
</div>

Neutral Grays: Slate vs Gray vs Zinc

Tailwind has five neutral gray families: slate (blue-gray tint), gray (neutral), zinc (slightly warm), neutral (pure neutral), and stone (warm tan). The choice between them is subtle but matters for branding. Slate suits tech and developer products. Gray works universally. Stone suits natural, earthy brands. Pick one and use it consistently throughout your project.

<p class="text-slate-700">Slate gray — cool, tech-forward</p>
<p class="text-gray-700">Gray — universal neutral</p>
<p class="text-zinc-700">Zinc — slightly warm neutral</p>
<p class="text-stone-700">Stone — earthy warmth</p>

Building a Color-Coded Status System

A practical use of Tailwind's color families is building a status indicator system. Map semantic states to color families: success to green, warning to yellow, error to red, info to blue, and neutral to gray. Use the 100 shade for the background and the 700 shade for text to ensure both contrast and visual coherence.

<div class="flex flex-col gap-2">
  <span class="bg-green-100 text-green-700 px-3 py-1 rounded-full text-sm font-medium">Success</span>
  <span class="bg-yellow-100 text-yellow-700 px-3 py-1 rounded-full text-sm font-medium">Warning</span>
  <span class="bg-red-100 text-red-700 px-3 py-1 rounded-full text-sm font-medium">Error</span>
  <span class="bg-blue-100 text-blue-700 px-3 py-1 rounded-full text-sm font-medium">Info</span>
  <span class="bg-gray-100 text-gray-700 px-3 py-1 rounded-full text-sm font-medium">Neutral</span>
</div>

Background Opacity Modifier

The slash opacity modifier works for background colors too. bg-blue-600/20 applies the blue-600 color at 20% opacity, creating a translucent tint effect. This is commonly used for overlay backgrounds, frosted glass effects, and colored highlight backgrounds behind content without completely obscuring what is behind them.

<!-- Translucent modal backdrop -->
<div class="fixed inset-0 bg-gray-900/50 flex items-center justify-center">
  <div class="bg-white rounded-xl p-8 shadow-2xl">
    Modal content
  </div>
</div>

Choosing Primary and Accent Colors

A common pattern is to choose one primary color for main interactive elements and one accent color to highlight key information. For example, indigo as primary and amber as accent. Both colors are already present in Tailwind's palette, so you immediately have a full spectrum of shades without configuring anything.

<!-- Primary action: indigo -->
<button class="bg-indigo-600 hover:bg-indigo-700 text-white px-6 py-2 rounded-lg">
  Primary Action
</button>

<!-- Accent highlight: amber -->
<span class="bg-amber-400 text-amber-900 text-xs font-bold px-2 py-0.5 rounded">
  NEW
</span>

Dark Mode Background Colors

In dark mode, backgrounds shift from light to dark shades. Use the dark: prefix to set background colors for dark theme. A typical pattern: main background bg-white dark:bg-gray-900, card surface bg-gray-50 dark:bg-gray-800, and elevated elements bg-white dark:bg-gray-700. This three-level elevation system creates depth in dark UIs.

<body class="bg-white dark:bg-gray-900">
  <div class="bg-gray-50 dark:bg-gray-800 rounded-xl p-6">
    <div class="bg-white dark:bg-gray-700 rounded-lg p-4">
      Elevated card in both themes
    </div>
  </div>
</body>

Extending the Palette

If the default palette does not match your brand, extend it in tailwind.config.js under theme.extend.colors. You can add entirely new color families with custom shades, or add a single brand color. Once defined, the new color is available with every Tailwind utility: bg-brand-500, text-brand-700, border-brand-300, etc.

// tailwind.config.js
module.exports = {
  theme: {
    extend: {
      colors: {
        brand: {
          50: '#f0f9ff',
          500: '#0ea5e9',
          900: '#0c4a6e',
        },
      },
    },
  },
};

Quick Check

Test your understanding of Tailwind CSS Mastery concepts from this lesson.

Lesson Recap

In this lesson you learned: Tailwind's 22 color families each have 11 shades from 50 (light) to 950 (dark), bg-{color}-{shade} applies background color and the /opacity modifier adds transparency, and warm colors convey urgency while cool colors convey trust. Next up we create gradients with Tailwind's gradient background utilities.

Frequently asked questions

Is the “Tailwind's Color Palette” lesson free?

Yes — the full text of “Tailwind's Color Palette” is free to read here on the web, and the Tailwind CSS Academy course includes 4 lessons in total. To practise it interactively (a built-in code editor and a 24/7 AI tutor) and unlock the rest of the Tailwind CSS Academy course, upgrade to CoddyKit PRO.

What will I learn in “Tailwind's Color Palette”?

Explore the full Tailwind color system with shades from 50 to 950, and apply background colors using bg-* utilities. You practise Tailwind CSS Academy with hands-on code you run directly in the browser, and a 24/7 AI tutor answers your questions as you work through the lesson.

Do I need any experience to start Tailwind CSS Academy?

No prior experience is required. Tailwind CSS Academy on CoddyKit is structured for beginners through advanced learners; this is — lesson 1 of 4, so you can start here or from the beginning and move at your own pace.

How long does the “Tailwind's Color Palette” lesson take?

Most CoddyKit lessons take about 5–10 minutes. Each one is bite-sized and interactive, so you make steady progress and pick up exactly where you left off across the web and the app.

Can I write and run code in this Tailwind CSS Academy lesson?

Yes. Every Tailwind CSS Academy lesson includes a built-in code editor, so you write and run real code right in your browser and get instant AI feedback — no local setup required.

All lessons in this course

  1. Tailwind's Color Palette
  2. Background Gradients
  3. Opacity and Color Modifiers
  4. Background Size, Position, and Repeat
← Back to Tailwind CSS Academy