How to check the mailbox size in Microsoft 365
Last updated on:In this page
- How to check the Microsoft 365 mailbox size in the Microsoft 365 Admin Center
- How to check the Microsoft 365 mailbox size using Exchange Online PowerShell
- Microsoft 365 mailbox size reports in M365 Manager Plus
- Monitor your Exchange Online mailbox sizes and more
- Important tips
- Frequently asked questions
Do your Exchange Online users keep hitting their Microsoft 365 mailbox size limits? Once a mailbox reaches its quota in Microsoft 365, users cannot send or receive emails until space is cleared. For admins, this quickly turns into repeated administrative work with deleting, archiving, or increasing mailbox sizes after the disruption has already occurred.
By checking mailbox sizes regularly using the following methods, you can choose to increase mailbox size for Microsoft 365 users who need it, apply retention policies where needed, or enforce cleanup well before users hit their mailbox size limits and lose the ability to send mail.
- M365 admin center
- Graph PowerShell
- M365 Manager Plus
How to check the Microsoft 365 mailbox size in the Microsoft 365 Admin Center
Prerequisites
The Exchange Admin role is applied to the account you use to sign in to the Exchange Admin Center.
- Log in to the Microsoft 365 Admin Center with an account that has the Exchange Admin role.
- Navigate to Reports > Usage.
- Click Exchange and select the Mailbox usage tab.
- You can view the sizes consumed by your Microsoft 365 mailboxes and other relevant details such as mailbox quotas, archive status, and more.
How to check the Microsoft 365 mailbox size using Exchange Online PowerShell
Prerequisites
Before using Exchange Online PowerShell, please verify that:
- The ExchangeOnlineManagement PowerShell module is installed. If not, install it using this script:
Install-Module ExchangeOnlineManagement -Scope CurrentUser Update-Module ExchangeOnlineManagement - Connect to the Exchange Online module using this script:
Connect-ExchangeOnline
Using Get-MailboxStatistics to export a Microsoft 365 mailbox size report
The Get-MailboxStatistics cmdlet can be used in Exchange Online PowerShell to get detailed statistics of mailboxes, including their sizes, item counts, and last logon times. The syntax for retrieving mailbox sizes is given below:
Get-Mailbox -ResultSize Unlimited | ForEach-Object {
$s = Get-MailboxStatistics -Identity $_.Identity
[pscustomobject]@{
DisplayName = $_.DisplayName
TotalItemSize = $s.TotalItemSize
IssueWarningQuota = $_.IssueWarningQuota
ProhibitSendQuota = $_.ProhibitSendQuota
ProhibitSendReceiveQuota = $_.ProhibitSendReceiveQuota
ArchiveStatus = $_.ArchiveStatus
StorageLimitStatus = $s.StorageLimitStatus
LastLogonTime = $s.LastLogonTime
}
} | Sort-Object @{e={try{$_.TotalItemSize.Value.ToBytes()}catch{0}} -Descending} |
Export-Csv -Path "C:\Reports\MailboxSizes-$(Get-Date -Format yyyyMMdd-HHmmss).csv" -NoTypeInformation -Encoding UTF8
Supported parameters
The following table contains some parameters that can be used along with the cmdlet Get-MailboxStatistics to provide statistics on your Microsoft 365 mailboxes.
| Parameter | Description |
|---|---|
| DisplayName | The friendly name of the mailbox, shown in the admin center and address book |
| TotalItemSize | The consumed size of the mailbox (all folders, calendar, recoverable items, etc.) |
| IssueWarningQuota | The size threshold at which Exchange sends a warning email to the users and admin |
| ProhibitSendQuota | The size threshold at which the mailbox can no longer send emails (configurable by admins) |
| ProhibitSendReceiveQuota | The size threshold at which the mailbox can neither send |
| ArchiveStatus | Indicates whether the Online Archive mailbox is enabled (active) or not (none) |
| StorageLimitStatus | Shows the current quota state of the mailbox: BelowLimit |
| LastLogonTime | The most recent date and time the mailbox was accessed by the user or any client process |
An example use case for the Get-MailboxStatistics cmdlet
Scenario
An Exchange Online admin notices that some users are complaining about not being able to send or receive emails. The admin suspects this could be due to mailboxes nearing or exceeding their quotas.
This is the cmdlet you will have to run to generate a Microsoft 365 mailbox size report with all Exchange Online mailboxes and their mailbox size statistics.
Get-Mailbox -ResultSize Unlimited | ForEach-Object {
$s = Get-MailboxStatistics -Identity $_.Identity
[pscustomobject]@{
DisplayName = $_.DisplayName
TotalItemSize = $s.TotalItemSize
IssueWarningQuota = $_.IssueWarningQuota
ProhibitSendQuota = $_.ProhibitSendQuota
ProhibitSendReceiveQuota = $_.ProhibitSendReceiveQuota
ArchiveStatus = $_.ArchiveStatus
StorageLimitStatus = $s.StorageLimitStatus
LastLogonTime = $s.LastLogonTime
}
Microsoft 365 mailbox size reports in M365 Manager Plus
While native admin centers and Graph PowerShell scripting can give you the sizes of your Microsoft 365 mailboxes, filtering through the data in these methods can be a hassle, since you will have to apply these filters every time you run them to get the data that you need. This is where ManageEngine's M365 Manager Plus helps you simplify your Microsoft 365 administration.
M365 Manager Plus is a comprehensive administration and security solution for Microsoft 365. It is used for reporting on, managing, monitoring, auditing, and creating alerts for critical activities in your Microsoft 365 environments.
It simplifies this process by providing a single console where admins can view Microsoft 365 mailbox size reports, quotas, and usage trends at a glance. Instead of juggling scripts or exporting raw data for manual filtering, M365 Manager Plus gives you ready-to-use reports and easy scheduling. You can also drill down into the specific mailbox size details you need with built-in filtering options.
Steps to view Microsoft 365 mailbox size reports in M365 Manager Plus
- Log in to M365 Manager Plus and navigate to Reports > Mailbox Reports.
- Go to the Reports tab.
- Navigate to Exchange Online > Mailbox Reports in the left pane.
- Click the Mailbox Sizes report. You can view the details you get from the Get-MailboxStatistics cmdlet in this report, without the Graph PowerShell expertise.
Monitor your Exchange Online mailbox sizes and more
M365 Manager Plus’ mailbox size and quota management capabilities help you view, monitor, and control mailbox storage across your Microsoft 365 environment. It simplifies quota tracking, highlights usage trends, and provides proactive alerts; all through an intuitive web console without the need for complex Microsoft Graph PowerShell scripting.
Mailbox size reporting
Generate detailed Microsoft 365 mailbox size reports to track storage usage across all mailboxes, archive mailbox usage, and quota thresholds to help you stay ahead of storage limits.
Mailbox size quota management
Manage mailbox quotas efficiently by applying or updating storage policies in bulk. With M365 Manager Plus, you can assign quotas, retention settings, or archiving configurations to multiple mailboxes at once using CSV imports or the intuitive GUI, eliminating the need for repetitive, manual updates.
Archive and hold visibility
Track archive mailbox status, total size, and consumption trends alongside quota data. Gain a unified view of mailbox storage posture, including whether archives are active and if users are utilizing them effectively.
Real-time alerts on quota thresholds
Set up proactive alerts for mailboxes reaching or exceeding storage limits. Get notified before users encounter send or receive disruptions, enabling administrators to take timely action by expanding quotas or activating archives.
Eliminate PowerShell complexity
Run size and quota reports in one click instead of 20 or more manual checks with complex cmdlets like Get-Mailbox and Get-MailboxStatistics, reducing dependency on scripting and minimizing configuration errors.
Important tips
Verify that each user is assigned the correct Exchange Online license (Exchange Online Plan 1, Exchange Online Plan 2) that their mailbox needs. Exchange Online Plan 2 is recommended for heavy users as it provides mailbox archiving.
Review mailbox usage patterns periodically with scheduled audits. For inactive or rarely used mailboxes, degrade their licenses, archive them, or apply retention policies to optimize storage.
For rapidly growing mailboxes, activate the archive mailbox and configure auto-expanding archiving for Exchange Online Plan 2 licensed mailboxes. Auto-expanding archive activates after the 100GB limit is consumed.
Frequently asked questions
The default Microsoft 365 mailbox size limit depends on the license:
- Exchange Online Plan 1/Microsoft 365 E1: 50GB per mailbox.
- Exchange Online Plan 2/Microsoft 365 E3/E5: 100GB per mailbox, plus archive mailbox with unlimited, auto-expanding storage.
An archive mailbox provides additional storage beyond the primary mailbox quota. With eligible licenses (Microsoft 365 E3 or E5), you can also enable auto-expanding archiving, effectively giving unlimited space beyond the standard 100GB limit.
You can increase the size of Exchange Online mailboxes. You can also generate a Microsoft 365 mailbox size report using PowerShell or M365 Manager Plus to better plan license and quota upgrades.
The Microsoft 365 mailbox size limit defines how much storage a mailbox can consume before the send or receive restrictions apply. Retention policies, on the other hand, determine how long items are kept before deletion or archival. Both need to be planned together to manage storage and compliance effectively.
