Compress Images Without Uploading Them
Most online compressors send your files to a server, process them there and return a temporary download link. That means photos, client mockups and product shots sit on infrastructure you do not control. This tool works differently: the codecs are compiled to WebAssembly and shipped to your browser, so decoding and re-encoding happen on your own machine. There is no upload request, no account and no API key.
Because everything runs locally, the tool keeps working on a slow connection and never queues behind other people's jobs. Heavy work is pushed into a Web Worker so the interface stays responsive while a batch of large photographs is processed. Anonymous usage counts may be recorded for the page itself, but no filename, dimension, file size or image content is ever included.
JPEG and JPG Compression
JPEG is lossy: the encoder discards detail your eye is least likely to notice, and the quality slider controls how aggressive that is. Photographs usually look untouched between 75 and 85 while shedding well over half their weight, which is why that range is the common recommendation for the web. Push lower and you start to see blocking around hard edges and banding in skies. Because the file is fully re-encoded from decoded pixels with MozJPEG, EXIF, GPS coordinates and camera metadata are removed at the same time, and orientation is applied before encoding so portrait photos stay upright. JPEG suits photographs and complex imagery; it is a poor fit for flat graphics, text screenshots or anything needing transparency.
PNG Compression
PNG is lossless, so savings come from two places. Lossless mode runs an OxiPNG optimization pass that rewrites filters and the compression stream without touching a single pixel. Smaller file mode goes further and quantizes the image to a palette between 2 and 256 colours, producing an optimized PNG8. Both keep the alpha channel intact, and the output always stays a PNG. Screenshots, icons and logos have large flat colour areas and often shrink dramatically with palette reduction, while photographic PNGs with gradients tend to show banding — those are usually better served by WebP.
WebP Compression
WebP typically produces files 25 to 35 percent smaller than JPEG at comparable visual quality, and it supports transparency, which makes it the strongest default for hero images, thumbnails and product galleries on a modern site. The quality slider maps to libwebp's encoder, with 80 a sensible starting point. If a WebP file was already exported at a low quality by another tool, expect modest savings here: re-encoding an already lossy file mostly costs quality rather than bytes, and the tool will flag it as already optimized instead of claiming a reduction.
Animated GIF Compression
Animated GIFs are handled by gifsicle, which understands the whole animation rather than a single frame. Frames, delays, transparency indexes and loop settings all survive. Lossless does safe structural optimization only; balanced adds moderate palette and lossy work and is the recommended default; maximum pushes harder and can introduce visible dithering artifacts. Complex animations hold many frames in memory at once, so large GIFs are processed one at a time and flagged with a warning before you start.
SVG Optimization
SVGs are text, so they are optimized as markup rather than rasterized — the result stays infinitely scalable. SVGO removes editor metadata, comments, empty groups, redundant attributes and excess decimal precision, while viewBox, gradients, masks, clip paths, referenced IDs and accessibility titles are preserved. Scripts and inline event handlers are stripped, which also removes a common vector for unsafe markup. This is ideal for logos, UI icons and illustrations shipped in a site bundle.
Compress an Image to a Target File Size
When you set a target size for a JPEG or WebP, the tool cannot calculate the right quality directly — the relationship between quality and bytes depends entirely on image content. Instead it encodes at a mid-range quality, compares the result to your target, halves the search range and tries again, capped at a small number of attempts so it can never loop indefinitely. The quality that was finally used is shown on the result. For PNG and GIF, target size is approximate at best because palette structure, image complexity and frame count dominate the outcome; use the colour and optimization controls instead.
Which Image Quality Should You Choose?
- 85–95: high-detail photography, portfolio work and images that may be viewed at full resolution or printed.
- 75–85: websites, blog posts and general sharing — the everyday sweet spot between weight and appearance.
- 60–75: email attachments, chat and smaller downloads where a slight softening is acceptable.
- Below 60: maximum savings when artifacts do not matter, for example thumbnails or placeholder previews.
Results vary by image. Flat illustrations and screenshots tolerate lower quality than photos with gradients or skin tones, so check the before and after comparison at 100 percent zoom before committing to a setting for a whole batch.
Common Uses for Image Compression
Website performance is the most common reason to reduce image file size: images are usually the heaviest part of a page, and a lighter hero image improves Largest Contentful Paint directly. Beyond that, email providers cap attachment size, online forms and government portals often reject anything over a fixed limit, and social platforms re-encode oversized uploads in ways you cannot control. Ecommerce catalogues multiply every saved kilobyte across thousands of product shots, blog and portfolio images load faster on mobile connections, and shrinking an archive of photos before backing it up saves real storage. For related reading on making a site faster overall, see the performance and AI engineering articles on the blog.
Privacy and Security
No image data, filename, preview or generated file is transmitted anywhere. Nothing is written to a database or storage bucket, and no third-party compression API is involved. Object URLs created for previews are revoked when you remove a file, clear the queue or leave the page, so memory is released promptly. Re-encoding raster images also strips EXIF, GPS coordinates and camera information from what you download, and uploaded SVG markup is sanitized so scripts and inline event handlers never execute. If you only need to remove metadata without re-encoding your pixels, use the EXIF data remover. Local processing removes the upload step from the equation, but it is not a substitute for your own handling policies for sensitive material.