PixelHub Fast image tools, no signup or upload limits

Image Color Picker

Upload an image, then click anywhere on it to read that pixel's exact color as HEX, RGB, and HSL. Nothing you upload ever leaves your browser.

Click any pixel, get its exact color

Your image is drawn onto a canvas at its full natural resolution — even though it's displayed smaller on screen — so every click reads real, unscaled pixel data via the browser's getImageData. The click position is converted from the displayed coordinate space back to the canvas's actual pixel coordinates first, so what you click is exactly what gets sampled, regardless of how large or small the image appears on your screen.

Worked example

Click a pure red pixel and you'll get #ff0000, rgb(255, 0, 0), and hsl(0deg, 100%, 50%). Click pure white and you'll get #ffffff, rgb(255, 255, 255), and hsl(0deg, 0%, 100%) — hue is meaningless when there's no saturation, so it just reads 0. Each color you pick is also added to your recent-colors history below the swatch, so you can compare several picks from the same image at a glance.

Frequently asked questions

How accurate is the sampled color?

It's read directly from the image's real pixel data via the canvas getImageData API, not estimated from the on-screen display — so it's exact, down to the individual pixel you clicked. If the image itself was heavily compressed (typical of JPEG), the pixel color reflects whatever compression left behind, which can differ slightly from the original source color.

Why does clicking near an edge sometimes pick an unexpected color?

JPEG compression blurs sharp edges into a handful of transitional pixels, and zooming into a small displayed image means each screen pixel can represent several image pixels. Zoom in with your browser or crop tightly around the area you care about for the most precise pick.

What does the alpha value mean?

Alpha is transparency, from 0 (fully see-through) to 255 (fully opaque). It only varies in formats that support transparency, like PNG or WebP — a JPEG always reports 255 because JPEG has no alpha channel at all.

Is my image uploaded anywhere?

No. The image is decoded and drawn to a canvas in your browser, and every color you pick is read from that local canvas with getImageData — nothing is sent to a server, stored, or logged.