Pull the dominant colours out of any picture as a palette with HEX, RGB, HSL and how much of the image each one covers. Copy as CSS or download a swatch strip.
Groups every pixel of the picture into a small number of colour clusters and reports the centre of each cluster, with the share of the picture it covers. The method is k-means with careful seeding, so the same photo gives the same palette every time instead of a slightly different one on each run. The palette appears as a strip under the picture, as a list with copyable values, and as a downloadable PNG of swatches.
A 3000 × 2000 photo of a forest lake at the Balanced setting returns six colours in about 300 ms: #3E5A3A at 31%, #7C9A6E at 22%, #1F2E33 at 18%, #A9C4D1 at 14%, #D7D1B5 at 9% and #5B4A36 at 6%. Turn on Ignore near-white and near-black on a product photo shot on white and the background stops eating the palette; the six slots go to the product instead.
Use it to build a colour scheme from a photo or a brand image, to get CSS variables for a page that should match a hero picture, or to check which colours dominate a design. It gives averages of regions, so a single small logo colour may not appear; for one exact pixel use Image Color Picker. The two-colour palettes it finds drop straight into Duotone Effect, and a pair of them make a good start in Gradient Generator.
Colours sets how many clusters to find, from 2 to 16; 5 or 6 usually describes a photo well. Quality trades speed for accuracy by looking at a larger downscaled copy and iterating longer; Best is worth it on subtle images. Ignore near-white and near-black skips pixels lighter than 245 or darker than 10 so backgrounds and shadows do not take over. Sort orders the result by share, by hue around the colour wheel, or from light to dark. Click any swatch to copy its hex.
Why is the palette different from what I see? Each colour is the average of a region. A sky that grades from deep blue to pale blue can come back as one middle blue. Ask for more colours to split such regions.
What does the percentage mean? How many of the sampled pixels ended up closest to that colour. It is a share of the picture, not a measure of how strong the colour is.
Can I get CSS or Tailwind values? Copy as CSS variables gives a :root block with --color-1 to --color-n. The JSON download has hex, rgb and hsl for each colour, ready to paste into a config.
Is the picture uploaded? No. The image is downscaled and clustered inside your browser. Nothing is sent to a server.
You might also need