Microsoft has announced that Office 365 (Exchange Online) now supports up to 150MB email messages, quite a large increase from the previous limit of 25MB. Within Exchange Online you don’t get the level of control you had on Microsoft Exchange on-premise servers, where you could configure the size limits on Organisation Wide transport configuration, Send/receive connectors, AD site links or individual recipients.
We have a standard configuration setting for maximum email message size across all components of the email infrastructure to avoid confusion and unexpected behaviour.
Note that there was some “fun” in relation to this in August 2026: https://www.reddit.com/r/sysadmin/comments/1vybq8t/exo_new_mailboxes_provisioned_with_150_kb_and/, where these issues: EX1454589 and EX1454202 affected provisioning of new mailboxes during a window of time, existing mailboxes did not have their limts changed, the mechanisms at work are decsribed below.
Organisation Wide Transport Limit
Microsoft have configured this to Unlimited, and we can’t change this, in effect this means their maximum supported, i.e. 150MB. All other changes are to be made on the mailboxes themselves, and that is where Mailbox Plans come in.
PS U:\> Get-TransportConfig | fl maxreceivesize,maxsendsize
MaxReceiveSize : Unlimited
MaxSendSize : Unlimited
Mailbox Plan to Configure Default Email Maximum Message Size Limit
The settings configured on a Mailbox Plan are used when a new mailbox is created, its kind of like a template. We need to first ensure all of these are configured to our desired value first, so any new mailboxes will get this setting.
PS U:\> Get-MailboxPlan | fl name,maxsendsize,maxreceivesize,isdefault
Name : ExchangeOnline-bb0dc167-36ea-47e4-1234-3705f30c6d4d
MaxSendSize : 35 MB (36,700,160 bytes)
MaxReceiveSize : 36 MB (37,748,736 bytes)
IsDefault : False
Name : ExchangeOnlineDeskless-3a21d409-ab6e-2134-baec-0a1a0e93a608
MaxSendSize : 35 MB (36,700,160 bytes)
MaxReceiveSize : 36 MB (37,748,736 bytes)
IsDefault : False
Name : ExchangeOnlineEnterprise-cd77a389-95f8-1234-a2d4-aaa606ecff9a
MaxSendSize : 35 MB (36,700,160 bytes)
MaxReceiveSize : 36 MB (37,748,736 bytes)
IsDefault : True
Name : ExchangeOnlineEssentials-2ef83bda-7171-1234-a823-5fddc3b0ba7a
MaxSendSize : 35 MB (36,700,160 bytes)
MaxReceiveSize : 36 MB (37,748,736 bytes)
IsDefault : False
These are all set to 35MB, we don’t want that.
Configure Maximum Send and Receive Size Limit
So to update each of the Mailbox Plans to say 60MB, we would do the following:
Set-MailboxPlan ExchangeOnline-bb0dc167-36ea-47e4-1234-3705f30c6d4d -MaxSendSize 60MB -MaxReceiveSize 60MB
Set-MailboxPlan ExchangeOnlineDeskless-3a21d409-ab6e-1234-baec-0a1a0e93a608 -MaxSendSize 60MB -MaxReceiveSize 60MB
Set-MailboxPlan ExchangeOnlineEnterprise-cd77a389-95f8-43af-1234-aaa606ecff9a -MaxSendSize 60MB -MaxReceiveSize 60MB
Set-MailboxPlan ExchangeOnlineEssentials-2ef83bda-7171-4bd5-1234-5fddc3b0ba7a -MaxSendSize 60MB -MaxReceiveSize 60MB
Then check again with:
PS U:\> Get-MailboxPlan | fl name,maxsendsize,maxreceivesize,isdefault
Name : ExchangeOnline-bb0dc167-36ea-47e4-1234-3705f30c6d4d
MaxSendSize : 60 MB (62,914,560 bytes)
MaxReceiveSize : 60 MB (62,914,560 bytes)
IsDefault : False
Name : ExchangeOnlineDeskless-3a21d409-ab6e-45b9-1234-0a1a0e93a608
MaxSendSize : 60 MB (62,914,560 bytes)
MaxReceiveSize : 60 MB (62,914,560 bytes)
IsDefault : False
Name : ExchangeOnlineEnterprise-cd77a389-95f8-43af-1234-aaa606ecff9a
MaxSendSize : 60 MB (62,914,560 bytes)
MaxReceiveSize : 60 MB (62,914,560 bytes)
IsDefault : True
Name : ExchangeOnlineEssentials-2ef83bda-7171-4bd5-1234-5fddc3b0ba7a
MaxSendSize : 60 MB (62,914,560 bytes)
MaxReceiveSize : 60 MB (62,914,560 bytes)
IsDefault : False
Good job.
Update Exchange On-Premise Send Connector
The configuration for the on-premise Send Connector (going to M365) is just a case of updating the maximum value here:

You do not need to update the Microsoft Exchange Online end, infact you can’t, you do not have the authoritar, Microsoft control this.
Check and Remediate (if required) Existing Mailboxes
Although I’ve updated the mailbox plan above, existing mailboxes still have the previous settings applied. A change to the mailbox plan has no impact on existing mailboxes.
Check Individual Mailbox
To check an individual mailbox:
Get-Mailbox Bob.Smith | fl mailboxplan,maxsendsize,maxreceivesize
And we can see the below, it just so happens that because this is an existing mailbox, the settings change to the Mailbox Plan has not changed anything.
PS U:\> Get-mailbox "Bob Smith" | fl mailboxplan,maxsendsize,maxreceivesize
MailboxPlan : ExchangeOnlineEnterprise-cd77a389-95f8-43af-1234-aaa606ecff9a
MaxSendSize : 58.59 MB (61,440,000 bytes)
MaxReceiveSize : 58.59 MB (61,440,000 bytes)
Check All Mailboxes
Unless you are a mentalist, you’ll want this to be exported to a CSV. The below exports all the user mailboxes to a CSV with the settings. You may want to add some additional fields like username.
Get-Mailbox -ResultSize Unlimited | select Displayname,mailboxplan,maxsendsize,maxreceivesize | Export-Csv "C:\mailbox_report.csv" -NoTypeInformation
We can see some (user) mailboxes are indeed set to 35MB rather than the expected 58-60MB.
Note that the Discovery Mailbox does not have Mailbox Plan specified.
Remediate Individual Mailbox
So say to set the Bob Smith mailbox to 60MB, we can just run:
Set-Mailbox Bob Smith -MaxReceiveSize 60MB -MaxSendSize 60MB
And verify:
PS U:\> Get-mailbox "Bob Smith" | fl mailboxplan,maxsendsize,maxreceivesize
MailboxPlan : ExchangeOnline-bb0dc167-36ea-47e4-b38b-3705f30c6d4d
MaxSendSize : 60 MB (62,914,560 bytes)
MaxReceiveSize : 60 MB (62,914,560 bytes)
Remediate All Mailboxes
To set all the mailboxes to 60MB, you would do the following, notice in this case ensuring we are not updating the “Discovery Search Mailbox” that in our case was set to 100MB.
Get-Mailbox -Resultsize Unlimited | Where-Object {$_.DisplayName -ne "Discovery Search Mailbox"} | Set-Mailbox -MaxReceiveSize 60MB -MaxSendSize 60MB
Now verify the changes have been made as expected across all. You may want to add some additional fields like username.
Get-Mailbox -ResultSize Unlimited | select Displayname,mailboxplan,maxsendsize,maxreceivesize | Export-Csv "C:\mailbox_report.csv" -NoTypeInformation