Skip to content
FireConvert
11 min read

Convert an image for WhatsApp — sweet-spot size, quality, and Document mode

You sent a sharp iPhone photo and it arrived looking like it survived a fax machine. That isn't your carrier, and it isn't the recipient's phone — it's WhatsApp, crushing every image through a proprietary recompressor so it ships fast and cheap over spotty 3G in emerging markets. You can't turn the recompressor off. You can hand WhatsApp a file that's already small and well-sized, and it will leave it almost alone. Here's the honest version.

The short version

  1. Resize to 1600 px on the longest edge. WhatsApp's own internal resize cap is around 1600-2048 px. Anything bigger gets downscaled on their servers with a cheap filter.
  2. Compress to JPEG at quality 85. Targets under 300 KB for a phone photo. WhatsApp treats files under roughly this size as "good enough" and its recompressor touches them lightly or not at all.
  3. Send as a normal photo. Not Document mode — that preserves quality but doesn't show a preview in chat, which defeats the point for most photos.
  4. If you need pixel-perfect (a contract scan, a product proof, an X-ray) send as Document. The icon that looks like a paperclip + file, not the photo icon.
  5. Our JPEG compressor and image resizer do both steps in one drop.

What WhatsApp actually does to your photo

WhatsApp ships roughly 100 billion images per day. To keep that moving over every cell network on Earth, they re-encode every image that comes in through the photo channel. The pipeline, as best anyone has reverse-engineered it from the clients:

  • Re-orient using EXIF, then strip EXIF (so the metadata like camera model, GPS, and lens info is gone on the other side).
  • Downscale if the longest edge is above ~1600-2048 px. This is a bicubic or Lanczos-ish resample — fine, not amazing.
  • Re-encode as JPEG at a low quality. iOS hovers around q=70, Android around q=65-70. Chroma subsampling is forced to 4:2:0.
  • Progressive flag flipped on. This is the reason WhatsApp photos load top-to-bottom blurry-then-sharp.
  • Size cap at roughly 100 KB on the recipient's side for a typical phone photo. Group chats may cap lower.

The pipeline is ruthless because it has to be. A 4 MB iPhone portrait shipped through this lands on the other side around 80-120 KB — a ~40× ratio. Text in screenshots gets fuzzy; skin-tone banding shows up in low-light photos; fine textures (fabric, grass) dissolve into JPEG blockiness.

The only way to avoid the worst of this is to hand WhatsApp a file that's already small and correctly sized — one that their pipeline has no reason to hammer.

The "sweet spot": under 300 KB, 1600 px longest edge

The exact threshold isn't documented by Meta, but community testing with matched-content pairs shows a fairly consistent window:

  • File size under ~300 KB on the input. WhatsApp's recompressor is tuned to produce output in that ballpark; if you arrive at the right size it often passes the file through nearly intact.
  • Longest edge 1600 px or less. No downscale step at all. 2000 px photos get rescaled; 1200-1600 px typically don't.
  • JPEG, quality 85, progressive. Matches WhatsApp's expected shape.
  • Chroma subsampling 4:2:0. What WhatsApp forces anyway — better to start there so there's no visible artifact from the forced subsample step.

Hit all four and the photo on the other end is indistinguishable from what you sent. Miss one and the recompressor does its thing.

WhatsApp's recompressor: sent size vs received sizeSent vs received (KB) — same photo, four prep paths01000200030004000Raw 4 MB iPhone4.0M110KJPG q=95 resized 24001.4M105KJPG q=85 resized 1600 (sweet)260K245KDocument mode4.0M4.0MsentreceivedOnly the "sweet spot" and Document mode arrive intact. Everything else gets crushed.
Sweet-spot prep (~260 KB, 1600 px, q=85) survives WhatsApp nearly unchanged. Higher-quality uploads get recompressed down to the same ~100 KB as raw.

The three-step workflow

Step 1 — Resize to 1600 px on the longest edge

A modern phone photo is typically 4032 × 3024 (iPhone main), 4000 × 3000 (Pixel), or up to 8192 × 6144 (ProRAW, 200-megapixel Samsung modes). All of those are way past WhatsApp's cap. Use our image resizer, set longest edge = 1600, keep aspect ratio locked. The output is roughly 2 MP of pixels — still plenty sharp on any phone screen, more than enough on a laptop at normal viewing distance.

For detail-critical shots (product photography, fine text in a screenshot), 2048 px on the longest edge is the upper tolerance; anything bigger and WhatsApp's downscale kicks in anyway. 1200 px on the longest edge is the lower safe limit — below that you're wasting quality and it still gets recompressed.

Step 2 — Compress to JPEG at quality 85

Drop the resized file on our JPEG compressor. Default quality 85 is the sweet spot — we detailed why in our JPEG compression guide. For a 1600-px resized photo that usually lands between 150 KB and 350 KB, which is squarely inside the WhatsApp "leave it alone" window.

If the output of step 2 is over 400 KB, drop quality to 80 — a threshold where the file still looks clean on a phone screen but consistently stays inside the sweet spot.

Step 3 — Send as a normal photo

In WhatsApp, tap the photo icon (the one that looks like a landscape/mountain icon on iOS and Android), select the prepared image, send. The image shows inline in the chat. The recipient taps to view at full size. Quality should match what you prepared.

Document mode — the lossless path

The photo icon compresses. The Document icon (paperclip, then "Document") does not. When you need to send a file untouched — a scanned contract, an X-ray, a product proof, a high-res illustration heading to a client — Document mode is the answer.

Trade-offs honestly:

  • Preserves the file bit-for-bit. No recompress, no resize, EXIF kept. If you send a 4 MB JPEG, the other side downloads a 4 MB JPEG.
  • No inline preview in the chat. It shows as a file attachment with a filename and size — the recipient has to tap to download and open.
  • 100 MB size cap per file on WhatsApp; 2 GB on WhatsApp Business.
  • Metadata is preserved — including GPS and camera model. If that's a concern, strip EXIF first (our JPEG compressor strips by default).
  • Filename is visible. IMG_3421.JPG works; rename to something descriptive before sending for anything business-facing.

Rule of thumb: photos of the kids, memes, selfies, casual stuff → photo icon at sweet-spot prep. Anything where recipient-side zoom matters (contract scans, engineering drawings, fabric proofs, medical imaging) → Document.

Common mistakes (and why they don't work)

"I'll just send in HD mode"

WhatsApp added "HD" photo mode in 2023. It preserves a bigger resolution (~2500 px longest edge vs the normal 1600) and uses a higher JPEG quality. It still recompresses. The received file is roughly 300-600 KB instead of 100 KB — better than default, but nowhere near the original, and you've lost EXIF either way.

HD is a reasonable default for people not prepping files in advance. If you're willing to run a compressor before sending, our sweet-spot prep beats HD on visible fidelity because it arrives intact rather than lightly recompressed.

"I'll send the PNG instead"

PNG is lossless; WhatsApp will still re-encode it to JPEG at low quality on their pipeline. The only thing a PNG gives you is a bigger upload. Convert to JPEG yourself with our PNG vs JPG guide; the output is smaller and the JPEG round-trip is identical to what WhatsApp would have done anyway.

"I'll just use quality 100"

Quality 100 is a 1-2 MB file for a 1600-px phone photo. WhatsApp sees a large file, recompresses aggressively to hit its size budget, and you land at the same ~100 KB on the other side. The extra bytes you sent were pure waste. Quality 85 at the right resolution is the honest target.

Batch workflow for weddings, events, real estate

Sending 80 photos from a wedding? Doing it one at a time is punishment. The workflow:

  1. Copy all source photos to a local folder.
  2. Open the batch resizer, drop the folder, set longest edge 1600 px, export as ZIP.
  3. Unzip, drop the resized folder on the JPEG compressor with quality 85.
  4. Download the ZIP, unzip, select all, send to WhatsApp as photos in batches of 30 (WhatsApp caps selection).

A 500-MB wedding folder typically lands at 80-150 MB after sweet-spot prep, and every photo ships through WhatsApp looking crisp instead of crushed.

Special cases

Screenshots with small text

Text on a 1600-px screenshot survives sweet-spot compression cleanly. Text on the same screenshot shipped through default WhatsApp ends up mushy — JPEG's chroma handling hates thin letterforms. Always prep screenshots, or send as Document if pixel-perfect is the goal (legal, IT support, bug reports).

Portraits in low light

Skin tone + low light = JPEG banding territory. Here, quality 90 beats quality 85 — the file is 50% bigger but the banding on cheek highlights is noticeably reduced. Still resize to 1600 px first; skin smoothness is about bit-budget, not resolution.

Graphics, logos, charts

These are flat-color, sharp-edge content that JPEG handles badly. The honest answer is send as Document (PNG or original) or use the resizer with a PNG output. WhatsApp's recompressor hates flat color and thin edges more than anything else — JPEG ringing is extremely visible.

HEIC from iPhone

WhatsApp transcodes HEIC to JPEG on upload. The transcode quality is acceptable but inconsistent across iOS versions. Convert HEIC → JPEG yourself with our HEIC to JPEG guide, then prep for WhatsApp — you get control over the final quality instead of whatever WhatsApp decided.

Honest compare — how we stack up

Tools for this cluster around three shapes: browser-based (ours, Squoosh, Compressor.io), desktop (Photoshop, Affinity, Preview), and built-in OS export.

ToolCostWhere it winsWhere it loses
FireConvertAppFree tier, paid from $9/moDoes compress + resize in two linked tools; WhatsApp sweet-spot preset (1600 px, q=85); batch via folder drop; EXIF strip by default; runs in-browser so no file leaves your machineFree tier caps at 4 MB input; no mobile app yet (roadmap)
Squoosh (Google)FreeExcellent encoder quality; MozJPEG, AVIF, WebP side by side; live A/B compare; works offlineSingle-image only — no batch; no resize + compress combined preset; minimal UX for non-developers
TinyJPG / TinyPNGFree (20/month), $39/yr ProGood automatic compression; API for devs; Photoshop pluginNo resize — only compress; uploads files to their servers; free tier cap is low for photo batches
Photoshop "Export As"$20.99/mo Creative CloudFull control; batch via Actions; professional color managementOverkill for "send a photo to mom"; subscription; no WhatsApp preset
iOS / Android built-inFreeOne-tap share; no installNo size control — either full-size or whatever the app's "small" preset decides; quality varies by iOS/Android version
WhatsApp HD modeFree (built-in)Zero extra workflow; good for casual useStill recompresses; output is larger than default (300-600 KB) but not as clean as pre-prepped sweet-spot files

Honest pick: WhatsApp HD if you can't be bothered to prep; our compress + resize preset if the photos matter and you're sending a batch. Document mode any time "it has to arrive exactly as sent."

Works well / doesn't

Works well

  • Family photos, selfies, meme sends — sweet-spot prep keeps them crisp
  • Real-estate listing photos sent to agents
  • Wedding and event photos batched through the resizer + compressor
  • Product shots to overseas clients where WhatsApp is the comms channel
  • Anything going Document — contracts, scans, proofs, X-rays

Doesn't work well yet

  • Animated GIFs — WhatsApp still recompresses, convert to MP4 with our GIF to MP4 guide first
  • Status updates — these get extra compression beyond regular chat, no way around it
  • iOS Live Photos — stripped to a single still on send
  • Disappearing messages — same pipeline, no difference

Common questions

Does sending as Document bypass compression?

Yes. Document mode preserves the file bit-for-bit up to 100 MB (2 GB on Business). You lose the inline preview and the recipient has to tap-download, but nothing is re-encoded.

What resolution does WhatsApp actually send photos at?

Default: around 1280-1600 px on the longest edge, quality 65-70, EXIF stripped. HD mode: around 2500 px longest edge, quality ~80. Both are progressive JPEG.

Why does my photo look grainy on the other side but fine on mine?

Because you're looking at the local copy you uploaded. WhatsApp displays your side from the device cache, not the recompressed server version. Your recipient sees the recompressed file. Test by asking them to forward it back to you — you'll see what they see.

Can I disable WhatsApp's compression?

Not for the photo channel. Document mode is the only built-in bypass. iOS doesn't expose a setting; Android has an "HD" toggle (lighter compression) and a "Media upload quality" setting (HD, Standard, Data saver).

Will EXIF data survive?

Photo mode: no — WhatsApp strips EXIF, including GPS, camera model, and lens info. Document mode: yes — preserved entirely. If you care about privacy, strip EXIF yourself before sending as Document; our JPEG compressorstrips by default.

What about WhatsApp Business?

Same pipeline for photos. Document cap bumps to 2 GB instead of 100 MB. Catalog images get their own compression (usually preserved better than chat photos) — upload via the catalog feature, not chat, if you're sending product shots to a business customer.

Does quality 85 really matter vs quality 90?

At 1600 px, q=90 is usually 30-50% bigger with no perceptible difference on a phone screen. q=80 is smaller but can show subtle color banding on skin and sky. q=85 is the sweet spot for the WhatsApp channel. Details in our JPEG compression guide.

Ready?

Drop your photo on the compressor. Use the resizer first if it's bigger than 1600 px. Send as a normal photo and it arrives the way you sent it — not the way WhatsApp would have rebuilt it.