Skip to content

WhatsApp Image Size: Optimize Photos for WhatsApp (Without Losing Quality)

· 3 min read · Imagic AI Team

WhatsApp compresses images. Here's exactly what happens and how to send the best quality photos.

WhatsApp Image Size: The Complete Guide

WhatsApp compresses images. Here's how to get the best quality.


How WhatsApp Handles Images

What Happens to Photos

  1. iPhone: Compressed to JPEG, ~30-40% quality
  2. Android: Similar compression, variable quality
  3. Documents: Sent without compression (PDF, DOC, etc.)

Quality Loss

Original WhatsApp After Lost
12MP ~1-2MP 85% resolution
4MB 300-800KB 80-90% size

How to Send Best Quality

iPhone

  1. Use Files app:
  2. Open Files app
  3. Select photo
  4. Share → Save to Files
  5. Open Files in WhatsApp
  6. Send document

  7. Email to yourself:

  8. Email photo to your email
  9. Open email on phone
  10. Save to Files
  11. Send via WhatsApp

Android

  1. Share as document:
  2. Open gallery
  3. Select photo
  4. Share → WhatsApp
  5. Before sending, tap document icon
  6. Send as document

Resize Before Sending

Optimal Size for WhatsApp

Purpose Size Why
General 1600px wide Retains detail
Portrait 1200px wide Good quality
Document 2000px wide Maximum legibility

Why this size?

  • WhatsApp maxes out around 1600px anyway
  • Larger = wasted bandwidth
  • Smaller = lost quality

Resize Script

from PIL import Image
from pathlib import Path

def resize_for_whatsapp(input_path, output_path, max_width=1600):
    """Resize image for WhatsApp without over-compressing."""

    img = Image.open(input_path)

    # Only resize if larger than needed
    if img.width > max_width:
        ratio = max_width / img.width
        new_height = int(img.height * ratio)
        img = img.resize((max_width, new_height), Image.Resampling.LANCZOS)

    # Save as JPEG at high quality (WhatsApp will compress anyway)
    img.save(output_path, 'JPEG', quality=95)

    print(f"Resized: {img.width}x{img.height}")

resize_for_whatsapp('photo.jpg', 'whatsapp_photo.jpg')

Batch Prepare for WhatsApp

from PIL import Image
from pathlib import Path

def batch_whatsapp(input_dir, output_dir, max_width=1600):
    """Prepare multiple images for WhatsApp."""

    input_path = Path(input_dir)
    output_path = Path(output_dir)
    output_path.mkdir(exist_ok=True)

    for img_file in input_path.glob('*'):
        if img_file.suffix.lower() not in ('.jpg', '.jpeg', '.png'):
            continue

        img = Image.open(img_file)

        if img.width > max_width:
            ratio = max_width / img.width
            img = img.resize(
                (max_width, int(img.height * ratio)),
                Image.Resampling.LANCZOS
            )

        output = output_path / f"WA_{img_file.name}"
        img.save(output, 'JPEG', quality=95)

        print(f"✓ {img_file.name}")

batch_whatsapp('./photos', './whatsapp_ready')

Quality Comparison

Test Results

Method Size Quality Notes
Direct send (iPhone) 1.2MB 70% WhatsApp compressed
Document send 2.8MB 95% Near original
Pre-resized 400KB 90% Good balance
Screenshot 200KB 80% Acceptable

Best Practices

Do

✓ Pre-resize to 1200-1600px ✓ Send as document for maximum quality ✓ Use high quality setting before sending ✓ Convert HEIC to JPEG first

Don't

✗ Send 12MP originals (over Compressed anyway) ✗ Send over mobile data (WiFi is better) ✗ Expect print quality ✗ Send huge files


Troubleshooting

Image Blurry

Cause: WhatsApp compression

Solution: Send as document

Can't Send Document

iPhone: Files → Open in WhatsApp Android: Gallery → Share → Document icon

HEIC Not Opening

Problem: iPhone HEIC format

Solution: Convert first

# Install: pip install pillow-heif
import pillow_heif

pillow_heif.register_heif_opener()

img = Image.open('photo.HEIC')
img.save('photo.jpg', 'JPEG', quality=95)

Quick Reference

FOR WHATSAPP:
Best quality: Send as document
Pre-resize: 1200-1600px
Format: JPEG at 95%
HEIC: Convert first

FAQ

Q: Does WhatsApp compress photos?

A: Yes. Direct sends are compressed ~70%.

Q: How to send full quality?

A: Send as document instead of photo.

Q: What's the best size?

A: 1200-1600px wide. WhatsApp maxes around this anyway.

Q: Does it matter on WiFi vs mobile?

A: Same compression either way. File size doesn't change.


The Bottom Line

  1. Send as document for best quality
  2. Pre-resize to 1600px max
  3. Convert HEIC to JPEG for Android
  4. Accept limitations - WhatsApp compression is inevitable

Tested WhatsApp compression extensively. Questions? Ask below.

Try these tools

Image Compressor

Related articles

Complete Guide to AI Image Processing: 50 Expert Tips for E-commerce SAI Image Upscaler: How to Enlarge Photos Without Quality LossAI Image Upscaling: Complete Guide to Real-ESRGAN vs Traditional Metho