Your photos never leave your device
Every adjustment runs inside your browser — on the graphics processor through WebGL2, or on the CPU in a background worker when the GPU is unavailable. The original files, previews, thumbnails and saved results are never uploaded, and there is no watermark or daily save limit.
Within the editor, only the beta batch tools contact our server, and only after you log in: they send your account and the number of photos a batch processed — never photos, file names or adjustment values. Page-visit statistics for the site are described in the privacy policy. Edits live only in this tab, so refreshing or closing it clears the workspace; save your results before you leave.
Exposure vs brightness: two different ways to lighten
Exposure multiplies the light in every pixel, like opening the lens by one stop: +1 EV doubles it in linear light. Bright areas reach pure white first, which is why a big exposure boost blows out skies.
Brightness bends the midtones with a gamma curve — at +100 a mid-grey is lifted roughly like a square root — while pure black and pure white stay where they are. It never clips, but pushed hard it makes a photo look flat.
- Use Exposure when the whole photo is too dark or too bright.
- Use Brightness for a gentle lift or dip of the midtones once exposure is right.
Contrast, highlights and shadows
Contrast here is an S-curve that pivots on 18% grey (sRGB value 118): darker tones get darker and lighter tones lighter, while black, white and middle grey stay put — so contrast alone never creates clipping.
Highlights and Shadows change only the bright or the dark part of the tonal range, by up to ±1.25 EV. Lowering Highlights recovers detail the camera still recorded; pixels that were already pure white in the original cannot come back, and the editor tells you what share of the photo that is.
These two sliders work on each pixel by its brightness rather than with a local mask, so very strong settings can flatten a photo. Values between 30 and 50 in either direction usually look the most natural.
Temperature and tint
A JPG does not record the colour of the light it was taken in, so Temperature and Tint are relative sliders from −100 to +100 — the same approach Lightroom uses for JPG files. Plus temperature warms the photo (more yellow), minus cools it (more blue); plus tint adds magenta, minus adds green.
Both work as channel gains in linear light and keep overall brightness unchanged, so a grey patch keeps its brightness while its colour shifts. At +100 temperature, red is multiplied by about 1.32 and blue by about 0.76 before that brightness correction.
Vibrance vs saturation
Saturation pushes every colour away from grey by the same factor; −100 turns the photo black and white.
Vibrance boosts dull colours far more than colours that are already strong, and it boosts skin tones only half as much, which keeps faces from turning orange. For most photos it is the safer slider.
What auto correct does — and what it cannot do
Auto correct uses no AI model. It analyses a 512-pixel copy of the original: its log-average brightness (aiming for about 22% grey), brightness percentiles, how much of the image is clipped, and the average colour of near-grey pixels. The result is written into the sliders with a sentence for each change, and it is always calculated from the original, so pressing it again gives the same values.
Safeguards keep it conservative: sunsets and single-colour scenes keep their warmth (white balance is skipped when fewer than 3% of pixels are near-grey), night shots are brightened by at most +0.3 EV, snow and beach scenes are darkened by no more than 0.2 EV, and backlit photos get their shadows lifted instead of the sky darkened.
It has limits. In our tests on synthetic scenes, a strong tungsten cast was corrected only about halfway (Temperature −18), and a mixed-light scene barely moved. Treat auto values as a starting point.
A good order for editing
- White balance first: Temperature and Tint, judged on something that should be grey or white.
- Exposure next, until the main subject looks right.
- Highlights and Shadows to bring back the sky and open up dark areas.
- Contrast, then Vibrance or Saturation, in small steps.
- Sharpness last, checked in the 100% view — sharpening before brightening makes halos stronger.
Presets: save a look and use it again
A preset is a saved set of slider values. Choosing one replaces all twelve values of the current photo, from Exposure to Threshold, and Undo brings back what you had. Presets are fixed numbers, not an analysis of the photo, so treat them as a starting point: Brighten dark indoor lifts a mid-grey from 118 to about 138 in a dim room, but on an already bright photo the same values push the sky to pure white, and the clipping warning under the sliders says so. Auto correct, by contrast, measures each photo.
Six built-in presets cover common jobs and cannot be deleted: Brighten dark indoor (+0.5 EV with highlights held back), Rich sunset (warmer, more vibrant, highlights −30), Soft portrait (lower contrast and a little warmth, with vibrance that spares skin tones), Vivid landscape (contrast, vibrance +30 and light sharpening), Black & white (saturation −100) and Calm muted tone (saturation −25, softer contrast).
Press Save current settings to keep your own — up to 30, with names of up to 40 characters. They are stored only in this browser and shared by the photo editor and its brightening, sharpening and colour-correction pages. Clearing site data or switching browsers removes them, so use Export JSON in Manage presets for a backup and Import JSON to bring them to another device.
Copy settings link puts the values into the address, for example ?p=1c10h-30t20n6v25 for Rich sunset. Whoever opens the link is asked before anything is applied and can save the values as a preset. The link never contains a photo, and our server’s access log never records the query part of an address (neither the page requested nor its referrer), so the values are not recorded.
Saving: format, quality and metadata
By default each photo is saved in its original format — JPG at quality 92, WebP at 90, PNG lossless — and HEIC photos are saved as JPG. Every JPG save loses a little quality, so keep 92 or higher when re-saving. In our tests a 24-megapixel JPG at quality 92 came out at about 2.3 MB in Chrome and 3.0 MB in Firefox: browsers encode differently.
Photos keep their pixel size up to the device limit: 48 megapixels on computers, 24 on Android phones and 16.7 on iPhone and iPad, where Safari cannot create a larger canvas. A larger photo is reduced to fit, and the result says so.
Camera information (EXIF), including the GPS location, is removed by default. If you keep it, the orientation tag is reset because the pixels are saved upright. Colour profiles are not kept: photos are saved in standard sRGB, so wide-gamut (Display P3) iPhone photos can lose a little intensity in the most vivid colours, and 16-bit or HDR images are saved as ordinary 8-bit photos.