Skip to content
FireConvert
12 min read

Compress video for email — hit Gmail's 25 MB cap without wrecking quality

Gmail caps attachments at 25 MB. Outlook at 20 MB. Slack at 100 MB. WhatsApp at 100 MB. Your 4K iPhone clip is 450 MB a minute. That gap isn't a bug — it's the math, and the math is fixable. There are three levers: resolution, bitrate, and codec. Get them right and a 10-minute HD video lands at 18 MB with the recipient noticing exactly nothing. Here's the honest version, with the formula and measured numbers.

Attachment caps by platform (2026)

You don't need a smaller video; you need one under the specific cap your recipient's service enforces. Aim for a size target first:

PlatformAttachment capWhat happens at the cap
Gmail25 MBAuto-switches to Google Drive link (15 GB quota). OK if recipient is on Google Workspace; bounces for non-Google recipients with link-preview blocked.
Outlook / Microsoft 36520 MB (consumer), 10 MB (default enterprise policy)Auto-offers OneDrive link. Some corporate firewalls strip links.
Apple Mail + iCloud Mail Drop5 GB (after Mail Drop kicks in)Inline attachment if under ~25 MB, else iCloud link that expires in 30 days.
Slack (free)1 GB per file, 5 GB workspace totalUpload pane accepts it; files expire after 90 days on free plan.
Slack (paid)1 GB per fileNo workspace cap; files stay indefinitely.
WhatsApp100 MB per videoAuto-compresses your video to roughly 16 MB before sending (the reason your clip looks soft on the other end). Pre-compress to stop them crushing it.
iMessage100 MB (recent iOS)Silently drops quality for non-Apple recipients.
Discord (free)25 MBRejects over-cap uploads outright. Nitro raises to 500 MB.
Most web forms / SaaS uploaders10 MB (default)Silent reject, sometimes with 413 Payload Too Large.

Practical targets: under 20 MB hits every email service without falling back to a cloud link. Under 10 MB hits most web forms. Under 5 MBsurvives any mailing-list or group-email filter. Pick the smallest target your recipient needs.

The one formula that predicts output size

Video file size on any modern codec follows a simple equation:

file_size_MB ≈ (video_bitrate_Mbps + audio_bitrate_Mbps) × duration_seconds ÷ 8

A 1 Mbps video stream + 128 kbps (0.128 Mbps) audio, for 60 seconds, is (1 + 0.128) × 60 ÷ 8 = 8.46 MB. Resolution and codec don't appear in the equation directly — they only matter because they determine what bitrate you need to keep quality acceptable. Higher resolution needs more bits per second to look clean; better codec (HEVC, AV1) needs fewer bits for the same visual quality.

The rule of thumb: target bitrate = target file size × 8 ÷ duration. For a 5-minute clip (300s) and a 20 MB Gmail-friendly target, you need 20 × 8 ÷ 300 ≈ 0.53 Mbpstotal. Subtract 128 kbps for audio, and the video can spend roughly 400 kbps. That's 480p territory for H.264, 720p for H.265.

25MB50MB100MB150MBGmail 25MB180951080p8542720p3217480p168360pH.264 (universal)H.265 (modern devices)
Source: same 10-minute 1080p/30fps clip, measured on ffmpeg 6.1, x264 CRF 23 / x265 CRF 28 (matched visual quality), 2026-04-25.

Lever 1: resolution

Dropping resolution from 1080p to 720p typically halves the bitrate you need for matched perceived quality. 720p to 480p roughly halves it again. The catch: on a phone viewed at arm's length, the difference between 1080p and 720p is nearly invisible. On a laptop at typical viewing distance, 1080p wins for text and sharp edges, 720p is fine for everyday motion. On a TV — well, if you're emailing a video for TV playback, you've mis-identified the tool.

Resolution targets by destination:

  • 1080p (1920×1080): product demos, presentations with on-screen text, anything with fine detail. Needs ~5–8 Mbps H.264 for "visually transparent," which means a 5-minute clip lands at 200+ MB. Not email-friendly without another lever.
  • 720p (1280×720): the sweet spot for most email use. 2–3 Mbps H.264 looks clean; a 5-minute clip lands at 75–110 MB. Combine with H.265 or a lower bitrate to get to 20 MB.
  • 480p (854×480): casual "watch this" clips, memes, quick screen recordings. 500–900 kbps H.264 is fine; 5-minute clips hit 15–30 MB cleanly.
  • 360p or lower: really only for tiny loops. Most modern eyes reject it.

Lever 2: bitrate (and CRF)

Once resolution is set, bitrate controls the quality-vs-size trade. Two ways to set it:

  • Constant bitrate (CBR) — tool averages to an exact target (e.g., "1 Mbps average"). Predictable file size, slightly worse quality because complex scenes and simple scenes get the same allocation.
  • Constant Rate Factor (CRF) — tool targets a quality level (e.g., "CRF 23") and spends more bits on complex scenes, fewer on simple ones. Better quality for a given average size, but the exact final size is harder to predict.

For email, we recommend CBR with a calculated target: you know the cap, you want the file under the cap on the first try. For archival masters, use CRF.

H.264 CRF reference points: CRF 18 is visually transparent (matches source), CRF 23 is YouTube upload quality (nearly transparent), CRF 28 is "noticeably compressed but watchable," CRF 32is "distinctly compressed." For email, 23–26 on H.264 is the zone where things stay watchable.

Lever 3: codec

Codec choice is the biggest lever most people ignore. At matched visual quality:

  • H.264 (AVC) — universal. Plays on every device. Needs the most bits per second for a given quality. This is the safe default.
  • H.265 (HEVC) — roughly half the file size of H.264 at matched visual quality. Plays on modern iPhones, modern Android, Apple TV, Safari, Chromium with system codec. Firefox refuses it. Some old Outlook desktop clients refuse HEVC-in-MP4.
  • AV1 — another 20–30% smaller than HEVC. Plays on modern Chromium, Firefox, iOS 17+. Decode is fine on 2022+ hardware. Encode is slow — 10–30× slower than H.264 on the same clip.

For email-bound video where you know the recipient uses Gmail or Outlook on modern hardware, HEVC is a free ~2× size reduction. For email to a corporate address at a government contractor running Windows 7 in a secure enclave, stick to H.264.

The grid: resolution × codec × size, for a 10-minute clip

The chart above shows measured output sizes for the same 10-minute 1080p/30 fps source file, encoded at each combination of resolution and codec at matching visual quality (CRF 23 H.264, CRF 28 H.265 — roughly equivalent). Data:

ResolutionH.264 (MB)H.265 (MB)Gmail 25MB?
1080p18095No on either codec
720p8542No on H.264, close on H.265
480p3217Tight on H.264, yes on H.265
360p168Yes on both

Two takeaways: (1) for a 10-minute 1080p source, HEVC at 720p gets you to roughly 42 MB, which is Slack-friendly but still over Gmail's 25 MB. (2) If you need Gmail-ready, either drop to 480p or trim the clip.

Lever 4 (bonus): length

The most underused lever is "make the video shorter." Every second you cut is a second's worth of bits you don't spend. If the first 20 seconds are you fiddling with the camera and the last 30 are dead space, trim before you compress. A 3-minute clip needs one-third the bitrate budget of a 9-minute clip to hit the same file size.

Related: if you only need to show a 6-second reaction or a short loop, GIF or WebM might be a better format than MP4 entirely. Our MP4 to GIF tool trims to under 10 seconds routinely, and the output is commonly under 3 MB.

Audio: the lever everyone forgets

Default audio bitrate on most camera-recorded video is 256 kbps stereo or higher. For email-bound video, 128 kbps AAC is fine — dialogue stays clean, music is acceptable. Mono (96 kbps) is even smaller and usually fine for talking-head video. On a 10-minute clip, dropping audio from 256 to 96 kbps saves ~12 MB.

If the video has no dialogue or music worth preserving (silent screen recording, b-roll), strip the audio track entirely — saves every bit the audio was costing. For the audio-only direction, our extract audio from video guide covers the opposite workflow.

Workflow: compressing a 10-minute 1080p iPhone clip for Gmail

  1. Trim first: cut the dead starts and ends. Suppose 10 minutes becomes 6 minutes.
  2. Open Video Converter, drop the .MOV.
  3. Pick MP4 output, H.264 codec (universal), 720p resolution, 1 Mbps video bitrate, 128 kbps audio.
  4. Expected output: (1 + 0.128) × 360 ÷ 8 = 51 MB. Over Gmail cap.
  5. Drop to 600 kbps: (0.6 + 0.128) × 360 ÷ 8 = 33 MB. Still over.
  6. Drop resolution to 480p AND bitrate to 500 kbps: (0.5 + 0.128) × 360 ÷ 8 = 28 MB. Still over.
  7. Switch to H.265 at 500 kbps 720p: roughly matches 480p H.264 visual quality at ~22 MB. Under Gmail cap. Done.

The math predicts within 5–10% on every modern codec, so you can plan before you encode.

How our tool compares (honestly)

ToolCostWhere it winsWhere it loses
FireConvertAppFreeIn-browser (no upload — your 2 GB clip doesn't climb a 1 Mbps uplink), no watermark, resolution + bitrate sliders, H.264/H.265/AV1 optionsNo single-click "Compress for Email" preset yet; need to set bitrate manually; very long 4K encodes are slow in the browser
HandBrakeFree (desktop)Fastest local encoder, has "Very Fast 480p30" style presets, queue for batches, x265 nativeInstall required; UI is intimidating; no "target 25MB" box — you iterate CRF and check output
CloudConvert25/day free, $8–$25/moAPI, batch, predictable size target settingUploads the whole file (slow on a 2 GB clip); server-side privacy; daily cap on free tier
iMovie / QuickTimeFree (Mac)Native, good H.264 encoder, integrated with iPhone share sheetMac only; "Small File" export gives 540p — no intermediate option; no HEVC for really small files
VLC ConvertFree (desktop)Already installed; cross-platform; offlinePreset UI is confusing; bitrate control buried; A/V sync bugs on long clips; no progress ETA
ffmpeg CLIFreeEvery lever, scriptable: ffmpeg -i in.mp4 -vf scale=-2:720 -b:v 700k -c:v libx264 out.mp4CLI only; one typo wastes an hour; steep learning curve

Honest summary: if you're doing hundreds of videos a week with consistent settings, HandBrake or ffmpeg wins. If you need a one-off "get this MOV under 25MB for Gmail, now" with no install and no upload of your possibly-personal footage, our Video Converter is the shorter path. For a related problem, our reduce PDF file size guide applies the same "hit a cap" framing to documents.

Privacy: why in-browser matters for video

A video compress tool that uploads your file does three things you probably didn't consent to:

  • Moves your content to a stranger's server. Home videos, kids' birthday parties, confidential product demos, internal training. All of it, on someone else's disk, for however long their retention policy says.
  • Uses your upload bandwidth. A typical home connection uploads at 10–50 Mbps. A 2 GB clip climbs that uplink for 6–30 minutes. The compress operation itself takes under a minute on a local CPU.
  • Relies on their promise. "Files deleted after 2 hours" is contingent on a server not being compromised, an employee not being malicious, and a subpoena not arriving. Not uploading is simpler.

Our tool runs ffmpeg.wasm in your browser tab, sandboxed. Your video is read locally, compressed in memory, written back as a download. The file never leaves your machine.

Common questions

What's the single fastest way to get a video under 25 MB for Gmail?

Trim it to 3 minutes or less, drop to 720p, H.264 at 900 kbps, AAC 96 kbps mono. That lands around 22 MB and looks fine on a laptop or phone. If you can use H.265 (modern recipients), same settings produce roughly 11 MB.

Does compressing twice stack quality loss?

Yes. Every re-encode through a lossy codec adds generation loss on top of the last one. Avoid: take a compressed MP4, compress it again, compress it again. If you need different size targets, always start from the highest-quality original and compress to each target once.

Should I use H.264 or H.265?

H.264 if you don't know who the recipient is or they're on older corporate hardware. H.265 if you know they're on modern iPhone, Mac, Windows 10+, or modern Android — you'll land roughly half the file size at the same quality.

Why does WhatsApp compress my videos anyway?

WhatsApp auto-compresses every video to roughly 16 MB max regardless of what you send. The trick: pre-compress to WhatsApp's target (720p H.264 at 1 Mbps, 5 minutes ≈ 37 MB, their compressor then lands ~16 MB). If you send the raw 500 MB clip, their compressor crushes it harder and the output looks significantly worse than if you'd pre-compressed.

My recipient's Outlook rejects the MP4 anyway — why?

Either the corporate mail filter strips video MIME types regardless of size (common at banks, government, healthcare), or your file is still over their specific cap (many enterprises enforce 10 MB). Switch to a shared link on Dropbox/WeTransfer, or zip the MP4 (sometimes dodges the filter — not always).

Can I use this for video I'm going to upload to YouTube?

YouTube wants the highest-quality master you can give it. Don't pre-compress for upload — you'll double-compress when YouTube transcodes server-side. Compression for email is a last-mile operation for a specific recipient, not an archival format.

Do my videos get uploaded to your server?

No. ffmpeg.wasm runs in your browser tab. Your video is read locally, compressed in memory, and written back as a download. For a quick container-swap direction (no quality change, huge speed win), see our MOV to MP4 guide.

Related reading

Ready?

Drop your video on Video Converter, pick MP4 + 720p + 1 Mbps as a safe starting point, tune down if you need to hit a tighter cap. Free, in your browser, no sign-up. Got an iPhone .MOV specifically? Start at MOV to MP4 for the lossless remux first, then come back here if it's still too big.