Update: This post was updated on October 8th, 2021 due to new archiving restrictions
Microsoft 365 (or more specifically Exchange Online) has certain size limits for mailboxes. These limits depend on two variables: the subscription plan assigned to the mailbox and the mailbox type. This article shows what the maximum mailbox size is, how to increase mailbox size, how to check current mailbox usage for all mailboxes, and what to do to prevent mailboxes from reaching their size limit. You may find it useful if you plan to migrate from an on-premises Exchange Server to Microsoft 365.
Maximum mailbox size in Microsoft 365
The maximum mailbox size for most mailboxes is 50GB. However, there are some exceptions:
- The user mailbox size limit can be increased up to 100 GB when assigned a Microsoft 365 E3 or E5 (Exchange Online Plan 2) license. An F3 (Kiosk) license includes only 2GB of storage and does not provision archive mailboxes.
- Public folder mailboxes (in all subscription plans) have a limit of 100 GB.
- Shared mailboxes do not require a license and have the default size limit of 50GB. However, if they are assigned an E3 or E5 license, they can store up to 100GB of data.
- The storage space of user and shared mailboxes can be expanded with an archive mailbox (In-Place Archive). Once the archiving feature is enabled, each mailbox is assigned an archive mailbox separately. By default, an archive mailbox has the storage limit of 50 GB, but thanks to an Exchange Online Plan 2 license or an Exchange Online Plan 1 license with an Exchange Online archiving option, there is an opportunity to have nearly unlimited (auto-expanding) archiving storage space*. To enable archiving for a shared mailbox, one of the license types mentioned must be assigned.
* As of November 1, 2021, Microsoft introduces limits for auto-expanding archives: maximum total size of 1.5 TB and maximum growth rate of 1 GB per day. The word unlimited is now removed from their documentation. This information is based on MC288051 from the Microsoft 365 Message Center. It’s still plenty of room considering it’s reserved for a single user. It is not allowed to use journaling, transport rules or automatic forwarding for backup or archiving purposes of other mailboxes.
Increase mailbox size in Microsoft 365
There are two ways to increase the maximum mailbox size for a user:
- Assign an Exchange Online Plan 2 license to the mailbox. This increases the mailbox storage limit from 50 GB to 100 GB.
- Enable Exchange Online archiving. Depending on your Microsoft 365 license, this gives you either an additional 50 GB of storage space or almost unlimited storage space with the auto-expanding archiving feature.
Increasing the maximum quota isn’t the only way to free up more storage space in mailboxes. It’s like your standard hard drives – you can either buy a new, larger one or free up some of the used space. Exchange Online allows you to use retention policies to either automatically retain or delete data based on criteria you specify.
There are also 3approx Third-party backup and archiving tools, such as CodeTwo Backup for Office 365, that allow you to reduce the amount of data stored in the cloud. This allows you to maintain data discoverability while preventing mailboxes from becoming overwhelmed.
Archiving in Microsoft 365
Archive mailboxes are attached to other mailboxes. Data stored in an archive mailbox is user accessible and searchable. In order for users to access the shared mailbox’s In-Place Archive, they must be assigned explicit FullAccess permissions to the shared mailbox. All archived data can also be found using eDiscovery. It’s important to know that mailbox items from the primary mailbox don’t automatically flow to the archives.
There are two ways to move such items to the archive mailbox – either by setting up an archiving policy or by manually moving the items. An archive policy is a type of retention policy. Retention policies can be set according to your organization’s needs to control your data. Mailbox items are assigned specific retention tags, after which the oldest items are automatically moved to archive mailboxes or deleted.
As you probably know, litigation holds and retention policies allow your organization to access data even after it’s deleted from user or shared mailboxes. For example, emails deleted from the Deleted Items folder are moved to the Recoverable Items folder, which has its own quota. The Recoverable Items folder doesn’t count against primary mailbox limits.
Read more about retention policies and litigation holds
What is unlimited archiving?
As of November 1, 2021, unlimited archiving in Microsoft 365 is no longer available. Now the feature only has its second name: automatically expanding archiving. Currently, the limits for an auto-expanding archive are as follows:
- 1.5 TB total size,
- 1 GB maximum daily growth rate.
While these numbers are far from “unlimited,” it’s a large quota for a single user. The second limit is probably to prevent the use of journaling and auto-forwarding, since archiving is intended only for that user. When a mailbox approaches the maximum archiving limit, you must either delete some of its contents or use a third-party archiving solution. Auto-expanding archiving is available for mailboxes using Exchange Online Plan 2 or Exchange Online Plan 1 with an Exchange Online Archiving add-on license. It needs to be activated, just like standard archive mailboxes. Although this option offers users archives with a generous size limit, it doesn’t mean they should stop cleaning their mailboxes. 1.5TB of storage sounds fun until a user needs to find a specific email.
How to check mailbox size in Microsoft 365
Now, of course, you can use the Exchange admin center to check a specific person’s mailbox usage:
However, if you want to check the mailbox size for all mailboxes (including shared mailboxes and resource mailboxes), it’s much easier to use PowerShell:
First, connect to Exchange Online using PowerShell.
You can then download the current mailbox data into a variable using the following cmdlet:
$exomailboxsize = (Get-EXOMailbox | Get-EXOMailboxStatistics)
You can then sort the mailboxes by their size, for example:
$exomailboxsize | select DisplayName, TotalItemSize | sort -Property TotalItemSize -Descending
And when mailboxes are approaching their maximum size, you can take a few steps to expand their borders or free up part of the space.
Enable archive mailboxes
You can enable archive mailboxes from the Exchange admin center:
Or via PowerShell.
Use the following cmdlet to enable the archive mailbox for a specific user or a shared mailbox:
Enable-Mailbox -Identity mailbox -Archive
You can easily check which mailboxes already have archiving enabled using:
Get-Mailbox -Archive
And to enable auto-expanding archiving use the following command:
Enable-Mailbox -Identity user -AutoExpandingArchive