Image Histogram Viewer

View the RGB and luminance histogram of any photo, with exposure statistics and exact clipping percentages.

Drag & drop a photo here, or click to browse

No uploads. Your files stay on your device.

No uploads. Your files stay on your device.

Free forever, no sign-up, no cookies. Buy me a coffee

How it works

Drop a photo and this tool reads every pixel with the Canvas API, counts how many pixels land on each of the 256 levels per channel and draws the red, green, blue and luminance histograms on top of each other. Luminance uses the Rec. 709 weighting (0.2126 R + 0.7152 G + 0.0722 B), the same brightness curve your camera and editor use. Nothing is uploaded — the image never leaves your device.

Read it left to right: the left edge is pure black, the right edge is pure white. A spike stacked against the left edge means crushed shadows, a spike against the right edge means blown highlights — both are printed as exact percentages in the table. Switch on the logarithmic scale when one huge peak (a plain sky or a white background) flattens the rest of the curve. Export the chart as a PNG, the raw 256-bin counts as CSV for a spreadsheet, or copy the statistics as text.

Frequently asked questions

How do I read an image histogram?

Read it left to right: the far left is pure black, the far right is pure white, and the height of the curve at each point is how many pixels sit at that brightness level. A curve bunched to the left means a dark, possibly underexposed photo; bunched to the right means a bright, possibly overexposed one. What matters most is the edges — a tall spike jammed against either edge means pixels have been flattened to pure black or pure white and that detail cannot be recovered. This tool prints the exact percentage of clipped pixels for every channel so you do not have to eyeball it.

What does a clipped histogram mean?

Clipping means pixels have hit the limit of the range: level 0 (crushed shadows) or level 255 (blown highlights). Those pixels no longer hold any texture — lifting the exposure of a blown sky just turns it grey, because the original detail was never recorded. A little clipping is normal (specular highlights, deep night shadows), but if the Shadows clipped or Highlights clipped column shows a large percentage, reshoot with a different exposure or recover from a RAW file. The tool also gives you a one-line verdict under the chart.

Is my photo uploaded anywhere to build the histogram?

No. The image is decoded and read pixel by pixel with your browser's Canvas API on your own device, so nothing is uploaded, stored or logged — which also makes it safe for client work, screenshots and unpublished photos. Because everything is local it is instant even for large files, it keeps working offline once the page has loaded, and you can export the chart as a PNG or the raw 256-bin counts for red, green, blue and luminance as a CSV for a spreadsheet.

Report a bug