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.
