Tint & Shade Generator

Enter a color to get 10-step scales of tints (mixed with white), shades (mixed with black) and tones (mixed with gray).

How to use the tint and shade generator

  1. Type a base color into the field, or pick one with the swatch next to it.
  2. Read the three scales: tints (toward white), shades (toward black) and tones (toward mid gray, #808080), each in 10% steps from 0% to 100%.
  3. Click any swatch to copy its hex code.
  4. Use Copy Tints, Copy Shades or Copy Tones to copy a whole scale at once.

Tint, shade and tone defined

A tint is the base color mixed with white, so it gets lighter and paler. A shade is mixed with black, so it gets darker. A tone is mixed with gray, so it becomes duller. Worked example with tomato, #ff6347 = rgb(255, 99, 71), at 50%:

  • 50% tint: rgb(255, 177, 163), #ffb1a3
  • 50% shade: rgb(128, 50, 36), #803224
  • 50% tone: rgb(192, 114, 100), #c07264

Each step is a straight average of the channels: the green channel of the 50% tint is (99 + 255) ÷ 2 = 177. At 100%, the tint is pure white, the shade pure black and the tone #808080. The guide to tints, shades and tones covers where the terms come from.

Using the 10% steps in an interface

  • Hover and pressed states: a 10% shade for hover and 20% for pressed is a reliable start. For #ff6347 those are #e65940 and #cc4f39.
  • Backgrounds: 80–90% tints make quiet surfaces for alerts, callouts and selected rows. The 90% tint of tomato is #ffefed.
  • Dividers: 60–70% tints give decorative lines a brand cast. Borders that identify an input still need 3:1 contrast against the background.
  • Muted states: tones keep the hue but drop the saturation, which reads as inactive or secondary.

Text on these colors still has to pass. The 50% shade #803224 on white measures 8.75:1, well above the 4.5:1 AA minimum; test your own pairs in the contrast checker.

Why sRGB steps are not perceptually even

This tool mixes in sRGB, the same math as color-mix(in srgb, …), so every value is simple to reproduce. The trade-off is that equal 10% steps do not look like equal jumps, and some hues drift. Pure blue shows it clearly: the 50% tint of #0000ff is #8080ff, which looks periwinkle rather than light blue because its perceived hue has moved toward purple. Some hues also change character as they darken: the 50% shade of #ffff00 is #808000, exactly the CSS color olive.

For a design-system scale where each step should look evenly spaced across hues, generate it in OKLCH with the Tailwind palette generator, which sets a lightness target per step and holds the hue angle constant.

Frequently asked questions

What is the difference between a tint and a shade?

A tint is a color mixed with white, which makes it lighter. A shade is a color mixed with black, which makes it darker.

What is a tone in color theory?

A tone is a color mixed with gray, which lowers its saturation and gives a softer, more muted version of the hue. This tool mixes with mid gray, #808080.

How do I make a darker version of a color for hover states?

Take a 10% to 20% shade. For #ff6347 that is #e65940 at 10% and #cc4f39 at 20%, and color-mix(in srgb, #ff6347 90%, black) gives the 10% version directly in CSS.

Why do shades of yellow look olive or brown?

Dark yellow is perceived as olive or brown at any lightness, so a 50% shade of #ffff00 lands on #808000. Many palettes, including Tailwind's default yellow, rotate the darker steps toward orange to avoid that cast.

How many steps does each scale have?

Eleven, from 0% (the base color) to 100% (white, black or gray) in 10% increments, for each of the tint, shade and tone scales.

Related tools