To find hidden mailboxes in Exchange Online, read every mailbox with Get-EXOMailbox and keep those where HiddenFromAddressListsEnabled is true. A hidden mailbox still receives mail: people just can't find it in the global address list or any other address list. Groups and contacts can be hidden too, and they are read with their own cmdlets.
| Method | Best fit |
|---|---|
| PowerShell | A CSV of every hidden mailbox in 1 tenant, with its type and sign-in name. |
| Admin centre | Checking whether 1 mailbox is hidden, such as a shared mailbox nobody can find. |
| Altivane | Recommended for regular address list reviews, with hidden mailboxes counted by type beside each mailbox's main settings. |
Before you start
Use an account in a role group that can read recipients, such as View-Only Organization Management, whose members can view the properties of any object in Exchange Online, or Recipient Management. The example uses the ExchangeOnlineManagement module and asks for no Microsoft Graph permission.
Know what hidden means. Microsoft says hiding a recipient keeps it out of every address list and the global address list, but doesn't stop it receiving mail. It can also stop an address book search finding it, such as voice recognition in a Teams auto attendant. The examples read and export; they hide or show no mailbox.
Option 1
Find hidden mailboxes with PowerShell
Install the module once, then connect and export the mailboxes hidden from address lists. The filter runs in Exchange Online, so only hidden mailboxes come back.
The CSV has 1 row per hidden mailbox, sorted by type. RecipientTypeDetails says whether it is a user, shared, room or equipment mailbox: a hidden user mailbox often belongs to someone who has left, and a hidden shared mailbox is one people can't look up. To narrow the export to 1 type, add -RecipientTypeDetails SharedMailbox to Get-EXOMailbox.
Find every hidden recipient
Reconnect with Connect-ExchangeOnline, then list every hidden recipient, groups and contacts included. The export above disconnects when it finishes.
Option 2
Check a mailbox in the admin centre
- Sign in to the Exchange admin centre for the correct tenant.
- Go to Recipients > Mailboxes, or Recipients > Resources for a room or equipment mailbox.
- Select the mailbox to open its details, then stay on the General tab.
- Read the Hide from global address list (GAL) section, which says whether the mailbox is hidden.
- Close the details without choosing Manage hide from GAL, so nothing changes.
This suits checking 1 mailbox, such as one a person says they can't find in Outlook. It does not suit a review of every mailbox, since each one opens on its own.
Option 3 ยท Recommended for regular address list reviews
Run Altivane's Mailbox Inventory report
- Open Altivane and choose the tenant.
- Run the Mailbox Inventory report for Exchange Online.
- Open the Excel workbook and read Mailbox inventory: filter the Hidden column for the hidden mailboxes, each with its Type, Sign-In Blocked, Licensed and Forwarding.
- Read Mailbox types for how many mailboxes of each type are hidden.
The report lists every mailbox with its main settings, so a hidden mailbox reads beside whether it is licensed, blocked from signing in, forwarding or on hold. Mailbox types counts the hidden mailboxes for each type and for all mailboxes. For hidden groups and contacts, the Distribution Groups, Dynamic Distribution Groups and Contacts and Mail Users reports each have a Hidden From Address Lists column.
Contact usCommon questions
Does a hidden mailbox still receive mail?
Yes. Hiding only keeps the mailbox out of address lists. Anyone who types its address can still send to it, so hiding is not a way to stop mail arriving.
Why is the filter in single quotation marks?
Microsoft says to put a filter that contains $true, $false or $null in single quotation marks, as the script does. In double quotation marks, PowerShell replaces $true with its own text before Exchange reads the filter.
Is a hidden user mailbox still needed?
A hidden user mailbox often belongs to someone who has left and is kept for its mail. To see which mailboxes have had no recent activity, see how to find unused mailboxes in Exchange Online.
Microsoft references
Technical references checked on 7 November 2026. The example scripts have been reviewed and syntax checked; they have not been run against a live tenant.