Bulk-first · 100% in-browser · No upload

Image Compressor, Converter & Resizer

Drop up to 50 images and compress, convert and resize them here. JPG, PNG, WebP, GIF, BMP and HEIC in, JPG PNG or WebP out, with a ZIP of everything and a savings badge to share.

Drop 1 to 50 images

Drag files in or browse. JPG, PNG, WebP, GIF, BMP and HEIC are accepted. 50 MB per file, 50 files per batch. Animated GIF keeps its first frame only.

Drop your images here
or click to browse · nothing is uploaded, ever
Compression settings

Applied to every file when you press Compress. Canvas re-encoding strips metadata by design; see the proof note below.

Your pixels stay on this device. Files are decoded to canvas memory and re-encoded here. Open the network tab while compressing: no image request leaves. The only downloads are the HEIC and ZIP libraries, fonts, and page-view analytics.
Quality80
JPG and WebP only. PNG ignores quality and uses lossless encoding.
Max size preset
Longest side is capped. Smaller images are never enlarged.
Output format
HEIC to JPG toggle below can override this for HEIC inputs.
Resize mode Fit keeps the whole image. Fill crops the center to fill the max box.
Ready. Drop images above to start. Up to 50 files, 50 MB each.
Bulk queue

No files yet. Per-file thumbnails, before and after sizes, and savings appear here.

How bulk compression works here

Each file is read into memory, decoded to pixels, drawn to a canvas at your chosen size, and re-encoded to JPG, PNG or WebP. Quality 10 to 95 controls the JPG and WebP encoders; PNG is lossless and ignores it. HEIC files are first decoded to bitmaps by an open-source converter running locally, then follow the same canvas path. Nothing is queued on a server and nothing waits for an email link.

Fit scales the image down so the whole picture fits inside the max box. Fill scales so the box is covered and crops the center, which suits square thumbnails and cover photos. Original keeps source dimensions and only re-encodes. Images smaller than the preset are never enlarged, because upscaling would add bytes without adding detail.

Supported formats

Input and output support
FormatInputOutputNotes
JPGYesYesBest for photos; quality slider applies
PNGYesYesLossless; bigger than JPG for photos
WebPYesYesSmallest for web; quality slider applies
GIFYes, first frameNoAnimated GIF converts to a still with a warning
BMPYesNoConverted to your chosen output format
HEICYes, via local decodeNoForced to JPG when the HEIC toggle is on

Why it beats queued converters

aczh.dev versus upload converters
ToolUploadBulkLimitsPrivacy
This pageNo, local canvas50 files, ZIP at once50 MB per file, no daily cap in codePixels never leave the device
ConvertioYesQueued, 2 at once free100 MB free tier, daily minutes capFiles sit on a server queue
ZamzarYesQueued one by one50 MB free, 2 conversions per dayFiles stored for download links
TinyPNGYes20 files, 5 MB each500 free per month via APIUploaded for processing

Honest limits

EXIF strip proof: run exiftool on a download and compare with the original. The original lists EXIF, GPS or thumbnail segments; the output lists none, because fresh pixels were written. The network tab agrees: zero image uploads during a run.

Frequently asked questions

How do I convert HEIC to JPG free in bulk?

Drop up to 50 HEIC files, keep HEIC to JPG on, pick JPG and quality, press Compress. Each file converts locally to JPG and you can ZIP all at once. Nothing uploads.

Is this a WebP converter with no signup?

Yes. Pick WebP as output, drop JPG PNG or HEIC files, compress, download. No account, no email, preferences stay in your browser.

How do I compress images without uploading them?

Files are read into canvas memory in this page and re-encoded here. Open the network tab: no image request leaves. Only library downloads and page-view analytics load.

Is this a Convertio or Zamzar alternative with no limits?

It replaces queued server conversion for everyday jobs: bulk up to 50 files, no per-day cap in code, private by design. Very large print jobs may still suit desktop tools.

Does resizing strip metadata and EXIF?

Yes. Canvas re-encoding writes fresh pixels and drops EXIF, GPS and thumbnails. Verify with exiftool: output shows no EXIF segment. Keeping metadata would need byte passthrough, which this tool does not do.

What happens to animated GIFs?

Only the first frame is kept. The output is a still JPG, PNG or WebP with a warning badge. Use a video tool if you need animation preserved.

What are the file size and count limits?

50 files per batch and 50 MB per file, enforced in the browser. The caps keep the DOM fast and avoid tab crashes. Split larger jobs into multiple batches.