Loading color tools…
Loading color tools…
Upload any image and extract its dominant color palette. Your image is processed locally and never sent to a server.
Manually eyedropping colors out of a photo or screenshot is slow and imprecise, especially when you need more than one or two swatches. This tool draws your selected image onto an HTML Canvas element, reads the raw pixel data with getImageData, and groups similar shades together to surface the top 10 dominant colors with their HEX codes and coverage percentage. You do select an image file into your browser to use the tool, but the pixel analysis itself runs entirely client-side — the image is never uploaded to a server or leaves your device during processing.
Drag & drop an image, or
JPG, PNG, WebP, GIF — all processing happens in your browser
Pick any color and instantly get its HEX, RGB, HSL, and CMYK values
Generate beautiful multi-color palettes from a single seed color
Create CSS linear, radial, and conic gradients with live preview and code output
Convert colors between HEX, RGB, HSL, HSV, and CMYK formats instantly
Upload your image
Drag and drop any image onto the upload zone, or click 'browse' to pick a file. Supports JPG, PNG, WebP, and GIF.
Wait for extraction
Colors are extracted instantly using Canvas pixel analysis in your browser — no server involved.
Review dominant colors
The top 10 dominant colors appear with their HEX codes and percentage share of the image.
Copy individual colors
Click the copy button next to any color to copy its HEX code.
Export as CSS variables
Copy the full :root CSS variables block to use the palette in your project.
When you select or drop an image, the tool loads it into an off-screen HTML <canvas> element and calls the Canvas 2D API's getImageData method, which returns the raw RGB (and alpha) value for every sampled pixel. Large images are typically downscaled before sampling so the analysis stays fast and memory-efficient — a representative sample of pixels produces essentially the same dominant colors as scanning every single one, without the performance cost.
Raw pixel data from a real photo can contain millions of nearly-identical shades due to compression artifacts, lighting gradients, and anti-aliasing. Reporting every unique RGB value would be useless, so the tool applies color quantization: nearby colors are grouped into buckets, and the buckets with the most pixels become the reported dominant colors. This is the same general technique used by most browser-based palette extraction tools and libraries — group first, then rank by frequency.
Because every step — decoding the image, drawing it to canvas, reading pixel data, and quantizing colors — happens with JavaScript running in your browser tab, no image data is sent over the network at any point. You do provide an image file to the tool by selecting or dropping it, which loads the file into your browser's memory, but that is different from the file being uploaded to a remote server for processing — nothing about the pixel content is transmitted anywhere. Once you have a palette, you can check any pairing you plan to use for text against a background with the Contrast Checker.
Unlike most online tools, Toolivon processes everything directly in your browser using the Web APIs built into Chrome, Firefox, Safari, and Edge.
Last updated: