Gmail caps you at 25MB. Outlook caps you at 20MB on a free account, 35MB on a paid one, but the real cap is whatever the recipient's server enforces — and that's almost always lower. iCloud Mail will quietly switch to Mail Drop above 20MB and tell the other side to download from a link, which a third of corporate spam filters strip out. So when you try to attach eight photos from a recent trip or three high-res product shots for a client, the bounce-back is the first time you find out the file you sent is "too big."
The good news: a JPG file is almost always 5–10x larger than it needs to be for email. The bad news: every "free image compressor" search result either uploads your photo to a server you didn't audit or runs the photo through a default that makes it look like a 2008 MySpace upload. Neither is necessary. Here's the playbook that actually preserves how the photo looks.
Open the JPG compressorWhy your JPG is so big in the first place
A JPG straight off a modern phone is usually 3–8MB. A JPG straight off a DSLR or mirrorless camera is routinely 12–25MB. Two things drive that number, and you can move both:
- Pixel count. A 12MP iPhone photo is 4032×3024 pixels. A 24MP camera shoots 6000×4000. Email gets opened on a phone screen (max useful width ~1500 px) or a laptop (max useful width ~2400 px). Every pixel beyond that is bandwidth the recipient never sees.
- Quality setting. Phones save at quality ~95. The eye stops seeing a difference somewhere around quality 80–85 for natural photos. The file size at quality 80 is typically half of what it is at quality 95, with zero visible loss in side-by-side comparisons.
If you move both at once — resize to 1600px wide and re-encode at quality 80 — a 5MB phone photo lands around 350–500KB. A 22MB camera JPG drops to about 1.5MB. The image still looks like the image. Twelve of them fit under 25MB with room to spare.
The three sliders that actually matter
Most "compress JPG" tools hide everything behind a single "compress" button. That's fine if you trust the defaults, but it's also why so many compressed photos look mushy. Our JPG compressor exposes three things, because three things are what the choice actually is:
- Quality slider (default 80). 80 is the safe zone for "photo of a person, a landscape, a product." Slide up to 85–90 if the photo has fine detail you care about (a sharp face crop, text in the frame). Slide down to 70 only if the result is going to be viewed at thumbnail size.
- Max-dimension picker (default 2400 px). This caps the longer edge. Set to 1600 for email-display use. Set to 2400 if the recipient might print it. Set to 1080 if it's going to a chat app where anything above a phone screen is wasted.
- Strip metadata toggle. EXIF data (the GPS coordinates, camera serial number, lens, ISO, even the phone's accelerometer reading) is baked into every JPG out of the camera. It's a privacy leak more than a size issue — it's only ~50KB — but if you're emailing a stranger or posting publicly, the toggle is on by default in our tool. Turn it off if you're sending to a photo editor who needs the camera data.
The 60-second walkthrough
- Open freefileconverter.ai/compress-jpg. You'll see the drop zone and the three controls above.
- Drag in your photos. Multi-select works — you can drop 50 at once. The file count appears top-right.
- Set the quality slider to 80 and the max-dimension picker to 1600 for email.
- Tap Compress. The progress bar moves; the offline-pill at the bottom confirms nothing leaves your device.
- Each photo gets a row with before-size, after-size, and a percent reduction. The download button appears next to each, or you can hit Download all (ZIP) at the top.
On a 2020-era laptop, compressing 30 photos takes about 8 seconds. On an iPhone, about 12 seconds for the same batch. The whole thing runs in WebAssembly inside the page — no server, no upload, no signup. The offline-pill is not a marketing badge; it lights up because the conversion literally cannot send the file. We don't have the API.
Quality 80 vs quality 95: can you actually see it?
Here's the honest answer almost no "image compressor" blog gives you: on any photo with natural texture (skin, foliage, sky, fabric, fur), the visible difference between quality 95 and quality 80 is essentially zero at normal viewing distance. The compression artifacts JPG produces show up on hard edges between flat color zones — text on a solid background, line art, screenshots of UI, illustrations. Don't compress those as JPG. Use PNG compression or convert them to WebP instead. JPG was designed for photographs; for anything else it's the wrong tool.
The rule of thumb that holds up:
| Subject | Use this quality | Why |
|---|---|---|
| People, portraits, faces | 85 | Skin tone gradients show low-quality blocking earliest |
| Landscape, scenery | 80 | Foliage and sky hide compression noise well |
| Product shots on a clean background | 85 | Edge between product and backdrop can show artifacts |
| Documents photographed for archiving | 90 | Text legibility matters more than file size |
| Group shots, parties, casual | 75 | Already lots of detail; 25% reduction is invisible |
What about HEIC from iPhone?
HEIC files are already aggressive compression — a 3MB HEIC photo is the rough equivalent of a 6MB JPG. If you're emailing from an iPhone and the recipient is on Windows or Android, you usually need to convert to JPG anyway, both because HEIC won't open on the recipient's side and because the conversion gives you a natural place to apply the quality and resize settings. Our HEIC to JPG converter exposes the same three controls. (See Why HEIC photos won't open on Windows for the longer story on why this happens.)
When to send a ZIP vs separate emails
If you have 20+ photos to send and you're already at the quality/size compromise you're willing to live with, the cleaner move is usually two emails, ten photos each, not one ZIP. ZIP attachments get more aggressive virus-scan treatment than image attachments, and a few corporate filters still strip ZIPs entirely. Photos as inline attachments also preview in the recipient's mail client, which is usually what people actually want.
That said, if the recipient asked for a ZIP (e.g. a photographer collecting client submissions), use the Download all (ZIP) button in the compressor — it bundles the compressed files, not the originals.
What we deliberately don't do
You'll notice the compressor doesn't have a "smart compress" or "AI optimize" button. That's on purpose. Every tool that ships one of those is either picking a default you could have picked yourself or running heuristics that occasionally choose terribly — like dropping a portrait to quality 60 because the histogram looked busy. The three sliders give you the same decision space without the surprise factor.
We also don't do "lossless JPG compression." That phrase gets used in marketing, but JPG is a lossy format by definition — the lossless re-encode you can do via tools like jpegoptim trims metadata and re-packs Huffman tables, saving 5–10%, which isn't enough to matter for email. If you genuinely need lossless, switch the source to PNG and use our PNG compressor instead.
Compress JPGs in your browser