Catch all mailbox is a mailbox which receives/catches all the mails sent to non-existent mailbox in an organization. It allows you to receive email sent to your domain that might be misaddressed or misspelled.Even mail sent to email addresses at your domain that don't exist mails will be delivered to catch all mailbox rather than having the email "bounced," or returned to the sender,

It can be helpful for the organizations comes up with legal requirement to receive all mails sent to organization irrespective of user mailbox existence. 


Not applicable for Hybrid, Co-Existence, Small business (as no mail-flow rules),

Not officially supported by Office365 Support, Test this in Lab before implementing into production.

Step 1: Create distribution group

  1. Create a Distribution Group, a Dynamic Distribution Group is recommended.
  2. Add all users as members (, 
  3. Select an option to Include "All Recipient Types"
  4. Create a Dedicated Mailbox to Catch emails, Which sent to non-existent mail address in Org (Here “Catchall” is Catch all mailbox)
  5. Set the DomainType to “InternalRelay” (Doing this will make the Rules to take precedence)
  6. ECP-> Mailflow -> AcceptedDomains -> Select Domain -> Change the type to InternalRelay

Step 2: Mailflow Transport Rule

Create a Mailflow Transport Rule as mentioned below:

  1. If the Sender "Outside the Organization"
  2. Redirect the message to
  3. Except if the recipient is member of (Distribution Group contains all members)
  4. Ensure to validate that new mailboxes are added into Dynamic Distribution Group


NDR's won't be generated,