Adjust image levels
Adjust the levels of a photo (black point, white point and midtones) to fix a flat or hazy image, free and in your browser with no upload. Auto levels reads the histogram for you, and each color channel can be set on its own.
The most useful correction there is. Pulling the black and white points to where the histogram actually starts fixes most flat photographs.
In detail
Levels sets the black point, white point and midtones of an image, which is the correction that fixes most flat or hazy photographs. Auto reads the histogram of the file you loaded, discards 0.1% of the pixels from each end so one stray speck cannot decide the range, and moves the black and white points to where the tones actually start and stop.
You can work on RGB together or on the red, green and blue channels one at a time, which is how a color cast gets corrected. To read the histogram without changing anything, use the image histogram viewer.
Adjust image levels at a glance
- Input
- JPG, PNG, WebP, AVIF, HEIC, GIF (first frame), BMP, TIFF, SVG and other image formats
- Output
- The original format, PNG, WebP or JPEG
- What it does
- Auto levels from the histogram
- Black point, white point and midtone sliders
- RGB or single-channel adjustment
- A before-and-after toggle
- Batch processing
- Who it is for
- Photographers, and anyone with a dull, washed-out or dark photo.
- Limits
- Works at 8 bits per channel.
- One set of settings applies to every file in the batch.
- Privacy
- Runs entirely in your browser: no file is uploaded, and nothing is kept after you close the tab.
How to adjust image levels
- Drop your images Drag one or more images onto the page. The histogram of the loaded image is drawn behind the sliders.
- Press auto, or set the points by hand Auto clips 0.1% off each end of the histogram and sets the black and white points from what survives. The black point, white point and midtones sliders move them yourself, from 0 to 255.
- Switch channel if there is a color cast RGB moves all three channels at once. Choosing R, G or B moves only that channel, which is what corrects a cast rather than the overall contrast.
- Compare against the original Turn on show the original to swap the preview back to the untouched pixels. The export is unaffected by it.
- Apply and download Choose a format — keep, PNG, WebP or JPEG — then apply. One file downloads on its own, several arrive as a ZIP.
Adjust image levels: common questions
Do my photos get uploaded when I adjust levels?
No. The image is decoded, corrected and re-encoded inside your own browser tab, and no file or pixel is sent anywhere. There is no account, and once you have used the tool online, it keeps working with the network switched off.
What exactly does the auto button do?
Auto reads the histogram of the loaded image, discards 0.1% of the pixels from each end, and sets the black and white points to where the remaining tones begin and end. The clip matters: a single dust speck or hot pixel at level 0 would otherwise make the raw minimum say 0 when the picture really starts at 40.
What are the limits of this levels tool?
It works at 8 bits per channel — every setting collapses into 256-entry lookup tables, one per channel, so a deeper source is corrected at 8-bit precision. Alpha is never touched, and one set of settings goes to every file in the batch, so photographs shot under different light need a pass each.