Email attachment size limits, and why your file is bigger than you think

The limits are lower than the numbers suggest, because attachments are encoded as text and grow by a third on the way out. What each provider allows, and why the same file reaches one person and bounces off another.

4 min read

You attach a file, press send, and the message bounces. The number in the error is rarely the number you expected, and the file you attached is often comfortably under the limit you were told about.

Here is what the limits actually are, why your file counts for more than its size on disk, and why the same attachment reaches one person and fails for another.

The limits, roughly

Provider Sending limit Worth knowing
Gmail 25 MB per message Larger files are offered as a Drive link instead of an attachment
Outlook.com 20 MB per message Offers OneDrive links past the limit
Microsoft 365 (work) 25 MB by default An administrator can raise or lower it, so it varies per company
Yahoo Mail 25 MB per message
iCloud Mail 20 MB per message Mail Drop handles up to 5 GB, expiring after 30 days
Proton Mail 25 MB per message Across all attachments combined

Treat every one of these as a best case. A corporate gateway, a spam filter or an antivirus scanner can enforce something lower without telling you, and plenty of self-hosted mail servers are still configured to a 10 MB limit set years ago.

Why a 24 MB file fails a 25 MB limit

Email carries text. Attachments are bolted on by encoding the file as text, using a scheme called base64, and that encoding inflates it by roughly 33%.

So the arithmetic that matters is not the size of your file. It is:

file size x 1.33 + the message itself + headers = what counts

A 20 MB file becomes about 27 MB of message and fails a 25 MB limit. Working backwards, a 25 MB cap really means about 18 MB of actual file, and a 20 MB cap means about 15 MB. If you want a rule of thumb: three quarters of the stated limit is the real one.

Both ends get a vote

This is the part that produces the confusing failures. Your provider caps what you can send. The recipient's provider caps what it will accept. The smaller of the two wins, and you have no visibility of theirs.

That is why the same file reaches a colleague on the same system and bounces off a client at a different company, and why "it worked last time" is not evidence of anything — last time may have gone to someone with a more generous mail server.

When a message bounces you usually get a delivery failure. When it is silently stripped or quarantined by a scanner in the middle, you may get nothing at all, and neither does the recipient. This is the worst outcome: the sender believes it was sent, the recipient never knew there was anything to receive.

Zipping barely helps

The instinct is to compress. It is worth understanding when that does and does not do anything.

Zip works by finding repetition. Text, spreadsheets, uncompressed images and most documents contain plenty and can shrink substantially. But video, photographs, audio and PDFs are already compressed — a zip of a 40 MB MP4 is about 40 MB. You have spent effort and the recipient now has an extra step for nothing.

Splitting an archive into parts is worse. It clears the size limit, then asks the recipient to receive several messages in order, save them into one folder, and know how to reassemble them. It is a reliable way to generate a phone call.

What actually works

Stop attaching and start linking. Upload the file once, send a URL, and the mail limits become irrelevant — a link is a few dozen characters.

The options in short:

  • Your provider's own suggestion. Gmail offering a Drive link, Outlook offering OneDrive, Apple's Mail Drop. Convenient, and fine when the recipient is inside the same world. Mail Drop expires after 30 days; the other two create a link that lives until you remember to revoke it.
  • A transfer link. Upload, get a URL, choose when it dies. Nothing for the recipient to sign into, which is what makes it work with people outside your organisation.
  • A shared folder, when the file is part of an ongoing working relationship rather than a hand-off.

The advantage of a link that expires is that the decision is made once, at the moment you send, instead of becoming a permanent share you were supposed to clean up later.

If you must use email

Sometimes the recipient's process genuinely requires an attachment. In that case:

  • Keep the real file under 15 MB to stay clear of both the encoding overhead and a stricter receiving server.
  • Export rather than compress: a PDF saved at screen resolution instead of print, an image resized to what will actually be looked at.
  • Send one file per message rather than five at once. Limits apply to the whole message.
  • Avoid archive formats where you can. Plenty of corporate filters quarantine .zip outright, and almost all of them quarantine .exe.

For everything else, a link is the answer. How to send large files compares every method properly, and you can send one here without an account — 100 MB, a private link back, gone on the day you pick.