There are several ways how we can create email address policies for an Organization. In the companies where I consult, I have noticed, that one of the common ways, is not that much known, how it should be. That is the reason, why I want to write this article about creating E-Mail address policies by using recipient filters.


To explain EMS it is always the easiest way, to use an example scenario. So let us have a look about our company called: Contoso.

Contoso is a company from the Chur city, with several departments. For company reasons, the departments of Contoso needs different E-Mail addresses.

In our case Contoso is a large company, departments are responsible for independent themes worldwide. The “power” department in Zurich is responsible for electricity, the “fintop” department in Bern for accounting and the focus of the head office is the Brand and the administration.

Contoso is using one Active Directory and one Exchange organization. However, for each department we have to create a specific E-Mail address policy.

To do that, we will use PowerShell.

First thing, we have to think about in our case are the additional Accepted Domains we have to use.

How we need to handle them in a Hybrid Exchange case, you can read HERE.  On the Exchange Server we need the new Domains first as Accepted Domains. In this example case, we run the following commands:

New-AcceptedDomain –Name ‘POWER’ –DomainName ‘’ –DomainType Authoritative
New-AcceptedDomain –Name ‘FINTOP’ –DomainName ‘’ –DomainType Authoritative


Now we are able, to create our E-Mail address policies using the New-EmailAddressPolicy command. We start with POWER Domain:

New-EmailAddressPolicy –Name ‘POWER’ –EnableEmailAddressTemplates ‘SMTP: %g.%[email protected]’ –RecipientFilter {(Office –eq ‘Zurich’)}


The same we do for the other Department

New-EmailAddressPolicy –Name ‘FINTOP’ –EnableEmailAddressTemplates ‘SMTP: %g.%[email protected]’ –RecipientFilter {(Office –eq ‘Zurich’)}


For all other Users, which are working in the head Office of Contoso in Chur, we also create a similar policy, The only difference here is, that we want to do that only for User Mailboxes:

New-EmailAddressPolicy –Name ‘POWER’ –EnableEmailAddressTemplates ‘SMTP: %g.%[email protected]’ –RecipientFilter {(Office –eq ‘Chur’) –and (RecipientType –eq ‘UserMailbox’)}


Now we have created our policies we need. This is of course just one example, how we can do that. However, by understanding the way we have to do it, we are able to create future policies with other variables as they are for example:

Title:  (Title –like ‘executive’)


To control if our policies are working correctly, we can test by a User, from which we know the Department by using the following command:

Get-Recipient ‘Desmond Miles’ | FL Office, Emailaddresses


At the end a short table about the options we have to create E-Mail address policies:

Example Exchange Management Shell equivalent
<alias> %[email protected]
[email protected] %g.%[email protected]
[email protected] %1g%[email protected]
[email protected] %g%[email protected]
[email protected] %s.%[email protected]
[email protected] %1s%[email protected]
[email protected] %s%[email protected]