OnDeviceNo upload. Files never leave your device.

Image converters · OnDevice

Compress an image to a target size without uploading

Choose a size cap and drop JPEG, PNG, WebP, AVIF, or TIFF files. The page searches JPEG quality, and resizes only if needed, until each file fits. If you already know the number — 20 KB, 50 KB, 100 KB, 200 KB, 500 KB, 1 MB, or 2 MB — open the dedicated page for that cap.

No upload. Files never leave your device.

Drop images here

JPEG, PNG, WebP, AVIF, GIF, BMP, and TIFF are welcome. Multiple files are fine. Output is always JPEG so the size cap can be met.

Results

No files yet. Nothing is sent to a server when you add them.

Pick a cap, or stay on this page

Forms, exam portals, and email uploads often name a file-size limit but do not all use the same number. Use a dedicated page when you already know the cap, or stay here to choose 20 KB, 50 KB, 100 KB, 200 KB, 500 KB, 1 MB, or 2 MB — or type a custom size in kilobytes.

The compressor always writes JPEG, which most forms and mail systems accept. Work runs in your browser; files never leave your device.

Frequently asked questions

Does this upload my photos?

No. Compression runs in a Web Worker on your device. Nothing is sent to a conversion server.

How does it hit the size cap?

The image is decoded, then encoded as JPEG while the quality setting is searched so the file stays under your cap and as sharp as possible. If even a low-quality JPEG is still too big, the image is resized and the search is tried again.

Why is the output always JPEG?

JPEG is the practical format when you need a small file for a form, email, or size-limited upload. PNG is often larger than the cap you picked.

Which sizes can I pick?

Presets are 20 KB, 50 KB, 100 KB, 200 KB, 500 KB, 1 MB, and 2 MB. Each of those has its own page if you already know the cap. On this page you can also type a custom cap in kilobytes.

Can I compress many files at once?

Yes. Add a batch, compress, then download a ZIP.

Is there a file size limit?

Input files larger than 40 MB are refused. The cap applies to the output, not the original.