Palette Extractor

Upload an image and pull out its dominant colors. Everything runs in your browser — your image never leaves your device.

…or drag & drop a PNG / JPG here

About the Palette Extractor

This tool uses median-cut color quantization — the same algorithm used by classic image editors — to divide the color space of your image into buckets and pick the most representative color from each. The result is a compact, balanced palette that captures the visual identity of your image: useful for fan art, game assets, mood boards, or matching a brand's photo palette in CSS.

Click any swatch to copy its hex code to clipboard. Use Copy all hex to grab every color at once as newline-separated hex values, or download a .hex file that Aseprite, Photoshop, and most pixel-art editors can import directly.

Use cases

Pixel-art sprites — extract the palette from a reference image, then use it in Aseprite or Libresprite to keep your art on-brand.

Web & UI design — pull dominant colors from a photo and use them as CSS variables or a design-token palette.

Game dev — get a palette from concept art and feed it into the Demake tool to pixelise photos in the same colors.

Retro palettes — load a screenshot from an old console game and extract its exact color palette for recreation or study.

FAQ

Is my image uploaded anywhere? No. All processing happens locally in your browser using the HTML5 Canvas API. Nothing leaves your device.

What image formats work? Anything your browser can decode — PNG, JPG, WebP, GIF, AVIF. The file picker accepts image/*.

How many colors can I extract? Between 2 and 32. Drag the slider and the palette re-extracts instantly. For most artwork, 8–16 colors gives the best balance.

What is a .hex file? A plain text file with one hex color per line (#ff2e88). Aseprite, Photoshop, and GIMP can all import this format as a color palette.

Can I extract a palette from a GIF or animated image? The tool reads the first frame only. For animated GIFs, consider exporting a representative frame first.