Almost every “compress image” need eventually comes down to one specific number: a maximum file size in kilobytes, handed to you by a form, an upload page, or a set of instructions that assume you already know how to hit it. The trouble is that most photo-editing tools don’t let you target a file size directly — they let you pick a quality percentage and tell you afterward what size that happened to produce, which means getting to a specific KB number is a process of repeated guessing and re-exporting.
Two different things people mean by “image size”
Before getting into compression, it’s worth being precise about a distinction that causes a lot of confusion: pixel dimensions (how many pixels wide and tall an image is) and file size (how many kilobytes or megabytes it takes up in storage) are related but not the same thing. A photo can be physically large in pixels but small in file size if it’s heavily compressed, or comparatively small in pixels but still surprisingly large in file size if it’s a complex, busy image saved with very little compression. When a form says “image must be under 100KB,” it means file size — pixel dimensions are usually a separate (sometimes additional) requirement, if the form cares about them at all.
Why “pick a quality, check the result” doesn’t scale
If you’ve used an image editor’s export or “Save for Web” dialog, you’ve seen quality expressed as a percentage, with a preview of the resulting file size shown after the fact. That workflow is fine when you don’t have a strict target — but the moment you need to land at or under a specific number, it turns into trial and error: export at 80%, check the size, too big, try 60%, check again, and so on. Worse, the “right” percentage to hit a given size varies enormously between images — a simple portrait against a plain background might fit your target comfortably at 85% quality, while a detailed, busy photo might need 40% to reach the same size. There’s no universal quality number that reliably hits a specific KB target across different images.
Working backwards from the number you actually need
This is the core idea behind every compress-to-target tool on this site: instead of you guessing a quality setting and checking whether the result happens to be small enough, you specify the size you need, and the tool works backwards — encoding the image at a range of quality settings and homing in, through a handful of attempts, on the highest quality that still lands at or under your target. It’s the same image, processed in a way that answers the question you’re actually asking (“will this fit?”) rather than a related but different one (“what does 75% quality look like?”).
When quality reduction alone isn’t enough
Lossy compression has a practical floor — push the quality setting low enough and an image stops looking like a reasonable approximation of the original and starts looking actively broken: blocky, smeared, with visible squares around edges. If your target size is aggressive enough that quality reduction alone would have to cross that floor, reducing the image’s pixel dimensions becomes the more sensible next step, since a smaller image simply has less data to represent in the first place. Tools across this site handle that escalation automatically once quality reduction bottoms out, rather than producing a technically-smaller-but-unusable result.
Finding the right tool for your specific number
If your limit matches one of the common targets — 20KB, 50KB, 100KB, or 200KB — the dedicated tool for that exact size is the more direct path, preconfigured and ready to go. This page exists for everything else: as a flexible starting point if your number is unusual, if you’re not yet sure what limit you’re working against, or if you just want to understand how target-size compression works before committing to a specific number.