jpgtoolskit.org
JPG and photo utilities, in the browser
Say hi →

Adjust Colours, Exposure & Contrast

exposure in stops · contrast · saturation · warmth · gamma · auto levels · live before/after

The corrections that fix a photograph rather than restyle it, applied in the order a colourist applies them and shown side by side with the original as you drag. Everything runs in your browser — useful when the photo is one you would rather not upload to a website to have brightened.

Drop photos here

JPG / PNG / WebP · multiple allowed · output is JPG

    no files
    Ready.

    Which control fixes which problem

    Working non-destructively

    Every adjustment here is applied to a copy and written to a new file with -adjusted appended, so the original is never touched. But a JPEG loses a little quality every time it is written, so the thing to avoid is a chain: adjust, look, adjust the output again, look again. Reset and start from the original instead — the sliders are cheap, the re-encodes are not.

    The status line under each output lists exactly which adjustments were applied and at what values, so a result you liked can be reproduced later.

    What is happening to the pixels

    Everything is done in one pass in sRGB, on 8-bit values, with a single clamp at the end — so intermediate stages are allowed to go out of range and come back, which avoids the banding you get from clamping between every step. Contrast uses a tangent curve pivoting on mid-grey rather than a straight multiply, so the ends roll off instead of clipping abruptly. Saturation blends each pixel away from its Rec. 709 luma, which keeps brightness constant while the colour changes.

    None of it is colour-managed. The image is treated as sRGB, which is what a JPEG from a phone or a camera almost always is. If your file carries a wide-gamut profile, do this work in an application that reads it.

    Privacy

    100% client-side. Nothing is uploaded. See the privacy policy.