Developer Tools
Color Picker
Pick any color visually or enter a hex, RGB or HSL value, then copy it in every format. See instant HEX, RGB and HSL codes plus a tints-and-shades scale — perfect for design and CSS. Runs entirely in your browser.
How to pick a colour and copy its code
- Click the large colour square to open your browser's picker and choose a colour. The page starts on the purple #6d4df0.
- Or type into the text field: a hex code such as #6d4df0, an rgb() value or an hsl() value. The square and the three codes follow as soon as the text becomes a valid colour, and a red line tells you while it is not one.
- Copy the HEX, RGB or HSL code from the row you need. The button shows a tick briefly.
- Click any swatch in the Tints & shades strip to make it the current colour, and the strip is rebuilt around that swatch.
How the seven tints and shades are calculated
The strip is a linear mix in RGB space. The three swatches on the left blend the colour toward white by 60%, 40% and 20%; the middle one is the colour itself; the three on the right blend toward black by 20%, 40% and 60%. For each channel the new value is round(c + (target − c) × amount), where target is 255 for a tint and 0 for a shade.
Take the default purple, rgb(109, 77, 240), at the 20% tint: red is 109 + (255 − 109) × 0.2 = 138.2, rounded to 138; green is 77 + 178 × 0.2 = 112.6, rounded to 113; blue is 240 + 15 × 0.2 = 243. That swatch is #8a71f3. For the 20% shade each channel is multiplied by 0.8: 87.2, 61.6 and 192, giving #573ec0.
| Position | Mix | HEX | RGB |
|---|---|---|---|
| 1 | 60% toward white | #c5b8f9 | rgb(197, 184, 249) |
| 2 | 40% toward white | #a794f6 | rgb(167, 148, 246) |
| 3 | 20% toward white | #8a71f3 | rgb(138, 113, 243) |
| 4 | the colour itself | #6d4df0 | rgb(109, 77, 240) |
| 5 | 20% toward black | #573ec0 | rgb(87, 62, 192) |
| 6 | 40% toward black | #412e90 | rgb(65, 46, 144) |
| 7 | 60% toward black | #2c1f60 | rgb(44, 31, 96) |
Mixing in RGB versus adjusting lightness
Because the scale mixes channels rather than changing HSL lightness, tints lose some saturation as they approach white and the hue can drift by a degree or two. Palettes such as Tailwind's 50 to 950 steps are hand-tuned rather than mixed, so the strip will not reproduce them exactly, but it gives a consistent set for hover, border and background variants. Hover a swatch to see its hex in a tooltip, and click it to make it the new centre; clicking the 20% shade and then its own 20% shade is not the same as the original 40% shade, because 80% of 80% is 64% of the starting value, not 60%, and each step also rounds to whole numbers.
What the text field understands
- Hex with three or six digits, with or without the hash, in either case.
- rgb() or rgba() with numbers from 0 to 255 or percentages, separated by commas or spaces; a fourth alpha value is accepted but discarded.
- hsl() or hsla() with the hue in degrees (deg, rad, grad and turn units also work) and saturation and lightness as percentages, in comma or space syntax. The default purple typed as hsl(252, 84%, 62%) lands on #6d4def, one step away because the HSL figures are rounded.
- Named colours and 8-digit hex are not recognised.
- While the text is incomplete or invalid, a red line under the field says it cannot be read, and the square and the codes keep the previous colour until it can. Picking from the square or the strip replaces whatever you typed with the lowercase hex of the new colour.
The native picker and the eyedropper
The square is a standard HTML colour input, so the dialog that opens is drawn by your browser or operating system rather than by this page. On macOS it is the system Colors panel, which includes a magnifier for sampling any pixel on screen. Desktop Chrome and Edge show their own popup with a spectrum, a hue slider, editable hex, RGB and HSL fields and an eyedropper. Firefox on Windows opens the classic Windows colour dialog, and phones show a sheet or a simple spectrum. Whatever you choose there is passed back as a six-digit hex code, which is why the field always shows hex after a pick.
From a picked colour to a small CSS palette
A practical pattern is to pick the brand colour, copy its hex into a custom property, then take the 20% shade for hover and the 60% tint for a soft background. With the default purple that gives --brand: #6d4df0, --brand-hover: #573ec0 and --brand-soft: #c5b8f9. The tool does not measure contrast, so check text on the soft tint against WCAG before shipping: light tints usually need dark text, and the 40% and 60% shades carry white text comfortably.
Not included
There is no transparency slider, no contrast ratio, no saved palettes and no way to sample an uploaded image inside the page itself; screen sampling depends on the eyedropper your browser offers. Output formats are limited to the three shown, so CMYK or LAB values need another converter.
Frequently asked questions
What color formats does it show?
It shows HEX, RGB and HSL for any color you pick or type, and you can copy each with one click.
Can I enter my own color code?
Yes. Type a hex value like #6d4df0 or an rgb()/hsl() string, and the picker updates to match instantly.
What are tints and shades?
Tints are lighter versions of a color (mixed toward white) and shades are darker (mixed toward black). The scale helps you build a palette — click any swatch to select it.
Is it free to use?
Yes, completely free with no sign-up. Everything runs locally in your browser.
Which hsl() spellings does the field accept?
Both the comma form, hsl(252, 84%, 62%), and the space form, hsl(252deg 84% 62% / 0.5). The alpha is dropped, hues wrap around 360, and the result is shown as hex, RGB and HSL like any other input.
Can I pick a colour from an image or from my screen?
Only through the eyedropper built into your browser's colour dialog, where one is offered, for example in desktop Chrome, Edge and the macOS Colors panel. The page itself has no image upload.
Why did the text I typed turn into a hex code?
Choosing a colour from the square or clicking a swatch in the strip writes that colour's hex into the field, replacing your text. Type again to enter a value by hand.
Are the tints and shades the same as a Tailwind colour scale?
No. They are even mixes toward white and black, whereas design-system scales are tuned step by step. Use the strip for quick variants and a dedicated palette tool for a full scale.
Explore
113 tools. Zero uploads. One place.
Every tool opens instantly, works on your phone and keeps your files on your device.
Related tools
JSON Formatter
Developer Tools
Format, validate and minify JSON instantly.
Open toolBase64 Encode / Decode
Developer Tools
Encode text to Base64 or decode it back.
Open toolURL Encode / Decode
Developer Tools
Percent-encode or decode URLs and query strings.
Open toolUUID Generator
Developer Tools
Generate random UUID (v4) identifiers in bulk.
Open tool