Color Shades & Tints Generator
Generate an 11-step color scale from any hex color
Click any swatch to copy its hex value
:root {
--color-50: #ebf3fe;
--color-100: #cee0fd;
--color-200: #b1cdfb;
--color-300: #93bafa;
--color-400: #6ca1f8;
--color-500: #3b82f6;
--color-600: #306bca;
--color-700: #2655a0;
--color-800: #1c3e76;
--color-900: #12274a;
--color-950: #0a162a;
}π Runs entirely in your browser. No data is sent to any server.
Related Tools
Color Palette Generator
Generate complementary, analogous and triadic palettes.
Color Picker
Pick any color and get HEX, RGB, HSL values and palettes.
CSS Gradient Generator
Build linear, radial and conic CSS gradients visually.
Color Contrast Checker
Check color contrast ratios for WCAG AA and AAA.
What is a Color Shades & Tints Generator?
This tool takes any hex color and produces an 11-step scale β from a near-white tint to a near-black shade β following the same numbering convention (50β950) used by Tailwind CSS and many modern design systems. Enter a brand color, a primary accent, or any hex value, and instantly see the full range of lighter and darker variations that belong to the same hue family.
Tints are produced by mixing the base color with white, making each step progressively lighter. Shades are produced by mixing with black, making each step progressively darker. Step 500 is always your exact base color β the βtrueβ expression of the hue. Steps 50β400 are tints for light backgrounds and subtle fills, while steps 600β950 are shades for text, borders, and dark UI surfaces.
Once you have the scale, export it in the format your project uses: CSS custom properties (CSS variables), a Tailwind CSS config snippet, or SCSS variables. The name field lets you customize the prefix so the output drops straight into your codebase without editing.
How to Use the Generator
- 1.Enter your base hex color in the text field, or click the color swatch to open the native color picker. Both inputs stay synchronized.
- 2.Set a scale name β for example, βbrandβ, βprimaryβ, or βblueβ. This prefix is used in the CSS variable names and Tailwind config key.
- 3.The scale generates instantly as you type. Step 500 (the base color) is highlighted with a ring. Click any swatch or its HEX / RGB / HSL button to copy that specific value to your clipboard.
- 4.Choose your export format β CSS Variables, Tailwind Config, or SCSS Variables β and click Copy to grab the entire scale at once.
- 5.Paste into your project. For CSS variables, this goes in your global stylesheet. For Tailwind, it belongs in the
theme.extend.colorsobject. For SCSS, it goes in your variables partial.
Tints vs Shades vs Tones β the Core Concepts
Color terminology is often used loosely, but the three terms mean distinct things in color theory:
- Tint β the result of mixing a hue with pure white. Tints reduce the perceived intensity of a color while preserving its hue. Pastel colors are extreme tints. In RGB terms, each channel moves toward 255.
- Shade β the result of mixing a hue with pure black. Shades increase darkness and perceived weight. Deep navy and forest green are shades of blue and green. In RGB terms, each channel moves toward 0.
- Tone β the result of mixing a hue with gray (both white and black). Tones reduce saturation without the extreme lightness shift of tints or the extreme darkness of shades. Muted, earthy color palettes consist heavily of tones.
For UI design, tints and shades are the most practically useful. Tints work well for hover backgrounds, input fill colors, notification banners, and any surface that needs to be clearly associated with a brand color without being too visually heavy. Shades work well for body text, borders, focus rings, and pressed states.
Building a Design System Color Scale
A design system color scale is a structured set of named color values that establishes a shared vocabulary for an entire product. Instead of using arbitrary hex values scattered across your CSS, you define a palette once and reference it everywhere through semantic tokens or step numbers.
The 11-step scale (50, 100, 200, ..., 900, 950) has become a de facto standard because it maps neatly to the components most UI systems need:
- 50Very light tint β ideal for large page backgrounds, sidebar fills, card surfaces. Barely perceptibly different from white.
- 100β200Subtle fills and borders β chip backgrounds, tag fills, dividers, tooltip backgrounds.
- 300β400Midtone tints β placeholder text on colored backgrounds, disabled states, secondary icons.
- 500The base color β your brand identity value. Primary buttons, active links, focus rings in light theme.
- 600Hover and pressed states on the 500 base. Slightly darker to signal interaction without losing brand identity.
- 700β800High-contrast text on light backgrounds β headings, links, active navigation items.
- 900β950Darkest tones β used for text on white or in dark-mode surfaces and deep backgrounds.
When building a brand palette from scratch, start with the 500 step β that is your primary color. Generate the rest of the scale with this tool, then assign semantic token names (--color-background, --color-border, --color-text-primary) that map to specific steps. This two-layer token system (global palette + semantic aliases) is the approach used by GitHub Primer, Atlassian Design System, and IBM Carbon.
Using the Scale with Tailwind CSS
Tailwind's utility-first approach works best when your custom brand colors follow the same 11-step format as its built-in palette. The Tailwind Config export from this tool outputs a ready-to-use object you can drop into your configuration file.
Once added, every step is accessible as a Tailwind class. If you named your scale βbrandβ, you can write bg-brand-50 for a very light fill, text-brand-700 for body text on white, border-brand-200 for a subtle divider, and hover:bg-brand-600 for a button hover state.
For dark mode, combine the scale with Tailwind's dark: variant. A common pattern for a primary button: bg-brand-500 hover:bg-brand-600 dark:bg-brand-400 dark:hover:bg-brand-300 text-white dark:text-brand-950. Light mode uses the darker 500/600 steps because white text needs sufficient contrast against the background. Dark mode flips to the lighter 400/300 steps, where the dark background provides the contrast instead.
If you are using Tailwind v4 (which uses a CSS-first configuration approach), paste the CSS Variables output into your @theme block using the --color-* namespace, and the steps become available as utilities automatically.
Dark Mode Color Strategies
Dark mode is not simply about inverting colors. A crude inversion produces harsh, low-contrast interfaces that are harder to read than well-designed dark themes. Instead, use your color scale semantically and swap assignments at the theme level.
The fundamental rule: in light mode, lighter steps go on backgrounds and darker steps go on foregrounds (text, icons). In dark mode, flip the assignment. This means the 50 step (near-white) that was your card background in light mode might become your high-emphasis text in dark mode, while the 900 step (near-black) that was heading text becomes your dark surface background.
Using CSS custom properties makes this clean. Define a set of semantic properties like --bg-surface, --text-primary, --border-default, and map them to different scale steps inside a :root block and a [data-theme="dark"] block. Components reference only the semantic tokens β never raw scale steps. This means flipping an entire app to dark mode requires updating only the token mapping file, not individual components.
One practical consideration: your base 500 color may need adjustment for dark backgrounds because it was designed to have contrast against white. Run the 500 step through a contrast checker against a dark surface (e.g., #1E293B) and if it fails WCAG AA, use the 300 or 400 step instead on dark backgrounds. The step that passes contrast is your dark-mode interactive color.
Practical Use Cases
Brand consistency across a product.If your brand logo uses #E63946, generate the scale and use step 500 for primary CTAs, step 100 as a subtle error or notification background, and step 800 for high-emphasis text that matches the brand's energy without being too saturated.
Data visualization color ramps. Charts that use a single-hue ramp β such as a heat map or choropleth map β need evenly distributed lightness steps. Use steps 200, 400, 500, 700, and 900 from this generator for a five-level ramp that is perceptually ordered from light (low data) to dark (high data).
Generating accessible interactive states. WCAG 2.1 AA requires a 4.5:1 contrast ratio for normal text. Use the Color Contrast Checker on Nutilz to test each step against your chosen background. Typically step 600 or 700 on white passes AA for text, while step 500 on white may only pass for large text (3:1). The scale gives you options close to your brand color that still pass accessibility requirements.
Rapid prototyping.When building a proof-of-concept, you often don't have a finalized brand palette. Pick any reasonable accent color, generate the scale, and apply it consistently. The systematic numbering makes it easy to describe design decisions in handoff notes: βuse brand-500 for the CTA, brand-100 for the selected row background, and brand-700 for the icon in the active nav item.β