The Image Compressor keeps every file in its original format — JPEGs stay JPEG, PNGs stay PNG, WebPs stay WebP — but runs each through a best-in-class encoder to make it as small as possible without visible quality loss. Perfect for a mixed folder of images from a WordPress upload directory, an old website export, or a client hand-off where the file formats need to stay identical for downstream tools. Uses MozJPEG with trellis multipass for JPEGs, oxipng at max effort for PNGs, sharp-YUV libwebp for WebPs, and SSIM-tuned libavif for AVIFs. Everything runs in your browser — files never touch a server.
When to use the Image Compressor vs. a converter
Use this tool when you need to preserve the file format of each image while making it smaller: bulk-shrinking a folder of mixed JPEGs and PNGs before uploading to a CMS that expects specific formats, cleaning up an old website's /uploads directory, or preparing assets for a hand-off where a downstream tool insists on a specific extension. If you'd rather modernize to WebP or AVIF, use one of our converter tools — this one specifically leaves formats alone.
Best-in-class encoders — same as our converters
Every format goes through the same production-grade encoder we use in our dedicated converter tools: MozJPEG for JPEG (trellis multipass, separate chroma quality, progressive), oxipng for PNG at max effort (multiple filter strategies, zopfli entropy), libwebp for WebP (method 6, sharp YUV, multi-pass rate distortion), and libavif for AVIF (SSIM-tuned, chroma delta Q). At the balanced preset, files come out 15–40% smaller than what your OS or Photoshop produces with default settings.
Batch and privacy
Drop up to 20 files at once. Each file is processed serially in your browser using WebAssembly — nothing uploads. Progress is shown per-file with the exact bytes-in/bytes-out and savings percentage. Failed files (unsupported format, corrupt data) are flagged individually so one bad file doesn't kill the whole batch. When done, hit "Download all (.zip)" to get an archive with every optimized file, or download files one at a time from their per-file card.
Safety: keeps the original if it can't beat it
Some files are already fully optimized — re-encoding them at the same quality would actually produce a larger file (encoder overhead, metadata rounding). The tool detects this and keeps the original file untouched, flagging it as "already optimal." This is on by default; you can turn it off in advanced settings if you specifically need every file to go through the encoder pipeline for consistency reasons.