Exchange 2013/2016 - Transport Storage Disk Space Sizing Tool

** Updated the tool with control for "Servers Failure Tolerance per DAG" to not exceed the number of MBX servers entered + added disk space required for OS disk assuming you install both Windows and Exchange on the same drive - usually C:\ **

All the information that led to that calculator come from the Ask the Perf Guy: Sizing Exchange 2013 Deployments article, not more, not less, and these calculations are also valid for Exchange 2016.

Disclaimer: this calculation formula/method gives an estimate of how much disk space on a worst case scenario can your mail.que database aka Transport Database grow to with the assumptions you take at inputs, and then enable you to allocate the adequate volume for your transport queue (mail.que database).

Challenge: I came up with this tool because as simple as it is to estimate the required disk space that will be necessary to host the transport database, many customers overlooked that part and then ended up with low disk space issues on their Exchange server resulting in one or more servers triggering their Back Pressure mechanism, and as a consequence refusing SMTP connections from other servers, and then message delivery slowing down or even stopping.

So how does it work? Most input metrics should be the same as for the Exchange Server Role Requirements Calculator ; maybe in a future version of that Exchange Server Role Requirements Calculator this Transport Queue database size estimate will be included, but in the meantime here's a separate calculator spreadsheet.

Nb mailboxes The number of mailboxes you're sizing for – should be the same as the number of mailboxes you put in the Exchange Server Role Requirements Calculator Note: if you have multiple Tiers, add the total number of mailboxes
Avg message size The average size of the message sent throughout your organization – should be the same as the value you put on the Exchange Server Role Requirements Calculator Note: if you have multiple Tiers, just calculate an average message size for all your tiers
Msg per day The total messages sent and received per day per user – again, should be the same as the value you put on the Exchange Server Role Requirements Calculator Note: again for multiple Tiers, just to an average of messages sent/received per mailbox per day
Max queue days tolerance This is how long you will tolerate a stuck queue, or the "Message Queue Expiration (Days) " in the Exchange Server Role Requirements CalculatorUusually with a proper monitoring solution, you should know within the hour or two that a queue is stuck and piling up messages – the Technet sample uses the default of the "Message Queeu Expiration (Days)" which is 2 days, which is more than enough in 99,99% of the situations – also take into account that Exchange 2013/2016 have the ability to be taken into maintenance mode, with which you can drain the queues and pass on the message flow responsibility to another HUB server in the organization (See this excellent article from my friend Nawaral here)
Safety net hold days This is where you set how long Exchange 2013/2016 must keep the message copies in its Safety Net, which is part of the mail.que Transport Database. Default is 2 days on a brand new Exchange 2013/2016 environment, but it can be 7 days if Exchange 2013/2016 is deployed in a mixed Exchange 2010 environment.See the details of the Safety Net in this Technical Article
Number of database copies This is how many database copies you have in your environment – should be the same as what you set on your Exchange Server Role Requirements Calculator around here:NOTE: the above screenshot shows 3 HA database copies (first line), PLUS 1 lagged copy (second line) – The "Number of database copies" of the Transport Database will then be "4" in this case.The last 2 lines are to specify how to distribute the HA (the real-time one) and the Lagged Database  copies across the primary site and secondary site in case you chose to have a site resilient environment.
Number of MBX Servers The number of Exchange server in your designed / sized solution.On the  Exchange Server Role Requirements Calculator, you'll find it here :Note:  multiply by 2 if you have a "site resilient" design as this is the number of Mailbox servers in the "Primary Datacenter" only...
Number of DAGs The number of DAG in your designed / sized solution.On the  Exchange Server Role Requirements Calculator, you'll find it here, just below the Number of Mailbox Servers Hosting Active Mailboxes / DAG (Primary Datacenter) field:
Severs Failure Tolerance per DAG In your design, how many servers can be down at the same time per DAG without affecting the users…Hint : use the "Distribution" tab in your Exchange Server Role Requirements Calculator, and click on each "Fail server" button until there are some "failed" databases – the number of servers that can fail without failing any databases are the "Servers Failure Tolerance" per DAG…


Quickly going through the "tool" appearance as it's quite simple:

  • You retrieve the table where you input your values described above, you can see as a result the "Per server Transport DB size" in the cylinder (supposed to represent a database)
  • You can see the sizing result, with the Transport DB Size (aka mail.que database), as well as an estimate of total minimal space recommended for your C:\ drive including Windows 2012/2016 type OS and Exchange 2013 / 2016 binaries + Exchange logs…
  • You see the "Sub-Calculations" part which you can expand clicking on the first "+" sign on the spreadsheet margin – it just shows the intermediate calculations just like the Technet article (Overall Transport DB Size)…

  • Finally I've taken some of the useful details including the links to the important TechNet articles detailing the general Exchange Sizing rule, and also the Technet article with the sample values for the Transport Database Storage calculations (that's to confirm the formula has been transposed the right way into the "tool")

Click here to go to the Download page on the TechNet Gallery