Exchange 2010 quota warning messages issue

This post is also available in: Polish


In Microsoft Exchange 2010 environments, Exchange sends a quota message to mailbox owners when mailbox size exceeds:

  • IssueWarningQuota – the lowest storage quota
  • ProhibitSendQuota – the middle storage quota
  • ProhibitSendReceiveQuota – the highest storage quota


All Quotas limits can be configured at mailbox or database level.

We can define time when messages are sent by specifying QuotaNotificationSchedule for Mailbox Database.


If we want to check QuotaNotificationSchedule use:

Get-MailboxDatabase | select name, QuotaNotificationSchedule

to define QuotaNotificationSchedule to check every mailbox in Mailbox Databases every day from 2AM to 4AM use:

Get-MailboxDatabase | Set-MailboxDatabase -QuotaNotificationSchedule “Mon.02:00-Mon.04:00, Tue.02:00-Tue.04:00, Wed.02:00-Wed.04:00, Thu.02:00-Thu.04:00, Fri.02:00-Fri.04:00, Sat.02:00-Sat.04:00, Sun.02:00-Sun.04:00”


During this period, Exchange will check every mailbox in the Mailbox Databases and if any has exceeded the quota limit it sends the owner an email.

Unfortunately Exchange 2010 has changed normal behavior for sending quota alerts.

Now every mailbox in Exchange 2010 SP1 has a flag that controls whether it’s checked to see if it has exceed a quota threshold.


The worst is, that this flag is only set if the mailbox size is more than 50% of ProhibitSendQuota limit.


So if you set only IssueWarningQuota without setting ProhibitSendQuota you will never receive IssueWarningQuota message, and also if mailbox size is below 50% of ProhibitSendQuota you will never receive warning message !!!



If you have mailbox that only receives emails without sending any emails, you will never receive the warning message about quota threshold.

If your mailbox has size 200MB and this mailbox has IssueWarningQuota set to 150MB and ProhibitSendQuota to 500MB. Then mailbox is over it’s warning quota limit but because 200MB (mailbox size) isn’t over 50% of the ProhibitSendQuota (250MB), mailbox will not be checked and you will not receive warning message !


If you want to check which mailboxes are over quota limit or received a quota message you can use this commands;

to check mailbox statistics:

Get-MailboxStatistics -Database DB01 | ? {$_.StorageLimitStatus -eq "IssueWarning" -OR $_.StorageLimitStatus -eq "ProhibitSend" -OR $_.StorageLimitStatus -eq "ProhibitSendReceive"} | Select DisplayName, Alias, StorageLimitStatus


or to check who received a quota message:

Get-TransportServer | Get-MessageTrackingLog -ResultSize Unlimited -Start "08/09/2012" -MessageSubject "your mailbox is" –EventID DELIVER | Select TimeStamp, Recipients, MessageSubject



  • every mailbox has a flag which is set when mailbox quota is checked
  • users will never receive quota messages if ProhibitSendQuota limit is not used
  • this flag is set only if mailbox size is more than 50% of the ProhibitSendQuota limit
  • mailbox owner will receive quota message during QuotaNotificationSchedule if mailbox flag is set


Print Friendly
Tagged , , , . Bookmark the permalink.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>