Every upload form eventually gives you a number. 20 KB. 100 KB. 2 MB. The number tells you nothing about whether your photo will still look like a photograph when it gets there — and the honest answer is that two images at the same target can land in completely different places.
The short version
- What makes a photo big is detail, not megapixels alone. A noisy, textured image costs far more per pixel than a clean one.
- Above roughly 200 KB, lower the quality setting. You will not see it.
- Below roughly 50 KB, reduce the pixel dimensions instead. Softness looks normal; compression artefacts look broken.
- Always start from the original file. Compressing an already-compressed copy stacks the damage.
- A photo of a document is a different problem from a photo of a face, and wants the opposite settings.
What actually makes a photo file big
Three things, in roughly this order.
Pixel count is the obvious one. A 12-megapixel phone photo holds twelve million colour samples. Halve the width and height and you have removed three-quarters of them.
Detail is the one people miss, and it is usually the deciding factor. JPEG works by chopping the image into small blocks and describing each one as a set of frequencies, then throwing away the frequencies your eye is least likely to notice. Smooth areas — a plain wall, an overcast sky — collapse to almost nothing. Fine, chaotic detail does not: grass, foliage, hair, fabric weave, crowds, and above all sensor noise from a photo taken in poor light. Noise is the worst case, because it is detail that carries no information, and the encoder cannot tell the difference.
This is why the same 100 KB budget produces a perfectly acceptable headshot and an unusable landscape.
Quality setting is the lever you control directly. It decides how aggressively those frequencies get discarded. It is not a percentage of anything — a “quality 80” file is not 80 per cent as good as the original, it is just a number on a dial whose effect depends entirely on the image.
Quality first, then dimensions
There is a crossover point, and knowing roughly where it sits saves a lot of trial and error.
Down to about 200 KB, drop the quality. A typical phone photo will go from 4 MB to a few hundred kilobytes with no visible change at normal viewing size. The encoder is discarding detail you genuinely cannot see.
Between 50 and 200 KB, keep going on quality, but start looking at the result rather than trusting it. Watch the edges of high-contrast things — text in the background, a collar against a wall, tree branches against sky. Faint halos and a mottled texture around them are the first symptoms.
Below about 50 KB, change tactics. Crushing quality further produces blocking (visible 8×8 squares, most obvious in skies and skin) and ringing (ghosting around sharp edges). Both read as damage. Reducing the pixel dimensions instead produces softness, and softness reads as a smaller photo — which is what it is. Nobody looks at a slightly soft 600-pixel image and thinks something went wrong.
Hitting an exact number without guessing
Manually nudging a quality slider and re-checking the file size is a slow way to find out you have overshot. The reliable approach is to work backwards from the budget:
- Start from the original. Not the copy you already tried to compress.
- Strip metadata if the target is small. Free bytes with zero visual cost.
- Decide your minimum acceptable dimensions. For a passport-style photo on an application form, a few hundred pixels on the long edge is genuinely enough — that image will be printed at postage-stamp size or displayed in a small box.
- Let quality find the ceiling. Given a fixed size, there is exactly one highest quality that fits under the limit, and it can be found by narrowing in on it rather than guessing.
- Only then reduce dimensions, and only if the answer at minimum quality is still too big.
That is the order our own tool works in, for the reason above: it exhausts the invisible lever before it touches the visible one.
What compression cannot fix
Compression makes a file smaller. It does not make a photo better, and a few problems get actively worse:
- A blurry original stays blurry, and blur compresses deceptively well, so you will hit your target easily and still have an unusable photo.
- A dark, noisy photo is the hardest case there is. The noise eats the budget and the encoder smears it into blotches. Retake it in better light if you possibly can — it will do more than any setting.
- Screenshots and photos of text suffer disproportionately. JPEG was designed for continuous-tone photographs, and sharp black-on-white edges are exactly what it handles worst. Text goes fuzzy and grows coloured fringes long before a face would.
When JPG is the wrong format
- JPG for photographs. Everything above assumes it.
- PNG for anything with flat colour, sharp edges or transparency — screenshots, logos, diagrams, a scanned signature on white. PNG is lossless, so text stays crisp. Saving a photograph as PNG, on the other hand, usually produces a file several times larger than the JPEG.
- WebP when you control both ends. Typically 25 to 35 per cent smaller than JPEG at comparable quality, which can be the difference between fitting and not. But many upload forms still reject it, so check first.
A scanned signature is the clearest case. As a JPEG it develops grey speckle around the strokes and gets bigger the harder you compress it. As a PNG with a limited palette it is sharp, black, and often under 10 KB.
A thirty-second check before you upload
- Open the compressed file at full size, not the thumbnail. Thumbnails hide everything this article is about.
- Look at the flattest area — sky, wall, skin. That is where blocking shows first.
- Look at the sharpest edge. That is where ringing shows first.
- If it is a document or ID photo, can you read every character? This is the one that gets applications rejected.
- Check the file size actually came in under the limit, not near it. Some portals count the encoded upload rather than the file on disk.
If all five pass, you have not compressed it too far — regardless of what the number says.
The honest summary
There is no universal answer to “how small can it go”, because the question is really about the picture, not the number. A clean portrait against a plain background will survive 20 KB. A handheld night shot of a crowded street will look broken at ten times that.
What you can do reliably is stop guessing about the order of operations: strip what is not the image, spend the invisible lever first, and when the target gets genuinely tight, give up pixels rather than integrity. A smaller photo is a photo. A shattered one is a problem.