Image Compressor
Batch-compress JPG, PNG, and WebP images directly in your browser. Drag in as many files as you like, drag the quality slider, and watch the byte count drop — with a live before/after comparison for every image. Nothing is uploaded, so there is no file limit, no queue, and no watermark. Files never leave your device.
How the compression works — and why it beats uploading to a service
Most "free" image compressors ask you to upload files to their server, which means your photo lands on someone else's disk, the free tier caps you at 5 MB or 20 images, and you wait in a queue. This tool inverts the model: the browser is the compressor. Your images are decoded by the Canvas API, re-encoded with a quality level you control, and handed back to you as files — all inside this tab. The practical consequences are worth stating explicitly:
| No upload | Images are processed as local File objects via the Canvas API and never sent over the network. You can compress sensitive screenshots, design assets under NDA, or client photos without a second thought. |
| No limits | Because nothing reaches a server, there is no file-size cap and no image-count quota. Compress 200 screenshots in one batch if you need to. |
| Honest comparison | Every card shows original size, compressed size, and the exact percentage saved — recomputed live as you move the quality slider. You never compress blind. |
| Transparency | JPG and WebP use lossy compression at your chosen quality; PNG stays lossless (which is why PNGs shrink only when you switch output to WebP). The recommended path for screenshots and illustrations is WebP output. |
| Batch workflow | Drop a folder of assets, set quality once, download the whole batch as individually named files with a single click. |
What quality setting should you use?
The conventional default is 75%, and for good reason — at 75% most photographic images look identical to the original to the human eye while dropping 60-85% of their file size. If you are compressing for a blog, email newsletter, or portfolio, start at 75% and only go lower (60-70%) if the file still feels heavy. If you are prepping a hero image for a retina display, keep 80-85% to preserve fine gradients. Screenshots with flat UI colors compress exceptionally well in WebP — often 90%+ smaller — because solid-color regions are cheap to encode. The live preview exists precisely so you can make this trade-off with your eyes, not a formula.
Frequently asked questions
For format choices, quality defaults, and how this tool compares to upload-based services like TinyPNG, see the structured FAQ at the top of this page — or the short version: WebP output for screenshots and illustrations, JPG at 75% for photos, and never upload anything when the browser can do it locally.
Related tools: Favicon Generator · Base64 Image Encoder · HTML to JSX · Markdown Preview · Character Counter · More Developer Tools