Suped

What are the attachment and message size limits for different mailbox providers?

Matthew Whittaker profile picture
Matthew Whittaker
Co-founder & CTO, Suped
Published 30 Apr 2025
Updated 16 Aug 2025
5 min read
Understanding the maximum email attachment and message size limits is crucial for anyone sending emails, especially for businesses and marketers. If your emails exceed these limits, they risk being bounced, rejected, or sent to the spam folder, directly impacting your deliverability.
These limits are not uniform across all mailbox providers. Each provider, such as google.com logoGmail, microsoft.com logoOutlook, or yahoo.com logoYahoo Mail, sets its own maximum size for a single email. This often includes not just attachments, but the entire email message, including the body text and headers.

Understanding message versus attachment size

When we talk about email size limits, it's important to differentiate between the attachment size and the total message size. Mailbox providers typically enforce a limit on the total message size on the wire, which encompasses everything sent, not just the files you attach. This includes the email's headers, the body of the message (the text you type), and any attachments.
Attachments are usually encoded into the body of the email using methods like Base64. This encoding process adds overhead, increasing the file's original size by approximately 33-37%. So, a 20 MB file could become over 26 MB once encoded. This encoded size is what counts towards the overall message limit imposed by the receiving server. Understanding this encoding overhead is vital because a file that seems to fit within the limit might actually exceed it once converted for transmission.
Example of checking SMTP SIZE with SwaksBASH
$ swaks -q HELO --server gmail-smtp-in.l.google.com. === Trying gmail-smtp-in.l.google.com.:25... === Connected to gmail-smtp-in.l.google.com.. <- 220 mx.google.com ESMTP f12si15507385oti.279 - gsmtp -> EHLO pazu.wordtothewise.com <- 250-mx.google.com at your service, [104.225.223.158] <- 250-SIZE 157286400 <- 250-8BITMIME <- 250-STARTTLS <- 250-ENHANCEDSTATUSCODES <- 250-PIPELINING <- 250-CHUNKING <- 250 SMTPUTF8 -> QUIT <- 221 2.0.0 closing connection f12si15507385oti.279 - gsmtp === Connection closed with remote host.

What are the typical size limits?

The maximum size for email messages and attachments varies significantly among providers and can even depend on whether you are using a web client, desktop application, or mobile app. For most common consumer email services, the attachment limit is typically between 10 to 25 MB. This includes the total size of all attachments, not just a single file. Professional or enterprise accounts, like those for Microsoft 365 Exchange Online, often have higher limits, sometimes up to 150 MB, but these may still have lower effective limits depending on the client used (e.g., Outlook Web App or mobile).
Here's a general overview of typical limits for popular providers. It's always best to check the specific documentation for the most accurate and up-to-date information, as these can change without much notice.

Provider

Typical maximum message size (including attachments)

gmail.com logoGmail
25 MB
outlook.com logoOutlook (Outlook.com / Hotmail)
10-25 MB (per file attachment), 300 GB via OneDrive
mail.yahoo.com logoYahoo Mail
25 MB (per email)
icloud.com logoiCloud Mail
20 MB (standard), up to 5 GB with Mail Drop
Microsoft 365 (Exchange Online)
150 MB (default, adjustable up to 150 MB)

Variations in limits

Be aware that these limits can also vary based on the specific type of account (e.g., free vs. paid, personal vs. business) and even the version of the email client being used. Some older email clients or specific internet service providers may have lower limits than modern webmail interfaces.

Why exceeding limits matters for deliverability

Exceeding email size limits can have immediate and severe consequences for your email deliverability. The most common outcome is that your email will simply bounce back to you, often with a max message size exceeded error. This means your message never even reaches the recipient's inbox. In some cases, it might be accepted but then silently dropped or sent to spam, making it difficult to diagnose the problem without proper DMARC monitoring or email deliverability testing. Google, for instance, has specific error messages to indicate this issue.
Beyond immediate rejection, consistently sending oversized emails can negatively impact your sender reputation. Mailbox providers might view such behavior as suspicious or inefficient, potentially leading to your IP address or domain being added to a blocklist (or blacklist), even for smaller, legitimate emails. Large HTML emails can also suffer from "clipping," where the message is truncated in the recipient's inbox, requiring them to click to view the full content. This can reduce engagement and signal a poor user experience to ISPs, further affecting your email deliverability and sender reputation. The overall size of your HTML email, TLD, and attachments all play a role in how deliverability is affected.

Challenges with large emails

  1. Bounced messages: Emails exceeding size limits are often rejected outright by the receiving server, resulting in a bounce.
  2. Spam folder placement: Large or poorly optimized emails can trigger spam filters, leading to low inbox placement rates.
  3. Reduced engagement: Clipped emails or slow loading times due to large content can lead to recipients deleting messages without reading them.
  4. Sender reputation damage: Repeated issues with large emails can negatively impact your domain and IP reputation.

Solutions for optimal email size

  1. Link to cloud storage: Share large files via services like Google Drive, Dropbox, or OneDrive instead of attaching them directly.
  2. Compress files: Before attaching, compress documents or image folders into ZIP or other archive formats.
  3. Optimize images: Use web-optimized image formats and compress them to reduce file size without significant quality loss.
  4. Clean HTML: Ensure your email's HTML is clean and concise to minimize body size and prevent clipping.

Strategies for managing email size

To ensure your emails always reach their intended recipients, it's best to adopt strategies that minimize overall email size. For large files, rather than attaching them, upload them to a cloud storage service like Google Drive, Dropbox, or Microsoft OneDrive and include a shareable link in your email. This method not only bypasses attachment limits but also often provides better recipient experience with faster downloads and version control. If direct attachments are necessary, compress files into ZIP archives where possible to reduce their size.
For the email body itself, optimize images for the web, using appropriate formats and compression to reduce file size without significant quality degradation. Avoid embedding large images directly if they can be hosted externally. Also, keep your HTML code clean and efficient, removing unnecessary styling or excessive markup that can inflate message size and contribute to clipping issues in some email clients.

Optimizing email content for deliverability

  1. Prioritize text over heavy graphics: While visuals are good, balance them with concise, engaging text.
  2. Use external image hosting: Host images on a server and link them, rather than embedding them directly.
  3. Keep HTML clean: Minimize unnecessary code, inline styles, and excessive divs.
  4. Regular testing: Use an email deliverability tester to check how your email renders across clients and its effective size.

Views from the trenches

Best practices
Always link to cloud storage for files exceeding 1-2 MB, as this avoids bounces and improves load times.
Regularly audit your email templates to ensure no unnecessary code or oversized images are inflating message size.
Use responsive design principles that ensure optimal display and loading on various devices and email clients.
Common pitfalls
Sending a file that appears small but exceeds the encoded message size limit, leading to unexpected bounces.
Ignoring the impact of email body HTML bloat, which can cause clipping even without large attachments.
Assuming all mailbox providers have the same limits, resulting in deliverability issues for specific recipients.
Expert tips
The EHLO command response from an SMTP server reveals the precise maximum message size (SIZE) that the server will accept.
Base64 encoding, used for attachments, adds approximately 33% overhead to the original file size.
Consider segmenting your email content for large campaigns to avoid hitting size limits and improve engagement.
Expert view
Expert from Email Geeks says that understanding the 'message size on the wire' is key, not just the attachment size. The EHLO response from an SMTP server will show the exact byte limit they will accept.
2021-08-10 - Email Geeks
Marketer view
Marketer from Email Geeks says that attached files are encoded into the message body, which is subject to the overall message size limit. This encoding increases the size of the original file.
2021-08-10 - Email Geeks

Ensuring smooth email delivery

Navigating email attachment and message size limits is a critical aspect of ensuring successful email delivery. Overlooking these limits can lead to frustrating bounces, spam folder placements, and long-term damage to your sender reputation. While specific thresholds vary, the underlying principles remain constant across major mailbox providers.
By understanding that the total message size (including encoding overhead) is what truly matters, and by adopting best practices like linking to cloud storage and optimizing email content, you can significantly improve your email deliverability and ensure your messages always reach the inbox.

Frequently asked questions

DMARC monitoring

Start monitoring your DMARC reports today

Suped DMARC platform dashboard

What you'll get with Suped

Real-time DMARC report monitoring and analysis
Automated alerts for authentication failures
Clear recommendations to improve email deliverability
Protection against phishing and domain spoofing