Compress

Compress a JPEG to an exact file size

Set a KB target and the engine finds the highest quality that fits it. Everything runs in your browser — nothing is uploaded.

1
Upload a photo
Any JPG or PNG

The download is always a JPG, whatever you upload — hitting an exact file size only works with JPG's adjustable quality; PNG has no equivalent way to shrink toward a target.

2
Set your target
Every candidate is measured, not guessed

The engine keeps full quality as long as it fits the budget, and only shrinks the image when a very small target genuinely requires it — it will never enlarge the photo.

3
Download

Common questions

How is this different from just lowering the quality slider in an editor?
A quality slider is a guess — you set a number and hope the file lands near the size you need. This tool works backwards from the size itself: it tests candidates and finds the highest quality that actually fits your KB target, rather than leaving you to guess and retry.
Why did it shrink the image dimensions instead of just lowering quality?
For a very small target relative to the original file, quality alone often cannot reach the size without looking noticeably bad — at that point, reducing the dimensions a little preserves more real detail than crushing the quality down further would.
What image formats can I upload?
Any common image format your browser can open — JPG and PNG are the most common. The download is always a JPG, since a target byte size only works with JPG’s adjustable quality. If you specifically need a smaller PNG that stays a PNG, use the PNG compressor instead.