Free tool

Lighten and darken a color, tints, shades, tones.

Type or pick one colour and see it lighter and darker by the percent you choose. Below that are its tints (towards white), shades (towards black) and tones (towards grey) in even steps, or a 50 to 950 scale. Each swatch shows HEX, RGB, HSL and OKLCH, plus its contrast ratio against white and black text. Click any value to copy it, or copy the whole set as CSS variables, Tailwind, SCSS or JSON.

Tints, shades and tones

StepHEXRGBHSLOKLCHvs whitevs black

Contrast is the WCAG 2.2 ratio, shown rounded down. 4.5 or more passes AA for normal text, 3 or more passes for large text only (shown as Large), and 7 or more is AAA. Click a value to copy it.

Copy the set

Lighter and darker

OKLCH and HSL move the lightness by that many points. Mixing goes that percent of the way to white or black. Colours that would leave the sRGB range lose chroma until they fit. Settings are remembered in this browser.

Worked out in your browser. Nothing is sent anywhere.

How it works

Three ways to move a colour.

01 / Tint

Towards white

A tint adds white, so the colour gets lighter and softer. A 20% tint is one fifth of the way to white.

02 / Shade

Towards black

A shade adds black, so the colour gets darker and richer. Its hue stays the same.

03 / Tone

Towards grey

A tone adds grey, so the colour keeps its lightness and loses strength. It is useful for calm backgrounds.

Guide

How to make a colour lighter or darker, and check it.

To lighten a colour, move it towards white. To darken it, move it towards black. This tool does both for any colour you type, by the percent you set, and then builds a whole row of tints, shades and tones so you can pick the step you need for a hover state, a border, a background or a dark mode. Each result shows its HEX, RGB, HSL and OKLCH code and how well black or white text reads on it.

How to use it

  1. Type a colour in Colour, such as #7c52ff, rgb(124 82 255) or tomato, or use the picker. The chips fill in a few examples, and Random picks one.
  2. Move the Amount slider, or type a number, to set how much lighter and darker the first two cards should be.
  3. Choose How to move it: OKLCH, HSL or a mix with white and black. The three give different results, and the notes below explain each.
  4. Pick Tints and shades, Tints, Shades, Tones or 50 to 950 to see a row of colours. Steps on each side sets how many.
  5. Click a swatch or any value to copy it. Under Copy the set, choose a format, give it a Name and press Copy the code.

The three ways to lighten

Take the violet #7c52ff. In OKLCH it has a lightness of 58.5%, a chroma of 0.241 and a hue of 287.6. Lightening by 20 in OKLCH adds 20 points of lightness and keeps the hue, so you stay on the same violet. In HSL the same colour is hsl(255 100% 66%), and Sass lighten(), which the Sass docs (checked 18 Oct 2026) describe as increasing the HSL lightness by a fixed amount, gives #c9b8ff for 20; darkening by 20 gives #3900eb. Mixing sends it 20% of the way to white, #9675ff, or 20% of the way to black, #6342cc.

HSL is simple but uneven: a yellow and a blue with the same HSL lightness look very different in brightness. OKLCH is built to match how lightness looks, so equal steps look more equal. Mixing is the simplest method: each red, green and blue value moves the same share of the way to white or black. It keeps the hue close, but a strong colour can look greyer in the middle of the row.

Tints, shades and tones

The rows are steps of a mix. With 9 steps on each side, the tints are 10, 20 up to 90 percent of the way to white, the shades are the same towards black, and tones go towards mid grey. A 100% step would just be white, black or grey, so it is left out. The 50 to 950 view uses the numbering many CSS frameworks use: it sets the lightness for each step, lets the chroma rise and fall along the way, and puts your own colour on the step closest to its lightness, which is marked in the table.

Checking contrast

Every row shows the contrast ratio with white and with black. It follows the WCAG 2.2 definition: ratio = (L1 + 0.05) / (L2 + 0.05), where L1 is the relative luminance of the lighter colour and L2 of the darker one, and relative luminance is 0.2126 R + 0.7152 G + 0.0722 B after each channel is converted from sRGB. The ratio runs from 1 to 21. WCAG asks for 4.5 or more for normal text and 3 or more for large text, which means 18 point, or 14 point bold. The stricter AAA level asks for 7 and 4.5. The ratio is shown rounded down, so 4.49 is never shown as 4.5. The formulas are in WCAG 2.2 and its relative luminance definition, checked 18 Oct 2026. For a check between any two colours, use the colour contrast checker.

For the violet above, white text gets 4.65 and black text gets 4.50, so both pass AA for normal text, and neither passes AAA. At 20% lighter with HSL, white text drops to 1.78 and black text rises to 11.78.

Using the export

CSS variables give you --brand-100: #...; lines inside :root. The Tailwind v4 format writes an @theme block, and the v3 format a colors entry for the config file. SCSS, JSON and a plain HEX list are there too. Change Name to match your token, such as primary or accent.

Common problems

  • My colour does not change. Pure white cannot be lightened and pure black cannot be darkened. The card says so.
  • The colour looks dull when lightened. Try OKLCH. It keeps hue steady, and lowers chroma only where the sRGB range needs it.
  • The code is not accepted. Use a 3, 4, 6 or 8 digit hex, an rgb(), hsl() or oklch() value, or a CSS colour name. Transparency is ignored.

To build a full palette from one colour, try the colour palette generator. To convert a code, use hex to RGB, and for a random starting colour, the random colour generator.

Questions

Good to know.

How do I make a hex color lighter?

Type the hex code, set the Amount, and read the Lighter card. Your colour moves towards white by that many points of lightness, or that percent of the way if you chose the mix method.

How do I darken a color by a percent?

Use the Darker card. Choose HSL if you want the same result as Sass darken(), which subtracts points of HSL lightness.

What is the difference between a tint, a shade and a tone?

A tint mixes in white, a shade mixes in black, and a tone mixes in grey.

Which method should I pick?

OKLCH for steps that look even to the eye. HSL if you need to match Sass or older CSS. Mix if you want the same as color-mix in sRGB.

How do I get a Tailwind-style 50 to 950 scale?

Choose 50 to 950 above the table, then pick Tailwind v4 theme or Tailwind v3 config under Copy the set. The scale is built here from your colour, so it will not match any published palette.

Does lightening change the hue?

OKLCH and mixing with white keep it close. HSL keeps the hue number fixed, but the look can shift.

What contrast ratio do I need?

WCAG 2.2 asks for 4.5 to 1 for normal text and 3 to 1 for large text at level AA. The table shows both results for white and black text.

Is anything uploaded?

No. The colours are worked out in your browser.