🎨 Tints · Shades · Tones · Free

Color Shades Generator —
Tints, Tones & Dark Shades
of Any Color

Enter any hex color and get a complete palette of lighter tints, darker shades, and muted tones — instantly. Built for designers who need a full color scale, not just one value. Copy any shade in Hex, RGB, or HSL, or export the whole palette as CSS variables, JSON, or a Tailwind config.

Steps:
Export:
Base Color
Lightest Shade
Darkest Shade
Popular starting colors

Everything This Shade Generator Does

Most shade generators give you a simple dark-to-light gradient and stop there. This one goes further because real design work needs more options than just "darker" and "lighter."

Six Palette Generation Modes

Shades (mix with black), Tints (mix with white), Tones (mix with gray), Monochromatic (HSL lightness scale), Pastel (high lightness, low saturation), and Vivid (pumped saturation). Each mode produces a fundamentally different character of palette from the same base color.

Adjustable Step Count

Choose between 5, 7, 9, 10, 12, 15, or 20 steps. Need a minimal 5-color system? Done. Need a Tailwind-style 11-stop scale for a full design system? That too. The step count changes both the strip and the card grid simultaneously.

Copy Any Shade Instantly

Every shade card has quick-copy buttons for Hex, RGB, and HSL. Click the large swatch strip at the top to copy the hex of any color on hover. You never need to open a separate panel just to copy a value.

Four Export Formats

Export your entire palette as CSS custom properties (--color-100 to --color-900), a JSON object, a Tailwind CSS color config, or a SCSS map. These exports are production-ready — copy, paste, and go.

25+ Preset Brand Colors

Jump-start from popular design starting points — classic blues, brand reds, warm oranges, forest greens, and more. Each preset is a carefully chosen base that generates a beautiful full-range palette without needing to pick your own starting point.

Base Color Info Panel

Below the generated palette, a three-card panel shows your base color, the lightest generated shade, and the darkest shade — each with their Hex, RGB, and HSL values and individual copy buttons. Useful when you need to reference endpoint values quickly.


How to Generate Color Shades

The whole process takes about 30 seconds. Here's a step-by-step walkthrough so you understand what each option does.

1

Enter your base color

Type a hex code directly into the input field, or click the colored swatch to open your browser's native color picker. You can also hit the Random button to start from an unexpected color — sometimes that's the fastest way to explore.

2

Pick a palette mode

Choose Shades for darker variations, Tints for lighter, Tones for muted versions, or Monochromatic for an HSL-based scale. If you're building a design system, Monochromatic usually produces the most versatile result. If you want soft background colors, try Pastel.

3

Set the number of steps

10 steps is a good default — it matches common design system scales like Tailwind and Material. Use 5 or 7 for simpler projects. Use 15 or 20 when you need very fine-grained control between shades, like for a large data visualization color ramp.

4

Copy individual shades

Hover over the strip to see hex values. Click any card's copy buttons for Hex, RGB, or HSL. The strip at the top is the quickest way to grab a hex — hover any cell and it shows the code, click to copy.

5

Export the full palette

For CSS: click "CSS Variables" to get a :root-ready block. For React/Next.js: click "JSON". For Tailwind CSS: click "Tailwind Config" for a drop-in color definition. All exports are numbered consistently, so you can swap modes and reuse the same variable names.

6

Try different preset colors

The preset grid at the bottom of the tool shows 25+ ready-made starting colors. Click any one to instantly load it as your base and regenerate the palette. This is the fastest way to compare how different base colors look across the same shade mode.


Tints vs Shades vs Tones — Visualized

These three terms get mixed up constantly. Here's what each one actually looks like for the same base color, so the difference is concrete rather than just theoretical.

Tints — mixing with white

Each step adds more white. The hue stays the same but the color becomes progressively lighter and more pastel-like. At 100% white, you reach pure white. Useful for background colors, subtle fills, and light mode surfaces.

Shades — mixing with black

Each step adds more black. The hue stays the same but the color becomes progressively darker and richer. At 100% black, you reach pure black. Useful for depth, pressed states, text on colored backgrounds, and dark mode accents.

Tones — mixing with gray

Each step adds more gray (50% black + 50% white). The color becomes more muted and earthy without changing dramatically in lightness. Tones often feel more sophisticated and natural than the pure saturated original. Great for body text, muted backgrounds, and aged aesthetics.

Monochromatic — HSL lightness scale

Rather than mixing with white or black, this adjusts the HSL lightness value directly. The result is perceptually more consistent — each step looks like an equal visual jump. This is how Tailwind CSS and most modern design systems generate their color scales.


Why Color Shades Matter in Real Design Work

Pick any professional design system — Tailwind, Material Design, Ant Design, Chakra UI, Radix — and one of the first things you'll notice is that every color in the palette comes in a range of shades. Not just one blue, but ten blues arranged from nearly-white to nearly-black. This isn't decoration. It's one of the most practical decisions in building a usable UI.

The reason is simple: different UI elements need colors that are related but not identical. Your primary button and your button's hover state need to be visually distinct. Your card background and your page background need to feel connected but separable. Your disabled text and your active text need to come from the same color family while communicating their different states clearly. A single color value can't do all of that. A range of shades can.

How Tailwind CSS does it — and why it works

Tailwind CSS introduced a lot of people to the 50–950 color scale. Each of their built-in colors (like Blue, Red, or Green) comes in 11 steps: 50, 100, 200, 300, 400, 500, 600, 700, 800, 900, and 950. The number loosely corresponds to lightness — 50 is nearly white, 500 is the "base" color, and 950 is nearly black.

What makes this scale particularly well-designed is that each step looks like roughly the same visual distance from the one before it. This isn't automatic when you just mix with black or white in equal proportions — human color perception isn't linear, so mathematically equal steps often look uneven visually. The Tailwind team spent considerable effort tuning their scales to look perceptually consistent, which is part of why they became a default template for design system thinking.

The Monochromatic mode in this generator uses the same HSL-lightness approach that underlies most well-made design system scales. If you want something that feels similar to a Tailwind scale for your custom color, that's the mode to use.

When to use tints vs shades vs tones

The right mode depends on what you're building:

The pastels deserve a special mention

Pastel palettes have gotten a lot of attention in design trends over the past few years, particularly in consumer apps and wellness products. The appeal is real — high-lightness, low-saturation colors feel soft, approachable, and modern without the visual tension of highly saturated colors. They're also significantly easier to build accessible backgrounds with, since light pastels pair well with dark text and easily clear WCAG contrast thresholds.

The Pastel mode in this generator takes your base color and shifts both the lightness up and the saturation down. The result is a range of soft, approachable versions of your color — from barely-there to definitely-pink (or whatever hue you started with). These work particularly well for backgrounds, chips, and tags in modern UI design.

Design system tip: When building a custom color scale, always check the darkest 2 shades as text on white, and the lightest 2 shades as backgrounds behind dark text. If those four combinations pass WCAG AA contrast (4.5:1 for normal text, 3:1 for large text), your scale is generally accessible enough for most UI applications.

Exporting for CSS, Tailwind, and beyond

The most time-consuming part of using a shade generator is usually getting the output into your project. This tool aims to make that zero-friction. The CSS Variables export gives you a block you can drop into your :root immediately:

--color-100: #dbeafe; --color-200: #bfdbfe; /* ...and so on */

The Tailwind Config export gives you an object you can paste directly into tailwind.config.js under theme.extend.colors. The numbering matches Tailwind's own convention (50, 100, 200 … 900, 950) so your custom color scale integrates seamlessly with existing Tailwind utilities. The SCSS Map export gives you a $color-map variable with all your shades, useful in preprocessor-heavy workflows.

Color Shades for Dark Mode Design

One of the trickiest challenges in building a dark mode is that you can't just invert your light mode palette. Colors behave differently on dark backgrounds — they look brighter, more saturated, and can cause eye strain if used at full intensity. A proper dark mode needs its own set of shades optimized for dark surfaces.

A common approach: for your primary action color (like a brand blue), use the 400 shade in dark mode where you'd use the 600 shade in light mode. The lighter shade on the dark background creates similar visual weight to the darker shade on the light background. This is why having a full shade scale matters so much — without it, you're guessing.

The Vivid mode in this generator is particularly useful for dark mode accent colors. It pumps up the saturation while keeping lightness at a manageable level, producing colors that read clearly on dark surfaces without being eye-straining.


Who Uses a Color Shades Generator

The need for a color scale comes up in more places than you'd expect. Here's where this tool gets used in real practice.

🧱

Design System Builders

Generating the full 9-step color scale for a new brand color that will live alongside existing system colors. The Tailwind export makes this especially smooth.

🌗

Dark Mode Implementation

Finding the right lighter shade of a primary color to use on dark backgrounds, where the original full-saturation color would be too intense or hard on the eyes.

🖥️

UI/UX Designers

Building interactive state variations — default, hover, active, focus, disabled — by picking different shades from a consistent scale rather than guessing on arbitrary darker or lighter values.

📊

Data Visualization

Creating sequential color scales for charts and heatmaps where each step needs to represent a meaningful increase in value. A 10 or 15 step monochromatic scale works well for this.

🎨

Brand Identity Design

Expanding a single brand color into a full palette. A client hands you one hex code from a logo and you need to build out a complete set of usable lighter and darker variations.

📱

Mobile App Development

iOS and Android design guidelines both recommend using color palettes with multiple lightness levels. Generating a proper scale ensures your app's UI feels polished across all contexts and lighting conditions.


Tips for Making Better Color Scales

Things I've learned from actually building design systems that make the difference between a palette that works and one that looks slightly off.

Your "base" color doesn't have to be in the middle

Most people assume their primary brand color should sit at step 500 (the middle of a 10-step scale). But this only works if your brand color is a mid-lightness value. A very dark navy blue placed at step 500 produces a scale where most of the top half is nearly black and unusable. Try adjusting your input color's lightness before generating so that the base lands visually in the middle of the range.

Always check accessible text combos

For any color scale, you'll typically use:

  • Steps 50–200 as backgrounds behind dark text
  • Steps 300–400 as borders and subtle fills
  • Steps 500–600 as interactive elements (buttons, links)
  • Steps 700–900 as text colors on light backgrounds

Test the combinations you'll actually use — not every pair, just the realistic ones — through a contrast checker before finalizing.

Monochromatic is your best bet for design systems

Pure tint and shade mixing (adding white or black) can produce scales that look inconsistent because human color perception is non-linear. The Monochromatic mode adjusts HSL lightness values directly, which typically produces more visually even steps. If your generated scale looks lopsided — lots of detail at one end and jumps at the other — try switching to Monochromatic mode.

Use fewer shades for simpler projects

It's tempting to generate a 15-step scale because it looks comprehensive. But if your project only has 3 UI components that use color, a 5-step scale is completely sufficient and much easier to maintain. A palette with too many steps is like a kitchen with too many knives — impressive, but most of them never get used and they just make decisions harder.

Name your exported variables semantically

The default CSS export uses numeric names like --color-100. These work fine but consider adding semantic aliases for key values in your actual codebase:

  • --blue-bg: var(--blue-50)
  • --blue-border: var(--blue-200)
  • --blue-text: var(--blue-700)

Semantic aliases let you change the underlying shade values without hunting through your codebase.

Tones work especially well for neutral palettes

If you're building a warm gray or cool gray neutral palette, start from a very lightly saturated color (a barely-blue or barely-orange base) and use Tones mode. The desaturation effect of gray-mixing reduces the saturation further, giving you a set of neutrals that have subtle warmth or coolness without being obviously colored. This is how most sophisticated neutral palettes in professional design systems are made.


Frequently Asked Questions About Color Shades

The questions people actually search for when working with color palettes — answered directly.

A tint is what you get when you mix a color with white — the result is lighter and more pastel. A shade is what you get when you mix a color with black — the result is darker and more intense. These terms come from traditional paint mixing. In digital design, "tints and shades" is often used loosely to mean any lighter or darker variation of a color, but technically they refer to mixing with white and black specifically. The third term you'll see is "tone" — that's mixing with gray, which desaturates the color without making it dramatically lighter or darker.
The cleanest way in modern CSS is to use the HSL color model and increase the lightness value. For example, if your base color is hsl(220, 90%, 50%), a lighter version is hsl(220, 90%, 70%). In CSS Level 4, you can also use the color-mix() function: color-mix(in srgb, #3B82F6, white 40%) mixes your color with 40% white. This tool generates exact hex values for lighter versions so you can paste them directly without needing to do the math yourself.
Most production design systems use 9 to 11 shades per color. Tailwind CSS uses 11 steps (50, 100, 200, 300, 400, 500, 600, 700, 800, 900, 950). Material Design 3 uses 10 tonal steps. The reasoning is that you need enough variation to cover all your UI states (background, surface, border, hover, active, text) without the scale being so granular that choosing between adjacent values becomes confusing. For small or personal projects, 5 or 7 shades is often perfectly sufficient.
A monochromatic palette uses a single base hue at different lightness and sometimes saturation levels. Because all the colors share the same hue, they automatically look harmonious — there's no risk of color clash. Monochromatic palettes are one of the most reliable choices for UI design because they simplify color decision-making while still giving you enough variation to build complex, layered interfaces. The Monochromatic mode in this generator produces a scale by stepping through HSL lightness values from light to dark while keeping the hue constant.
Generate your palette using this tool, then click the "Tailwind Config" export button. You'll get a JavaScript object in this format: { '50': '#eff6ff', '100': '#dbeafe', '200': '#bfdbfe', ... '950': '#172554' }. Paste this into your tailwind.config.js file under theme.extend.colors.yourColorName. The numbering matches Tailwind's own convention, so utility classes like bg-blue-500 will work the same way with your custom color.
Yes — and having a full shade scale is actually essential for proper dark mode implementation. The general principle is that you shift down a few steps in dark mode compared to light mode. For example, where you'd use shade 600 as a primary button in light mode, you'd use shade 400 in dark mode — the lighter shade has similar visual weight on a dark background as the darker shade has on a light background. The Vivid mode is particularly useful for dark mode accents because it generates colors with higher saturation that pop on dark surfaces without being harsh.
While this tool generates shades you can use in Figma, the best integration workflow is: generate your palette here, copy the hex values, then paste them into Figma as a local color style set. Many designers use this tool to quickly prototype a full color scale and then refine specific steps in Figma. If you use Figma Tokens or Style Dictionary, the JSON export from this tool is directly compatible with most design token workflows.
Select Pastel mode in the shade tabs. The tool creates pastels by increasing the lightness value significantly (to around 80–95%) and reducing saturation (to around 40–60%). This combination produces soft, airy colors that retain the character of the original hue without its full intensity. Alternatively, you can use the Tints mode for a more linear lightening that also moves toward pastels at the lighter end of the scale.

@ HtmlColor.Codes· All tools free · Built for designers & developers worldwide
✓ Copied!