Free Online Image Compressor & Resizer
Compress and resize JPG, PNG, and WebP images. Files stay on your device.
Aspect ratio is preserved. Images are never upscaled.
Drop images here or click to browse
JPEG, PNG, WebP · Multiple files supported
·
-
→
Processing…
How Browser-Based Image Compression Works
This tool compresses images entirely inside your browser using the HTML5
Canvas API — no server, no upload. When you drop an image file,
it is decoded and drawn onto an invisible canvas element at the target dimensions.
The browser then re-encodes the canvas to a new image file using
canvas.toBlob(), applying the JPEG or WebP quality factor you choose.
The resulting blob is a standard image file you can download immediately.
Because everything runs locally on your CPU, the tool works fully offline once
the page has loaded.
JPEG, PNG, and WebP — Key Differences
JPEG is a lossy format ideal for photographs and complex images. At quality 82, file sizes are typically 60–80% smaller than the original with no visible quality loss to the human eye. JPEG does not support transparency.
PNG uses lossless compression — every pixel is stored exactly. This makes it the right choice for logos, screenshots, diagrams, and any image with sharp edges or a transparent background. Because PNG is inherently lossless, the quality slider does not reduce PNG file sizes; use the Resize option instead to bring large PNG dimensions down.
WebP is a modern format developed by Google that supports both lossy and lossless compression. At the same visual quality as JPEG, WebP files are typically 25–35% smaller. All modern browsers support WebP, making it the best default choice for website images.
Choosing the Right Quality Setting
- 50–70 — Maximum compression. Ideal for email thumbnails, image grids, or background textures where you need the smallest possible file. Some banding or blurring may be visible on close inspection.
- 75–85 (recommended) — Excellent balance. Visually lossless for most photographs at normal viewing distances. Use this for website hero images, blog post photos, and product thumbnails.
- 86–95 — Near-lossless. Use for portfolio photos, product close-ups, or anywhere sharpness is critical on a high-resolution display.
- 96–100 — Minimal compression. File sizes are barely smaller than the original — rarely worth using unless you need an exact pixel-perfect reproduction.
When to Use the Resize Option
Camera phones routinely produce 12–50 megapixel images (4000–8000 px wide) that are far larger than a web page will ever display. A 6000 × 4000 px photo at quality 82 is still several megabytes. Scaled to 1920 × 1280 px first, it shrinks to under 400 KB. Enable the Resize toggle and set a Max Width and / or Max Height to cap the output dimensions. The tool maintains the original aspect ratio automatically and never upscales — if the image is already smaller than your limit, it stays at its original size.
Common targets: 1920 px wide for full-width banners, 1200 px for blog feature images, 800 px for inline content, 400 px for thumbnails and avatar photos.
Batch Compression and ZIP Download
You can drop or select as many images as you like in one go. All files are
compressed in parallel using the browser's available CPU threads. Once at least
two images are ready, the Download All (ZIP) button appears —
clicking it bundles all compressed images into a single .zip file
that downloads in one click. The ZIP library (jszip) is loaded
on demand only when you click that button, so it does not affect page load time.
How to Use Image Compressor
-
1
Upload your images
Drag and drop JPG, PNG, or WebP files onto the upload area, or click to browse. You can add multiple files at once.
-
2
Adjust quality and size
Use the quality slider to balance file size against visual quality. Optionally set a maximum width to also resize the image.
-
3
Download compressed files
Click Download next to each image to save the compressed version, or use Download All to get everything as a zip archive.