I was recently asked to provide my recommendations for what to look for when you encounter an unfamiliar Exchange Server organization, for example when changing jobs to a new employer.

This is an exercise that I am currently going through myself, so this article will probably be updated over time as I think of new items to add. In fact, if you have any suggestions of your own please feel free to leave a comment below.

Exchange Environment Overview

One of the best ways I know to get a quick overview of an Exchange Server organization is to run Exchange MVP Steve Goodman’s Exchange Environment Report script.

Exchange Environment Report
Exchange Environment Report

A word of warning – the script runs fine for me in small to medium organizations, but I once ran it in an organization with about 100,000 mailboxes and the powershell.exe process consumed over 8Gb of memory on the system I was running the script from. So if you’re running this in a very large environment I recommend using an admin workstation or server for the task, not a production Exchange server.

Mailbox Size Report

I also like to dump out a list of all of the mailboxes in the organization. For this task I use my Get-MailboxReport.ps1 script, and then open the resulting CSV file in Excel and use filters and sorting to explore the data.

Usually I’m looking to get a sense of general mailbox sizes, possible VIPs, the number of stale or disabled accounts, and any exceptional items such as very large mailboxes (e.g. in an organization with an average mailbox size of 2Gb you may discover a few +50Gb mailboxes).

Message Size Limits

There are plenty of places within Exchange where size limits can be set, so I just take a look at a few of the important ones to begin with.

Organization message size limits:

[PS] C:\>Get-TransportConfig | Select-Object MaxReceiveSize,MaxSendSize | fl

MaxReceiveSize : 10 MB (10,485,760 bytes)
MaxSendSize    : 10 MB (10,485,760 bytes)

Send Connector message size limits:

[PS] C:\>Get-SendConnector | Select-Object Name,MaxMessageSize

Name                                                        MaxMessageSize
----                                                        --------------
EdgeSync - HeadOffice to Internet                           10 MB (10,485,760 bytes)
EdgeSync - Inbound to HeadOffice                            unlimited
exchangebootcamp.com                                        10 MB (10,485,760 bytes)
winserverpro.net                                            10 MB (10,485,760 bytes)
exchange2013demo.com                                        10 MB (10,485,760 bytes)

Receive Connector message size limits:

[PS] C:\>Get-ReceiveConnector | Select Server,Name,MaxMessageSize

Server        Name                  MaxMessageSize
------        ----                  --------------
BR-EX2010-MB  Default BR-EX2010-MB  10 MB (10,485,760 bytes)
BR-EX2010-MB  Client BR-EX2010-MB   10 MB (10,485,760 bytes)
HO-EX2010-MB2 Default HO-EX2010-MB2 10 MB (10,485,760 bytes)
HO-EX2010-MB2 Client HO-EX2010-MB2  10 MB (10,485,760 bytes)
HO-EX2010-MB1 Default HO-EX2010-MB1 10 MB (10,485,760 bytes)
HO-EX2010-MB1 Client HO-EX2010-MB1  10 MB (10,485,760 bytes)
HO-EX2007-MB1 Default HO-EX2007-MB1 10 MB (10,485,760 bytes)
HO-EX2007-MB1 Client HO-EX2007-MB1  10 MB (10,485,760 bytes)
HO-EX2010-MB1 Relay                 10 MB (10,485,760 bytes)

Storage Quotas

The mailbox storage quotas are interesting as well.

[PS] C:\>Get-MailboxDatabase -IncludePreExchange2010 | Select Name,ProhibitSend*,IssueWarning*

Name                          ProhibitSendReceiveQuota      ProhibitSendQuota             IssueWarningQuota
----                          ------------------------      -----------------             -----------------
MB-HO-01                      4.3 GB (4,617,090,048 bytes)  4 GB (4,294,967,296 bytes)    3.7 GB (3,972,845,568 bytes)
MB-HO-02                      4.3 GB (4,617,090,048 bytes)  4 GB (4,294,967,296 bytes)    3.7 GB (3,972,845,568 bytes)
MB-BR-01                      4.3 GB (4,617,090,048 bytes)  4 GB (4,294,967,296 bytes)    3.7 GB (3,972,845,568 bytes)
MB-HO-03                      4.3 GB (4,617,090,048 bytes)  4 GB (4,294,967,296 bytes)    3.7 GB (3,972,845,568 bytes)
Mailbox Database              2.3 GB (2,469,396,480 bytes)  2 GB (2,147,483,648 bytes)    1.899 GB (2,039,480,320 by...
MB-HO-Archive                 2.3 GB (2,469,396,480 bytes)  2 GB (2,147,483,648 bytes)    1.899 GB (2,039,480,320 by...

It is also worth having a look for any mailboxes without storage quotas.

Mail Routing Topology

I’ve already mentioned Send Connectors and Receive Connectors with regards to their message size limits. But is also pays to take a look in more detail, especially at Send Connectors, to determine what the mail flow in and out of the organization looks like. This will let you discover whether there are any non-Exchange systems involved, such an an on-premise smart host or a hosted anti-spam service.

You can also check your MX records using the tools at MXToolbox.

Exchange Database Backups

Whether you are also responsible for backups or someone else has that responsibility I always implement the Get-DailyBackupAlerts.ps1 script to check the Exchange databases each morning and alert me if any of the backups are not running for them.

Logging Configurations

I like to check the logging configurations to make sure that in the event of a problem with email delivery I the right logs available for troubleshooting:

Traffic Statistics

Speaking of good uses of log data, I also like to run a few Log Parser queries on the servers to get an idea of the typical email traffic running through the environment.

Additional Items

Here are a few other items I also take a quick look at:

  • Room and Equipment mailboxes
  • Public Folder usage
  • Client versions
  • Remote access methods (OWA, ActiveSync, Outlook Anywhere)
  • Applications or devices using Exchange for SMTP relay
  • DNS records (e.g. SMTP alias, public names for OWA etc)
  • SSL certificates, particularly expiry dates
  • Exchange Best Practices Analyzer report

About the Author

Paul Cunningham

Paul is a former Microsoft MVP for Office Apps and Services. He works as a consultant, writer, and trainer specializing in Office 365 and Exchange Server. Paul no longer writes for Practical365.com.


  1. Jerome Owens

    My report once i created a task for it sends the report half English half Chinese. The Chinese section is only the Active Archive Size, DB Size, and DB Whitespace sections. The report if I look at it on the server or pull the file into a network share and look on my local machine it shows fine. Only when it gets sent out by the task does it give me this issue. 2010 Exchange Environment, any suggestions?

    1. Avatar photo
      Paul Cunningham

      You’re referring to Steve’s script? I recommend posting your question on Steve’s blog as he probably won’t see it here.

  2. Jugal

    Hi Paul,

    i hope the mentioned script by Steve Goodman’s Exchange Environment Report script, is not altering anything , means while running the script in production environment things (config settings) are not getting change.

    1. Avatar photo
      Paul Cunningham

      You’re asking me to vouch for Steve’s script? Not easy for me to do, we all know those Brits are shady people 🙂

      PS – the script doesn’t modify anything. I recommend running it on an admin workstation that has the Exchange management tools installed, as it can consume quite a bit of memory if you’re in a large Exchange org (you can watch the powershell.exe process in Task Manager to see).

  3. Sean O’Leary

    The upgrade process essentially forces you to upgrade every time, since an upgrade from 2003 to 2013 isn’t possible.

  4. Carlos

    I want to upgrade a server exchange 2003 to 2013, is it possible, could you help me?


Leave a Reply