FileFits
5 min

How to Make a Photo Smaller (File Size) on iPhone, Mac, Windows and Android

"Smaller" means two different things: fewer pixels or fewer bytes. Here is what actually works on each device, what iPhone genuinely cannot do, and why converting HEIC to JPG makes the file bigger.

Search for how to make a photo smaller and you get two completely different answers, because the question hides two completely different problems. Sometimes "smaller" means fewer pixels — the picture is 4032 pixels wide and the form wants 600. Sometimes it means fewer bytes — the picture is 4.2 MB and the upload limit is 2 MB. The steps are not the same, and the tools that solve one often make the other worse.

This is the practical version, per device, with the parts that do not work called out.

First: which one do you actually need?

Read the error message. If it says pixels, dimensions, or "must be at least 600 x 750", you have a dimensions problem. If it says MB, KB, "file too large", or "maximum upload size", you have a bytes problem.

They interact but they are not the same lever. Cutting a photo's width in half removes about three quarters of its pixels and usually shrinks the file a great deal. But you can also cut a file from 4 MB to 400 KB without removing a single pixel, just by re-encoding the JPEG at a lower quality. And you can crop a photo to a tiny square and still end up with a large file if it is saved as a PNG.

iPhone: there is no built-in file-size reducer

This is the honest answer, and almost no article gives it. iOS has no setting, no share-sheet action and no Photos feature that says "make this file smaller". You can crop in Photos, which changes dimensions, but nothing in the stock app targets a byte count.

What does exist is per-message resizing in Mail. Apple's own documentation puts it plainly: "By default, Mail inserts images at their actual size. If different sizes are available, you can choose one from the pop-up menu located on the right side of the message header." That menu shrinks the copy that gets sent. It does not change the photo in your library, and it only helps if you are sending by mail in the first place.

The other iPhone-specific trap is the format. Recent iPhones save photos as HEIC. If a site rejects HEIC and you convert to JPG, the file usually gets bigger — we measured 2.11 MB going to 2.47 MB — because HEIC is simply a more efficient codec. That is not a bug in the converter. It means converting and shrinking are two separate steps, in that order: HEIC to JPG first, then a size target.

Mac: Preview does dimensions well and bytes badly

Preview's resize lives at Tools > Adjust Size. With "Resample image" ticked, lowering the width or the resolution genuinely removes pixels and the file shrinks with them.

What Preview will not do is hit a number. You cannot tell it "500 KB" and have it work backwards. You adjust, export, look at the size in Finder, and adjust again. For a single photo that is fine. For a form with a hard cap it is a guessing game.

Windows: the Photos app resize

Right-click a picture, open it in Photos, and use the resize option. Like Preview, it is dimension-first. Windows also has the old trick of right-clicking, choosing Send to > Mail recipient, and picking a smaller picture size, which produces a shrunken copy — again only useful if mail is where the file is going.

Android: it depends on who made your phone

There is no single answer here, and any article that gives you one exact menu path is describing one manufacturer's skin. Samsung's Gallery has a resize option under the image details; Google Photos does not have a file-size control at all.

Which brings up the most common Android misunderstanding: Google Photos "Storage saver" is about your backup, not your file. It changes what Google keeps on their servers. The photo sitting on your phone, the one you are about to upload, is untouched.

Making it smaller without cropping

"Without cropping" is a top search for a reason: people assume shrinking means losing the edges of the picture. It does not. Cropping cuts content away. Resizing keeps the whole frame and rebuilds it at fewer pixels. Re-encoding keeps every pixel and stores them less precisely.

For a file-size problem, re-encoding is the tool you want, and you should reach for cropping only if the framing was wrong anyway.

When the form gives you an exact number

This is where the built-in tools run out, because none of them accept a target. If a portal says 100 KB, you want something that searches for the quality setting that lands just under 100 KB rather than making you guess.

Our size tools do exactly that, in the browser, without the photo being uploaded anywhere: compress to 100 KB, or 50 KB, 200 KB and 500 KB. There is a deliberate detail worth knowing: after the file fits, the tool keeps shrinking the canvas rather than dropping the JPEG quality into the floor, because a full-size image saved at very low quality looks destroyed while a slightly smaller one at decent quality does not.

One more behaviour that is intentional: if your file already fits the target, the tool hands the original back untouched instead of re-encoding it. Re-compressing a file that is already small enough only loses quality, and in some cases actually makes it larger.

The short version

  • Pixels problem: Preview on Mac, Photos on Windows, crop or resize on the phone.
  • Bytes problem with no target: any of the above, then check and repeat.
  • Bytes problem with a hard limit: use a tool that takes the number.
  • iPhone HEIC being rejected: convert first, then shrink, and expect the JPG to be larger.

More from the blog