Compress one image in a focused workspace, or add a batch and download everything together. Processing happens locally in your browser.
The page keeps static guidance and structured data server-rendered, while the local WebAssembly workspace loads only when you use the compressor.
One upload gets a large before/after workspace with dimensions, output format, savings, and direct download actions.
Drop or choose multiple images, process them together, switch between files, retry failures, and export all results as a ZIP.
Use auto mode to keep common formats, or convert to JPEG, WebP, AVIF, or optimized PNG depending on your delivery target.
Tune lossy quality, PNG optimization level, and optional maximum edge resizing before encoding.
Compare original and compressed sizes, saved bytes, percentage reduction, output dimensions, and browser support status.
Files are decoded and compressed in your browser using WebAssembly codecs. The images are not uploaded to a server.
Encoding is powered by jSquash packages; input decoding also depends on the browser's image decoder.
| Input | Output options | Practical note |
|---|---|---|
| JPEG / JPG | JPEG, WebP, AVIF, PNG | Best default: keep JPEG or convert to WebP for smaller web delivery. |
| PNG | Optimized PNG, WebP, AVIF, JPEG | Use PNG when transparency or lossless output matters; WebP/AVIF usually shrink photos more. |
| WebP / AVIF | WebP, AVIF, JPEG, PNG | Browser decoding support varies, so unsupported files show a clear retry or fallback message. |
| GIF / BMP / SVG / HEIC / TIFF | Browser-decoded static output when supported | Animated formats are rasterized to the browser-decoded frame; HEIC/TIFF support depends on the browser. |
For photos, choose WebP around 75-85 quality. Use AVIF when smallest output matters and slower encoding is acceptable.
For screenshots, UI captures, logos, or transparent images, try optimized PNG first, then compare with WebP.
Enable max-edge resize for camera originals. Reducing a 4000px photo to 1600-2400px often saves more than quality alone.
No. The interactive compressor runs in your browser. Files are decoded, resized, encoded, and downloaded locally without being sent to ZPTools servers.
The encoder supports JPEG, WebP, AVIF, and optimized PNG through jSquash WebAssembly packages. Input decoding also uses browser image support, so JPEG, PNG, WebP, AVIF, GIF, BMP, SVG, HEIC, and TIFF availability can vary by browser.
Lossless PNG optimization can be limited if the image is already optimized. For screenshots or transparent art, PNG may be right; for photos, WebP or AVIF usually produce smaller files.
Yes. Drop or choose multiple images, use Process all, then download individual outputs or package completed files into one ZIP.
Most outputs are re-encoded from browser pixel data, so metadata such as EXIF and GPS is generally removed. Use the Image Metadata tool when you need to inspect or edit metadata separately.