Reduce Image File Size Instantly
MozJPEG + OxiPNG + libwebp running in WebAssembly. Typical reduction: 60–75% on JPG, 30–50% on PNG, with no visible quality loss at 80% quality.
Compress Images NowWhat this tool does: lossy and lossless compression for JPG, PNG, and WebP
This tool compresses images using dedicated WebAssembly codecs — MozJPEG for JPEG, OxiPNG for PNG, and libwebp for WebP. Lossy formats (JPEG, WebP) shrink by discarding imperceptible detail controlled by the quality slider. Lossless PNG compression via OxiPNG rewrites the PNG stream to remove unused chunks and apply optimal filter strategies without touching pixel data.
1. Select your images
Choose up to 20 JPEG, PNG, or WebP images. Each file can be up to 50 MB. Drag and drop or click to select.
2. Adjust quality
Use the quality slider (1–100%). At 80%, JPEG and WebP typically shrink 60–75% with barely visible difference. PNG uses lossless OxiPNG where quality setting maps to compression effort.
3. Download as ZIP
All compressed files are bundled into a single ZIP archive. Each file keeps its original name with a _compressed suffix. No server upload at any step.
How it compresses: MozJPEG for JPG, OxiPNG for PNG, libwebp for WebP
MozJPEG is Mozilla's enhanced JPEG encoder. It produces smaller files than standard JPEG at the same quality setting by using optimized Huffman coding, trellis quantization, and adaptive DC scanning. At quality 80, MozJPEG typically achieves 60–75% size reduction over the original uncompressed JPEG while maintaining visual fidelity.
OxiPNG is a lossless PNG optimizer written in Rust and compiled to WebAssembly. It recompresses the PNG stream by removing ancillary chunks (text, time, gamma), applying better filter strategies per row, and using zlib optimizations. Typical reduction: 30–50% on photographic PNGs, less on already-optimized files.
libwebp is Google's WebP encoder. At quality 80, WebP typically beats JPEG by 25–35% at the same visual quality. WebP supports both lossy and lossless modes — this tool uses lossy for size-critical compression.
All three codecs run entirely in your browser via WebAssembly. Images are decoded on the main thread and compressed off the main thread in a Web Worker pool, keeping the UI responsive during batch processing.
Limits: 50 MB per file, 20 files at once, browser-only (no server uploads)
Each image must be under 50 MB. You can select up to 20 files at once for batch compression. All processing happens in your browser via WebAssembly — images are never uploaded to a server. Compressed files are delivered as a ZIP download.
Choosing a quality level — what 80% means for each format
JPEG (MozJPEG): Quality 80 applies optimized Huffman coding and trellis quantization. Fine detail is softened slightly, but text, edges, and solid colors remain sharp. Most users cannot tell an 80% MozJPEG from the original. Typical reduction: 60–75%.
PNG (OxiPNG): PNG compression is always lossless. The quality slider controls OxiPNG's compression effort — higher values spend more CPU time finding better filter strategies. Even at maximum effort, pixel data is preserved perfectly. Typical reduction: 30–50%.
WebP (libwebp): Quality 80 gives the best balance of size and quality. WebP typically beats JPEG by 25–35% at the same visual quality level. For web use, WebP at quality 80 is the recommended setting.
FAQ
What is the difference between lossy and lossless compression?
Lossy compression reduces file size by discarding image data — some quality is lost permanently. Lossless compression reduces size without discarding data, so the original can be perfectly reconstructed. JPEG and WebP use lossy compression controlled by the quality slider. PNG uses lossless compression via OxiPNG — the image data stays intact but internal stream optimization can still shrink the file.
Can I batch-compress a whole folder?
Yes. Select up to 20 files at once (JPEG, PNG, or WebP, up to 50 MB each). The tool processes them in parallel using WebAssembly codecs running off the main thread. When all files are done, download them all as a single ZIP archive. Each compressed file keeps its original filename with a _compressed suffix.
Why does my PNG barely shrink compared to JPG?
PNG uses lossless compression designed for graphics with sharp edges and flat color areas. OxiPNG optimizes the PNG stream without discarding any pixel data — it removes unused chunks and applies better filter strategies. Typical PNG reduction is 30–50%. If you need smaller files, convert to JPEG or WebP which use lossy compression and can achieve 60–75% reduction at 80% quality.
Does compression remove EXIF and GPS metadata?
Yes. Because the tool re-encodes the image through WebAssembly codecs (MozJPEG, OxiPNG, libwebp), EXIF data including GPS location, camera model, and date stamps are stripped from the output. If you need to preserve metadata, keep the original file alongside the compressed copy.