Photo Editor
Simple browser-based photo editor with filters and crop
About this tool
Edit photos directly in your browser. Upload any image and apply adjustments like brightness, contrast, saturation, hue rotation, blur, sepia, and grayscale using intuitive sliders. Use the drag-to-select crop tool to trim your image, then download the result as PNG — no software installation or account required.
How to use
- 1 Click 'Upload Image' or drag an image file onto the upload area.
- 2 Use the sliders to adjust brightness, contrast, saturation, hue rotation, blur, sepia, and grayscale.
- 3 Optionally drag on the preview to select a crop region, then click 'Crop'.
- 4 Click 'Download PNG' to save the edited image to your device.
How browser-based filters actually change your pixels
This editor never sends your photo anywhere. When you upload an image, the browser decodes it into a <canvas> element and keeps the original pixels in memory. Every adjustment you make is applied by setting the canvas filter property — the same CSS filter functions a browser uses to style web pages — and then redrawing the untouched original through that filter. Because the source is preserved, dragging a slider back to its default restores the exact original; nothing is lost to repeated edits the way it is when you save a JPEG over and over.
The seven sliders map to specific mathematical operations on each pixel's red, green, and blue values:
| Adjustment | What it does to each pixel | Default |
|---|---|---|
| Brightness | Multiplies RGB values by a factor (100% = unchanged, 200% = doubled) | 100% |
| Contrast | Pushes values away from or toward mid-gray (128) | 100% |
| Saturation | Scales how far colors sit from gray; 0% is fully desaturated | 100% |
| Hue rotate | Spins every color around the color wheel by a number of degrees | 0deg |
| Blur | Averages each pixel with its neighbors over a radius in pixels | 0px |
| Sepia / Grayscale | Blends toward a warm-brown or neutral-gray tone | 0% |
A worked example: rescuing a dull photo
Say you upload a flat, hazy landscape shot. A reliable recovery sequence is: raise contrast to about 120% to separate the sky from the hills, nudge saturation to 115% so the greens read as green rather than gray, and leave brightness at 100% unless the whole frame is genuinely too dark. Avoid the temptation to crank everything: at 200% saturation, subtle gradients in a sky turn into harsh banded blocks because the values clip at the maximum. Make small moves, then look at the preview before pushing further.
For an artistic look, set grayscale to 100% for a clean black-and-white, or sepia to 60–80% for a vintage warm tone. Hue rotate is the one slider most people skip — try 180deg on a portrait to instantly see why it is a creative effect rather than a correction tool.
Cropping without distortion
Drag a rectangle directly on the preview to select a region, then click Apply Crop. The tool reads the dragged area at the image's true resolution — it scales your screen-space selection back up to the original pixel grid — so a crop taken on a small preview still produces a full-quality cut, not a blurry upscale. Cropping happens after your current filters are baked in, so apply your color adjustments first if you want the cropped result to keep them. A crop replaces the working image, which means subsequent sliders operate on the cropped version; this is intentional and lets you stack a crop and then re-grade.
Practical tips
- The output is always PNG. PNG is lossless, so your edited file will not introduce JPEG compression artifacts — but it can be larger than the original JPEG. For photos destined for the web where size matters, run the PNG through a compressor afterward.
- Order matters for blur. Apply blur last. Blurring before a strong contrast boost can create halos around high-contrast edges.
- Reset All is non-destructive. It only resets sliders, not crops. If you cropped too tightly, re-upload the original.
- Large images stay sharp. Because all math happens at native resolution, a 4000-pixel-wide photo is edited at 4000 pixels even though the preview is scaled to fit your screen.
Common mistakes
- Confusing brightness with exposure recovery. Brightness multiplies values uniformly, so blown-out highlights stay blown out — it cannot bring back detail that the camera never captured. Lowering contrast first can sometimes reveal more usable tone.
- Over-saturating skin tones. Pushing saturation past about 120% on portraits makes skin look orange. Grade the background separately in your mind and keep people subtle.
- Expecting layers or text. This is a single-image adjustment and crop tool, not a layered design app. For overlays, captions, or compositing, use a dedicated editor.
- Forgetting it is offline-capable. Because nothing is uploaded, the editor keeps working with your network disconnected — useful confirmation that your private photos truly never leave the device.
When this tool is the right choice
Reach for it when you need a fast, private adjustment: lightening a scanned document, desaturating a screenshot for a presentation, cropping a product photo to a clean rectangle, or applying a quick mood with sepia before posting. It is ideal precisely because it does one job well without an account, an install, or an upload — and because the original pixels are kept in memory, you can experiment freely and always return to where you started.
Frequently Asked Questions
Interactively crop, rotate, and flip images in the browser with preset aspect ratios.
Apply Instagram-style filters and adjustments to your photos, then download the result.
Resize and compress images in the browser using Canvas API — by percentage, exact dimensions, or max dimension — with batch processing and ZIP download.
Compress JPG, PNG, and WebP images in your browser — no upload needed.