Compress images without uploading them
Make photos and graphics smaller in bytes, one at a time or a whole folder, right here in your browser.
- Processed on your device. Your photos are never uploaded. How we know
- Free, no sign-up, no watermark
Drop images to compress
Drop files, paste with Ctrl+V, or choose them from your device.
PixWrench’s code runs on your device. We don’t receive your files, file names or their contents.
PixWrench’s code runs on your device. We don’t receive your files, file names or their contents. What happens to your files
How to compress images, or get them under a size like 200 KB
PixWrench re-encodes your pictures with modern codecs inside this browser tab. Pick a preset, or name the size you need, such as “under 200 KB” for an upload form. There’s no file-count limit; your device’s memory is the only ceiling.
Our comparison of JPG, PNG, WebP and AVIF explains the trade-offs, and the guide to compressing images for websites and email suggests sensible sizes for each job.
- 1
Add your images
Drop JPG, PNG, WebP, AVIF or HEIC files onto the page, or pick them from your device. The format is read from the bytes, so a wrong extension doesn’t matter.
- 2
Choose quality or a size limit
Use a preset, drag the custom slider, or switch to target size and type a limit in KB. Optionally shrink large images by their longest side.
- 3
Compare, then download
Drag the before/after divider to inspect detail at Fit or 100%, then save files one by one or the whole batch as a zip.
What this tool does
- Compresses JPG, PNG, WebP and AVIF; HEIC photos come out as JPG
- Smallest, Balanced and Best presets, or a custom quality slider from 1 to 100
- Target size mode keeps each file under a limit you set in KB
- Switch format while compressing: JPG, WebP, AVIF or PNG
- Lossless PNG optimization, or reduction to 256, 128 or 64 colors
- Never bigger: a file that can’t shrink keeps its original image data
- Before/after split view with Fit and 100% zoom
- Batch mode with per-file and total savings, plus one zip download
Our test images through the Balanced preset
We ran our five synthetic test images through the tool in Chrome with the Balanced preset and metadata removed (1 KB = 1,000 bytes).
| Test file | Before | After | Saved |
|---|---|---|---|
| 1600 × 1200 photo, JPG | 399 KB | 81 KB JPG | 80% |
| 1200 × 800 photo, WebP | 113 KB | 28 KB | 75% |
| 1000 × 750 photo, AVIF | 68 KB | 7.6 KB | 89% |
| 1512 × 2016 photo, HEIC | 941 KB | 118 KB JPG | 87% |
| 640 × 480 transparent graphic, PNG | 3.5 KB | 1.2 KB, lossless | 64% |
We also ran the target-size search on the 1600 × 1200 JPG with the same MozJPEG build in Node. A 200 KB limit settled on quality 89 (182 KB), 100 KB on quality 79 (97 KB) and 50 KB on quality 60 (48 KB), each after seven trial encodes and at full size. Real photos with more texture will need more bytes.
What happens to your pixels
Each file is decoded to raw pixels, turned upright if the camera saved it sideways, then encoded again: MozJPEG for JPG, libwebp for WebP, libavif with the AOM encoder for AVIF and OxiPNG for PNG. All four are compiled to WebAssembly through the open-source jSquash project and run in a background worker, so the page stays responsive.
| Preset | JPG and WebP | AVIF |
|---|---|---|
| Smallest | 55 | 35 |
| Balanced (default) | 75 | 50 |
| Best | 88 | 66 |
AVIF numbers look low because each codec has its own quality scale. PNG works differently: OxiPNG repacks the file losslessly, so every pixel stays identical. For more savings you can cut the palette to 256, 128 or 64 colors with the image-q library (Wu quantizer, Floyd–Steinberg dithering). That step is lossy but keeps transparency.
Hitting an exact size limit
In target size mode you type the cap and the tool hunts for the highest quality that fits: a binary search between quality 30 and 95, at most seven trial encodes per file. If quality 30 is still too big, it then trims the pixel dimensions.
When a limit is impossible, it says so and offers the smallest version it reached. PixWrench counts 1 KB as 1,000 bytes; if a form means 1,024, aim a couple of percent lower.
Why a file may say “Already optimized”
Re-encoding a JPG that was squeezed hard before can produce a bigger file, because the encoder spends bytes copying old artifacts. So if same-format output isn’t smaller, PixWrench keeps the original image data, still strips metadata losslessly, and labels the row “Already optimized”. You never download a larger file by accident.
Good to know
- Keep your originals. Lossy compression can’t be undone, and recompressing the same JPG repeatedly adds damage each round.
- AVIF gave the smallest files in our tests but encodes slowly, especially on phones.
- Color reduction suits logos and screenshots; on photos it can band smooth gradients.
- Images are capped at 50 megapixels on desktop and 24 MP on phones or low-memory devices. Larger ones get an offer to resize to 6,000 px on the long edge, or you can skip them.
- A transparent PNG saved as JPG needs a background color, because JPG has no transparency.
What happens to your files
Processed on your device. Your photos are never uploaded. PixWrench’s code runs on your device. We don’t receive your files, file names or their contents.
Decoding, encoding and the before/after preview all run in a Web Worker on your device. The finished file is assembled in memory and handed to your browser’s download, so your photos never reach our servers. Your preset, format and size limit are saved in local storage for next time; images never are.
The page does load advertising and analytics scripts, separate from the tool and described in our privacy policy.
Related tools and guides
Questions people ask
How do I compress a photo to under 100 KB?
Switch to target size, type 100 and add your photo. Starting from fewer pixels with the image resizer also helps.
Does compressing an image reduce its quality?
Lossy formats (JPG, WebP, AVIF) discard some detail; lossless PNG optimization changes no pixels. Judge with the before/after view at 100%.
Which format makes the smallest files?
In our tests AVIF was smallest, then WebP, then JPG. Not every app opens AVIF, so consider where the file is going.
Can I compress HEIC photos from an iPhone?
Yes, they come out as JPG. For more control over location data during the switch, use the HEIC to JPG converter.
Does it remove EXIF data and location?
All metadata is removed by default. You can choose Remove location, keep the rest instead, or inspect a photo first in the EXIF viewer and remover.