The short answer
Gmail, Yahoo Mail, Proton Mail and Outlook.com let you attach up to 25 MB per email. iCloud Mail and the classic Outlook desktop app allow 20 MB. Attachments grow by about a third when they're sent, so files over about 15 MB often fail anyway.
For anything bigger, send a link instead of an attachment. VeilShare does it for free with files up to 3 GB, encrypted in your browser, with no account needed.
Email attachment size limits by provider
These limits apply to the whole email. Attachments are added together, so three 10 MB photos count as 30 MB, and the text of your email counts too.
| Provider | Limit per email | When a file is too big |
|---|---|---|
| Gmail | 25 MB | Swaps the file for a Google Drive link |
| Gmail for work or school | Set by your admin | Swaps the file for a Google Drive link |
| Outlook.com | 25 MB | Lets you share it from OneDrive, up to 2 GB |
| Classic Outlook app with Outlook.com, Gmail or other personal accounts | 20 MB | Shows the error "The file you're attaching is bigger than the server allows" |
| Microsoft 365 work or school | 35 MB by default, up to 150 MB if your admin raises it | Lets you share it from OneDrive, up to 2 GB |
| Yahoo Mail | 25 MB, sending and receiving | Send a link instead |
| iCloud Mail | 20 MB, sending and receiving | Mail Drop, up to 5 GB for 30 days |
| Proton Mail | 25 MB sending, 50 MB receiving | Lets you share it from Proton Drive |
Microsoft has three different limits depending on which Outlook you use, which is why you'll find different numbers online. If you're not sure, assume 20 MB.
Your recipient's limit counts too
Your email has to fit within the limit at both ends. An email your provider accepts can still bounce if it's too big for the recipient's provider, like a 22 MB attachment sent from Gmail to an iCloud address, which only accepts 20 MB.
Why a file under the limit still won't send
Email was designed for plain text, so attachments are converted into text before they're sent, using an encoding called Base64. Base64 turns every 3 bytes of your file into 4 characters, which makes the attachment about 33% bigger. Microsoft's own documentation for Microsoft 365 mentions the same 33% encoding increase.
Mail servers measure the email after it's been encoded. So a 20 MB file becomes an email of roughly 27 MB, which is over a 25 MB limit, even though the file itself was under it. As a rule of thumb, the largest file you can reliably send is:
- 20 MB limit (iCloud Mail, classic Outlook): about 14 MB
- 25 MB limit (Gmail, Outlook.com, Yahoo Mail, Proton Mail): about 18 MB
- 35 MB limit (Microsoft 365): about 25 MB
Your message, signature and any images in it take up space too, so leave a little room.
How to send a file that's too large to email
There are four ways around the limit. Sending a link is the only one that works for any size of file, which is why the big email providers now do it for you when a file is too big.
1. Send a download link instead
Upload the file somewhere, then paste a link to it into your email. Your recipient clicks the link and downloads the original file in full quality. The email itself stays tiny, so it won't bounce.
With VeilShare it takes a minute, and neither of you needs an account:
- Drop your file, or a whole folder, onto the upload box on our homepage.
- Choose how long the link should work: 6, 24, 48 or 72 hours. You can also add a password or a download limit.
- Click the upload button, then copy the link and paste it into your email.
You can send up to 3 GB for free. Your file is encrypted in your browser before it's uploaded, and the key is in the part of the link after the #, which is never sent to our servers. So unlike most file sharing services, we can't open what you send. When the link expires, the file is permanently deleted within an hour.
2. Use the cloud link built into your email
Most email apps will upload a large file for you and insert a link:
- Gmail puts files over 25 MB in your Google Drive and adds a link. They count toward your 15 GB of free Google storage, and Gmail may ask you to change the sharing settings so your recipient can open them.
- Outlook.com and Microsoft 365 share the file from OneDrive, up to 2 GB.
- iCloud Mail offers Mail Drop for files up to 5 GB. Your recipient has 30 days to download them.
- Proton Mail lets you share large files from Proton Drive.
These are handy if you already use them. The catch is that the file sits in your cloud storage until you remember to delete it, and Google Drive and OneDrive aren't end-to-end encrypted, so Google and Microsoft can access what you share. Our VeilShare vs Google Drive comparison goes into more detail.
3. Zip it
Compressing a file into a ZIP works well for documents, spreadsheets and presentations, which can shrink a lot. It barely helps with photos, videos, PDFs or other ZIP files, because they're compressed already.
On Windows 11, right-click the file and choose Compress to › ZIP File. On Windows 10, choose Send to › Compressed (zipped) folder. On a Mac, right-click and choose Compress.
Videos are different: the only way to make one much smaller is to lower its resolution or quality, which your recipient will notice. A link sends the original.
4. Split it into parts
Apps like 7-Zip can split a large file into parts small enough to attach, one per email. It works, but your recipient needs every email and a compatible app to put the file back together, so only do this if links aren't an option.
Which option should you use?
- Under about 15 MB: attach it as normal.
- Documents a little over the limit: zip them, then attach the ZIP.
- Photos, videos and anything larger: send a download link.
- Private or sensitive files: send an end-to-end encrypted link with an expiry time.
- Lots of files or a whole folder: send one link to the folder instead of a pile of attachments.
Is it safe to send files as a link?
A link is only as private as the service behind it. With most services, anyone who gets hold of the link can open the file, and the service itself can read it on its servers. To keep a shared file private:
- Use a service with end-to-end encryption, so the file can only be decrypted by someone with the link, not by the service.
- Set the link to expire, so it doesn't work forever.
- Add a password and send it separately, for example by text message, so a forwarded email isn't enough to open the file.
- For one-off transfers, limit the link to one download.
Sending something sensitive, like a passport or a bank statement? Read our guide on whether it's safe to email your passport or ID.
Frequently asked questions
Sources
- Gmail Help: Attachment size limits
- Microsoft Support: Sending limits in Outlook.com
- Microsoft Learn: Attachment size exceeds the allowable limit error
- Microsoft Learn: Exchange Online limits
- Yahoo Help: Attachment size limit
- Apple Support: Mailbox size and message sending limits in iCloud
- Apple Support: Mail Drop limits
- Proton Support: Attachment and email size limits
- RFC 2045: MIME and Base64 encoding
Send a large file in seconds
Up to 3 GB for free, no account needed. Your file is encrypted in your browser, so we can't see what you send.
Share a file