Free image compressor

Compress any image to an exact size.

Set the limit, drop in an image, and download a file that stays under it. Built for form uploads, email attachments, product listings, and fast pages.

Pick a target size in the panel to start, no account needed.
Formats
JPG, PNG, WebP
Max upload
20MB
Account
Not required
Compression bench
Target

Drop your image here

or click to browse files

JPG · PNG · WebP · up to 20MB

All tools

Everything runs in your browser.

How it works

Four steps, nothing hidden.

  1. 01

    Set the ceiling

    Choose a preset or enter the exact limit the destination requires.

  2. 02

    Drop in one image

    The tool checks the format and size before any work begins.

  3. 03

    Keep the useful detail

    TinyPNG optimizes first; quality and dimensions are adjusted locally only when needed.

  4. 04

    Download with proof

    Compare before and after sizes, then take the compressed file.

Common limits

Start from the size you were given.

Privacy

Compression without the vague parts.

Images travel over HTTPS to a Cloudflare Worker and on to TinyPNG for perceptual optimization. The Worker processes bytes in memory and keeps no image copy. If a result still exceeds your limit, the browser re-encodes it locally and adjusts dimensions only as needed.

Read the privacy details

Questions

Useful details before you start.

Which image formats can I compress?

CompressImg accepts JPG, PNG, and WebP files up to 20MB.

Does CompressImg keep my images?

The Cloudflare Worker processes image bytes in memory and does not keep an image copy. TinyPNG may retain submitted content temporarily under its terms.

Can I set a custom file size?

Yes. Use the custom target input to enter any target between 1KB and 5000KB.