๐จ Color Shades Generator: Tints and Shades from Any Hex
By Shihab Mia ยท Updated 2026-07-02
Tints (toward white)
Base color
Shades (toward black)
Pick a base color. Click any swatch to copy its hex code.
A color shades generator turns one base color into a full scale: this tool builds up to 10 tints (mixed toward white) and 10 shades (mixed toward black) around your hex in evenly spaced steps, so from #337BFF you instantly get a light hover tint like #DDE9FF and a dark text shade like #08142A. Pick a color or paste a hex code, choose the number of steps per side, and click any swatch to copy its hex. Every calculation runs in your browser, so your colors never leave your device.
What is the Color Shades Generator?
A tint is your base color mixed with white, which makes it lighter and softer. A shade is your base color mixed with black, which makes it darker and deeper. Designers lean on this color shades generator to expand a single hue into a working scale: a pale tint for a hover background, the base for a default button, and a deep shade for text or a pressed state. Building everything from one hue keeps a palette feeling deliberate instead of a random pile of unrelated colors.
The tool computes each step directly in RGB. To make a tint, every channel is moved a set fraction of the way toward 255 (pure white). To make a shade, every channel is scaled down by the same fraction toward 0 (pure black). With five steps on each side, the fractions are spaced evenly (roughly 17%, 33%, 50%, 67%, 83%), so the swatches step smoothly from very light, through your base color, to very dark. Because the math is deterministic, the same hex always yields the same scale, which is exactly what you want when you are pasting values into a stylesheet.
This linear RGB scaling is the simplest and most predictable way to generate shades, and it mirrors how mixing paint or ink behaves: add more white and it lightens, add more black and it darkens. It is not the only method. Some tools shift lightness in HSL or HSV, which can hold saturation steadier at the extremes, and perceptual spaces like OKLCH aim for steps that look equally spaced to the human eye. Linear RGB wins on being intuitive, fast, and giving clean values that are trivial to read off as hex codes.
A common use is generating a numbered ramp for a design system, such as blue-50 through blue-900. The lightest tints work as surface and hover fills, the middle sits near your brand color, and the darkest shades carry high contrast text. Naming the steps consistently across every hue (blue-500, red-500, green-500 all being the base) is what makes a token system easy to reason about and easy for engineers to apply.
One caveat worth understanding: linear RGB does not perfectly preserve perceived hue or saturation at the ends of the scale. Very light tints can look slightly washed out and very dark shades can drift toward a muddy neutral. That is expected, and for most UI work it is fine because the base and mid steps carry the brand feel. When you need the ends to stay vivid, generate the scale here to get started fast, then hand tune the extreme tints and shades in an HSL or OKLCH editor.
When to use it
- Building a button color scale: a light tint for hover, the base for the default state, and a dark shade for the pressed or active state.
- Generating light background and dark text variants of a single brand color so a section still feels on brand.
- Creating CSS custom properties (like --blue-100 through --blue-900) for a design system from one starting hue.
- Producing chart or data visualization ramps where each category needs several distinguishable shades of the same color.
- Prototyping a full palette quickly when a client gives you only one logo color to work from.
How to use the Color Shades Generator
- Pick a base color with the color picker, or type or paste a hex code into the HEX field.
- Set how many steps you want on each side (2 to 10). More steps give a finer, smoother scale.
- Read off the tints above the base and the shades below it.
- Click any swatch to copy its hex code to your clipboard.
- Paste the copied hex codes straight into your CSS, design tool, or brand guide.
Formula & method
Worked examples
Base color #337BFF (R 51, G 123, B 255), one tint at f = 0.2 (toward white).
- R = 51 + (255 - 51) x 0.2 = 51 + 40.8 = 91.8, rounds to 92
- G = 123 + (255 - 123) x 0.2 = 123 + 26.4 = 149.4, rounds to 149
- B = 255 + (255 - 255) x 0.2 = 255
- Convert (92, 149, 255) to hex
Result: Tint = #5C95FF
Base color #337BFF (R 51, G 123, B 255), one shade at f = 0.2 (toward black).
- R = 51 x (1 - 0.2) = 51 x 0.8 = 40.8, rounds to 41
- G = 123 x 0.8 = 98.4, rounds to 98
- B = 255 x 0.8 = 204
- Convert (41, 98, 204) to hex
Result: Shade = #2962CC
Base color #E11D48 (R 225, G 29, B 72), one shade at f = 0.5 (halfway to black).
- R = 225 x (1 - 0.5) = 225 x 0.5 = 112.5, rounds to 113
- G = 29 x 0.5 = 14.5, rounds to 15
- B = 72 x 0.5 = 36
- Convert (113, 15, 36) to hex
Result: Shade = #710F24
Tints and shades of #337BFF with 5 steps each side (lightest to darkest)
| Step | Type | Mix fraction f | Hex |
|---|---|---|---|
| 1 | Tint | 0.833 | #DDE9FF |
| 2 | Tint | 0.667 | #BBD3FF |
| 3 | Tint | 0.500 | #99BDFF |
| 4 | Tint | 0.333 | #77A7FF |
| 5 | Tint | 0.167 | #5591FF |
| - | Base | 0 | #337BFF |
| 6 | Shade | 0.167 | #2B67D5 |
| 7 | Shade | 0.333 | #2252AA |
| 8 | Shade | 0.500 | #1A3E80 |
| 9 | Shade | 0.667 | #112955 |
| 10 | Shade | 0.833 | #08142A |
Tint vs shade vs tone at a glance
| Term | Mixed with | Effect on the color |
|---|---|---|
| Tint | White | Lighter, softer, channels move toward 255 |
| Shade | Black | Darker, deeper, channels move toward 0 |
| Tone | Gray | Muted, less saturated (not produced by this tool) |
Common design system uses for a 3 step scale
| Role | Which swatch | Typical use |
|---|---|---|
| Surface | Light tint | Hover fill, card background, selected row |
| Base | Your hex | Default button, brand accent, links |
| Emphasis | Dark shade | Pressed state, heading text, borders |
Common mistakes to avoid
- Confusing a tint with a shade. A tint adds white and lightens the color; a shade adds black and darkens it. Mixing the terms up leads to picking the wrong variant for a hover or text state.
- Expecting the hue to stay perfectly identical. Linear RGB mixing keeps the color recognizable, but very dark shades and very light tints can look slightly less saturated. That is normal for this method; if you need steadier saturation, adjust lightness in HSL or OKLCH instead.
- Using a near white or near black base. If your base is almost white, the tints have little room left and look nearly identical; the same happens with shades of a near black base. Start from a mid tone to get a useful, evenly spaced scale.
- Picking adjacent steps for text on background. Two neighboring swatches may not have enough contrast for accessible text. Pair a light tint with a dark shade (not two that sit close together) and check the contrast ratio.
- Assuming a fixed number of steps fits every hue. Bright yellows and cyans reach visual white faster than deep blues do. If the light end looks blown out, reduce the step count or hand tune the top few tints.
- Copying hex codes without labeling them. A row of raw hex values is easy to mix up later. Save them into named tokens (like blue-100 to blue-900) so teammates know which step is the base and which are variants.
Glossary
- Tint
- A color mixed with white, producing a lighter, softer version of the original hue.
- Shade
- A color mixed with black, producing a darker, deeper version of the original hue.
- Tone
- A color mixed with gray, which mutes it. Tones reduce saturation rather than just lightening or darkening.
- Hex code
- A six digit code like #337BFF that encodes the red, green, and blue channels of a color in base 16.
- RGB channel
- One of the three components (red, green, blue) of a color, each ranging from 0 to 255.
- Mix fraction
- The value f from 0 to 1 that sets how far a channel moves toward white (tint) or black (shade) in one step.
- Color ramp
- An ordered set of related colors, usually from light to dark, used as a scale in design systems and charts.
- HSL
- A color model describing hue, saturation, and lightness, often used to lighten or darken while holding saturation steadier than RGB.
Frequently asked questions
What is the difference between tints and shades?
A tint is a color mixed with white, so it is lighter than the original; a shade is a color mixed with black, so it is darker. This color shades generator produces both from your base color, with tints listed above and shades below.
How does the color shades generator calculate each step?
It works in RGB. For a tint, each red, green, and blue channel is moved a set fraction toward 255 (white); for a shade, each channel is scaled down by that fraction toward 0 (black). The mix fractions are spaced evenly across the range.
How do I generate shades from a hex code?
Paste your hex code into the HEX field or pick it with the color picker. The tool instantly builds tints and shades around it in even steps, and you click any swatch to copy its hex.
How do I copy a color from the results?
Click any swatch and its hex code is copied to your clipboard. The status line at the bottom confirms which value was copied.
Can I change how many shades and tints are generated?
Yes. Set the steps each side field to any value from 2 to 10. A higher number produces a finer, smoother scale with more swatches on both the tint and shade side.
What is a tone, and does this generator make tones?
A tone is a color mixed with gray, which mutes its saturation. This generator produces tints (toward white) and shades (toward black) only. To create tones you would reduce saturation, for example by editing the color in HSL.
Does this tool send my colors anywhere?
No. All calculation happens in your browser with plain JavaScript. Nothing is uploaded, so your colors and palette stay private on your own device.
Why do my darkest shades look a little washed out or grayish?
Linear RGB mixing does not perfectly preserve saturation at the extremes, so very dark shades can drift toward neutral. This is normal; if you need the ends to stay vivid, hand tune them in an HSL or OKLCH editor.
How many shades should a design system have?
Most design systems use a ramp of about 9 to 11 steps per color (for example 50, 100 through 900). Set 5 steps per side here to get 10 variants plus the base, then map them to your token names.
Can I use these shades for accessible text contrast?
Yes, but check the numbers. Pair a light tint with a dark shade and verify the contrast ratio meets WCAG (at least 4.5:1 for normal text) rather than assuming any two steps are far enough apart.