Compress Images

Drop one or more images, pick an output format and quality, and download smaller files — with the size saving shown per image. Everything runs locally; nothing is ever uploaded.

Files never leave your device
80

Drop images to compress, or click to browse

JPGJPEGPNGWEBP

What This Tool Does

Drop in one JPEG, PNG, or WebP image, or a whole batch of them, pick an output format and quality, and compress them all with one click. Each file gets its own card showing the size before and after, with a per-file download and a "Download all" shortcut once your batch is ready.

Everything runs on your device. There's no upload step, no server-side processing queue, and no limit beyond what your browser's memory can hold.

Choosing an Output Format

FormatCompressionQuality sliderNotes
Keep originalMatches the input's own formatApplies only if the input is JPEGSimplest choice: re-compress without changing the container
JPEGLossyYes — trades size for fidelityBest for photos where some quality loss is an acceptable trade for a much smaller file
PNGLosslessIgnoredSame pixels, smaller file, via the encoder's best compression settings
WebPLosslessIgnored (hidden)Often smaller than an equivalent lossless PNG at the same fidelity
AVIFLossyYesSmallest files at a given quality, but slowest to encode
Tip: If you're not sure which format to pick, "Keep original" with a quality around 70–80 is a safe default for JPEG photos. For a PNG screenshot or graphic, leave it on PNG or try WebP for an easy size cut with no loss of fidelity at all.

JPEG and AVIF Are Lossy — PNG and WebP Are Not

JPEG compression in this tool genuinely discards image detail: the quality slider (1–100, default 80) controls how much. A lower value produces a smaller file by throwing away more fine detail; a higher value keeps more detail at the cost of file size. AVIF works the same way — its own quality slider trades size for fidelity — but its encoder is built to extract noticeably smaller files at a comparable quality, at the cost of taking longer to finish, sometimes a few seconds for a large photo.

PNG and WebP output are both lossless here. Compressing a PNG re-encodes it with the underlying image library's own best compression settings — every pixel decodes back out exactly as it went in, and the file gets smaller purely because the encoder packs the same data more efficiently. WebP output works the same way: this tool only ever produces lossless WebP files, so its quality slider is hidden entirely, since there's no fidelity trade-off for it to control.

Batch Compression

Drop as many JPEG, PNG, or WebP files as you like — they're queued together and share whatever format and quality you have set when you click Compress. Each card updates independently as its file finishes, showing the percentage saved (or, occasionally, a note that a particular file didn't shrink, which simply means it was already close to optimal going in). Download files one at a time or grab everything with "Download all" once your batch is done.

Your Files Never Leave Your Device

Compression runs through a small WebAssembly module loaded into your browser tab. When you drop a file, its bytes are read locally and handed to that module — they're never sent anywhere over the network. Closing the tab discards everything; there's nothing left behind on a server because there was never a server involved in the first place.

If you need a different container format without necessarily shrinking the file, see the Image Format Converter. For resizing, cleaning hidden metadata, or applying visual filters first, see the Image Resizer, EXIF Metadata Viewer & Remover, and Image Filters tools — all built the same on-device way.

Frequently asked questions

Is this image compressor really free?
Yes. There's no sign-up, no watermark, and no limit on how many images you can compress. The tool runs entirely in your browser, so there's no server cost to recoup from you.
Do my images get uploaded anywhere?
No. Every image is re-encoded locally using WebAssembly running inside your browser tab. Your files never travel over the network, so nothing ever reaches a server.
Which image formats can I compress?
JPEG, PNG, and WebP as input. Output can stay in the same format as the original, or you can convert while compressing to JPEG, PNG, WebP, or AVIF. GIF and BMP files aren't accepted here since this tool is focused on the three formats most photos and web graphics actually use.
Does the quality slider actually shrink my PNG?
PNG compression in this tool is lossless — every pixel comes back byte-for-byte identical to the source, just packed into a smaller file using the encoder's best available compression settings. The quality slider doesn't change that behavior; PNG output ignores it. If you want a smaller file at the cost of some fidelity, convert to JPEG or AVIF instead.
Is WebP output lossy or lossless?
Lossless. When you compress to WebP, or keep an already-WebP file as WebP, this tool always uses lossless WebP encoding, so the quality slider is hidden and has no effect for that format. It can still shrink the file, since WebP's lossless container is often more efficient than PNG's.
Why does AVIF take longer to finish than JPEG or PNG?
AVIF's encoder does significantly more work to squeeze out the smallest possible file at a given quality, so it can take a few extra seconds per image, especially for large photos. It's the right choice when file size matters more than speed; for a quick everyday compress, JPEG, PNG, or WebP finish faster.
Why did one of my files come back the same size, or even slightly bigger?
Some images are already well-optimized before you drop them in — a PNG a design tool already compressed well, for instance — so there's little or nothing left to save. This tool never corrupts or discards your file in that case; the card simply shows that this particular image didn't shrink.