Image Compressor
Compress a photo to a target file size — 100 KB, 500 KB, whatever the form demands.
The quality is searched for, not guessed.
0 keeps the original. Resizing saves far more than quality does.
Everything happens in this page using your browser's own image codecs. Nothing is uploaded, which is the point when the photo is a passport, an ID or a medical scan.
How it works
Almost nobody searching for this wants "quality 70". They want a file under the limit some upload form is enforcing — 100 KB for a passport photo, 2 MB for a job application, 5 MB for an email attachment. So that is what the target mode does: it binary-searches the encoder quality until the output lands just under the number you gave it, usually in eight or nine attempts, and tells you what quality it settled on.
The setting that actually saves the space is not quality at all — it is dimensions. File size scales with the pixel count, so halving the width quarters the data before the encoder has done anything. A 4000-pixel-wide phone photo displayed in a 800-pixel column is carrying twenty-five times more pixels than anything will ever show. If a target is hard to hit on quality alone, limit the width first and you will get a visibly better image at the same size.
Format matters nearly as much. WebP is roughly 25–35% smaller than JPEG at matched quality and is supported by every current browser. PNG is lossless, which means it is the wrong choice for a photograph and the right one for a screenshot, a logo, or anything with flat colour and sharp edges — a photo saved as PNG frequently comes out larger than the original.
One thing worth knowing before you compress something twice: JPEG and WebP are lossy and generational. Each re-encode throws away detail permanently and adds its own artefacts on top of the last set. Always compress from the original, never from a copy you already compressed — and if a file has been round-tripped a few times, no setting here will bring the detail back.
Common questions
How do I get a photo under 100 KB?
Choose the target size mode and type 100. If the result looks poor, set a width limit as well — 1200 or 1600 pixels is plenty for almost any upload form, and cutting dimensions preserves far more apparent quality than cutting encoder quality does.
Which format should I pick?
WebP if whatever you are uploading accepts it — same quality, roughly a third smaller. JPEG for maximum compatibility, which is what most forms still want. PNG only for screenshots, logos and line art; a photograph as PNG is usually bigger than the file you started with.
Is my photo uploaded anywhere?
No. The file is read into a canvas in your browser and re-encoded there. You can disconnect from the network after the page loads and it still works — which is worth knowing before putting an ID document into a website.
Why did my PNG get bigger?
PNG is lossless, so re-encoding a photograph stores every pixel exactly, including the JPEG artefacts already in it. Photographs belong in JPEG or WebP.
Does it remove EXIF data?
Yes, as a side effect of re-encoding through a canvas. Camera model, timestamp and GPS coordinates all go. That is usually what you want before publishing a photo, and occasionally exactly what you did not.