Understanding Message Size Limits in Exchange

Let’s talk about message size limits in Exchange—because if you’ve ever had a user complain that their “important client email bounced,” you know this isn’t just a checkbox in the Admin Center. It’s one of those settings that quietly causes chaos if you don’t get it right.

Why I Had to Dig Into This

I didn’t go looking for this topic. It found me—during a migration from Exchange 2013 to 2019, when a few users started hitting mysterious NDRs. Turned out, the default 10MB message size limit was quietly blocking large attachments. And no, it wasn’t just the attachments—the entire message size includes headers, body, and formatting bloat. That was a surprise.

How I Actually Set It Up

Not gonna lie, I started with the Exchange Admin Center (EAC) because it’s visual and quick. Here’s what I did:

  • Jumped into Recipients > Mailboxes
  • Picked the mailbox that was throwing errors
  • Hit Edit, then scrolled to Mailbox Features
  • Under Message Size Restrictions, I bumped both send and receive limits to 25MB (in KB, of course—so 25600)

But here’s the thing: that only solves part of the problem.

Most guides stop there, but I had to go deeper. Message size limits can also be set at the connector level, transport rules, and even on the mailbox database. So I switched to the Exchange Management Shell (EMS) to get full control.

Set-Mailbox user@domain.com -MaxSendSize 25MB -MaxReceiveSize 25MB

Then I checked the global transport settings:

Get-TransportConfig | fl MaxSendSize, MaxReceiveSize

If those are still at 10MB, your users will hit a wall no matter what you set on the mailbox.

Gotchas and Weird Behavior

One thing that tripped me up: the error messages users get aren’t always clear. Sometimes it’s a generic “message too large” bounce, other times it’s a silent fail. And if you’re syncing with Outlook.com or Gmail, their limits are different—20MB combined size, which includes MIME encoding overhead. That’s why a 17MB PDF might still bounce.

Also, attachments aren’t the only culprit. I once had a user paste a massive Excel table into the body of an email. It looked harmless, but the HTML formatting pushed the message size over the limit. Took me a while to figure that one out.

Lessons Learned

  • Always check transport limits, not just mailbox settings
  • Use EMS for bulk updates—it’s faster and more reliable
  • Warn users about embedded content, not just attachments
  • For large files, push them toward OneDrive or SharePoint links

Final Thoughts

Exchange doesn’t make this easy. The settings are scattered, and the error messages don’t always point you in the right direction. But once you understand the layers—mailbox, transport, connectors—you can avoid most of the pain.

Ever had a message bounce for no obvious reason? Or found a weird workaround that actually worked? Drop a comment or DM—I’d love to hear how others are handling this.

 

PShivkumar

PShivkumar

With over 12 years of experience in IT and multiple certifications from Microsoft, our creator brings deep expertise in Exchange Server, Exchange Online, Windows OS, Teams, SharePoint, and virtualization. Scenario‑first guidance shaped by real incidents and recoveries Clear, actionable breakdowns of complex Microsoft ecosystems Focus on practicality, reliability, and repeatable workflows Whether supporting Microsoft technologies—server, client, or cloud—his work blends precision with creativity, making complex concepts accessible, practical, and engaging for professionals across the IT spectrum.

View all posts →

Comments

📝 Leave a Comment