Histogram Viewer
See your image's RGB and luminance histograms with exposure stats: clipping, contrast and tonal range, computed on your device.
or browse filesdrop an image here or paste
See your image's RGB and luminance histograms with exposure stats: clipping, contrast and tonal range, computed on your device.
or browse filesdrop an image here or paste
A histogram is the one chart photographers keep on screen while they work: it counts how many pixels sit at every brightness level, from pure black on the left to pure white on the right. Drop an image here and the graph is drawn immediately, along with the numbers behind it - average brightness, contrast, the range of tones actually used, and how much of the picture has clipped to solid black or blown out to solid white. Everything is measured in your browser, on your own device; the file never leaves it.
Colors draws the red, green and blue histograms on top of each other and lets them add up, the way a camera's RGB display works: where the three overlap the image is neutral, and a channel standing alone in the highlights or the shadows is a color cast you can see before you look for it. Luminance combines the channels into one perceived-brightness curve using the standard Rec. 601 weights - the honest answer to "is this photo exposed correctly". Split stacks red, green and blue as three separate graphs on one shared scale, which is the fastest way to tell a strong cast from a bit of warmth.
The horizontal axis is brightness, 0 to 255; the vertical axis is how many pixels have that value. Weight bunched against the left edge means an underexposed, dark image, and weight against the right edge means an overexposed one. A curve that stops short of both edges is a flat, low-contrast image, while data spread across the whole width without piling up at either end is usually a well-exposed one. A tall spike anywhere is simply a large area of one tone - a sky, a studio backdrop, a scanned document - and is not a fault by itself. Bar heights use a square-root scale so one such spike does not squash everything else into an invisible line.
Mean brightness is the average pixel value, near 128 for a balanced exposure, well under 80 for a dark image and over 180 for a bright one. Median is the middle value, which tells you where the bulk of the picture sits when a spike drags the average around. Contrast is the standard deviation of brightness: low means flat and hazy, high means punchy or harsh. Tonal range is the darkest and lightest values actually present. Clipped blacks and clipped whites are the share of pixels that hit 0 or 255 exactly, where detail is gone and no edit can bring it back. Every value copies with a click.
The Download button saves the histogram itself as a 1600 x 800 image, drawn fresh at that size rather than scaled up from the panel, so it stays sharp in a report, a client email or a forum post. It saves whichever view is on screen - the RGB overlay, the luminance curve or the three split channels - and the file is named after your photo, so beach.jpg gives you beach-histogram.png. PNG, JPG and WebP are all available from the arrow next to the button.
JPG, PNG, WebP, GIF, BMP and AVIF are all read. Very large photos are point-sampled rather than smoothed, so the shape of the distribution and the clipping counts stay true even for a hundred-megapixel scan. Fully transparent pixels are left out of the count, because a logo on a transparent background is not a black image. The picture itself sits on a zoomable viewport next to the graph, so when the histogram says the highlights are gone you can zoom straight in and look at them.
To read the camera settings behind an exposure - shutter, aperture, ISO, the lens - open the EXIF viewer. For a pixel-level check of alpha rather than brightness there is the transparency checker, and for the picture's own numbers the image size finder and the megapixel checker. To change what the histogram shows rather than measure it, try the black and white converter or hue adjust. Every viewing tool on the site is listed on the viewers page.
Left is dark, right is bright, and height is the number of pixels at that brightness. Pixels piled against the left edge are underexposed, against the right edge overexposed. Where the red, green and blue curves sit on top of each other the image is neutral; where one channel runs ahead of the others there is a color cast.
The RGB view shows each color channel counted separately, so it reveals casts and per-channel clipping. The luminosity histogram merges them into a single perceived-brightness curve using standard weights, which is what you want when judging exposure rather than color.
Clipping is pixels that have reached the limits, 0 or 255, where there is no detail left to recover. A little is normal - a specular highlight, a genuinely black shadow - but a large clipped percentage means the shot lost information the editing cannot restore.
A spike is a large area of one single tone: a plain sky, a white studio background, the paper in a scan, a flat graphic. It is expected in those images and says nothing bad about the exposure.
Yes. Images past 24 megapixels are point-sampled rather than averaged, which keeps the distribution and the clipping numbers honest while staying instant. The graph is redrawn the moment you switch channels.
No. The pixels are read and counted in your browser, and nothing is sent to a server. No account, no watermark, no limit on how many images you check.