How to migrate from Exchange 2003 directly to Exchange 2013 (video transcription)

If you’re tasked with upgrading your Exchange 2003 to the 2013 edition, and with moving your company’s mailboxes (email, calendars, tasks, contacts, journal and notes) and Public Folders to the new platform, you probably already know this cannot be done directly. Since coexistence between Exchange 2003 and Exchange 2013 is not supported, the only way to perform the migration natively is  by first conducting an interim migration to Exchange 2010 (or 2007) and then proceeding to migrate to Exchange 2013. This process is not only complex and time-consuming, it also requires you to deploy and configure additional hardware and software.

We’ve just published a video instruction on how to perform a direct mailbox cross-forest migration from Exchange 2003 to Exchange 2013 with or without trust relationships between primary domains, using CodeTwo Exchange Migration.

Video transcription

Hi! In this video I’m going to talk about migrating from Exchange 2003 to Exchange 2013. It’s going to be a straight migration – not a double hop migration.

As you may know there is no coexistence capability between Exchange 2003 and Exchange 2013. So if you wanted to do a transition between these platforms natively, you would have to perform a before-mentioned double hop migration to Exchange 2010 and then 2013, and do a bunch of pre-configuration tasks and install specific release updates as well.

To make it easier and faster I’m going to use CodeTwo Exchange Migration, the program that you can see right here, which allows to move mailboxes directly to Exchange 2013 via Exchange Web Service, no matter if you have trusts set up between the domains. It also allows to migrate to Exchange 2010 and SBS 2011 from other Exchange editions, no matter if this is a cross-forest, cross-domain or intra-domain migration. Migrating from Google Apps to Exchange is also supported.

I downloaded the product from and, as you can see, I installed it on a workstation. It can be any computer, a server or a workstation, that is in the source server Active Directory domain. In my case, this is a Windows 8 machine within Windows Server 2003 domain. I’m logged in as a domain admin and my account has an active mailbox that is not hidden from the Exchange addresses list. And my Exchange 2013 is located in a different Active Directory forest.

When I launch the program for the first time, a source server connection wizard pops up letting me choose the source environment. I’m gonna go ahead and choose Exchange Server.

The next step is pretty easy. Since I’m in the same domain as my Exchange 2003, all I have to do is use a mailbox with Domain Admins rights, which is my mailbox.

The last step is a final verification process. A MAPI profile is being created and my group membership is verified as well.

Clicking Finish will connect me to Exchange 2003 and list all mailboxes from all available Exchange databases. I can quickly recognize users by their email address or display names here.

Another step is choosing a target server, which in my case will be Exchange 2013. Another wizard pops up, and I can choose to connect using Autodiscover or configure the connection manually. Since this is a different forest and domain, I have to do this manually.

To find the server name of my target machine I need to use a PowerShell command on Exchange 2013 that will help me find the External URL of my server. This command is get-webservicesVirtualDirectory | FL.

And there it is. I can use this address or just an IP address of this server to configure the connection with the target server when I switch over to Windows 8 – that’s in 2003 domain.

The next step is way easier. I just need to enter a UPN address and password of my account on Exchange 2013. If I have trusts set up, I can use the Browse button to make it faster. If not, I can simply type it in.

And hitting next will get me to the last step, which is a checklist that helps me verify if everything has been set up correctly. I’m gonna go ahead and click Verify so that the program can go through the checklist. And if I don’t get 3 green ticks, I can use the Learn more options to read what has to be set up in my environment to fix it. If you have trusts set up, you can get some errors but still be able to perform a successful migration.

There are also some steps to consider with links to tips on how to create a throttling policy or change an EWS request size limit, which might come handy if I the connection with the target server, for some reason, cannot be established.

Clicking Finish should give me a list of mailboxes on the target server.

Keep in mind that this is the existing list of empty mailboxes on the target server that I will be migrating to, which means they had been created in this location before I ran CodeTwo Exchange Migration. So keep in mind that you would have to migrate your Active Directory domain prior to the migration process, and create and activate empty mailboxes for your users. Luckily Microsoft’s Active Directory Migration Tool will help you migrate the Active Directory pretty easily, and creating empty mailboxes can be done with one PowerShell script.

Also… this list wouldn’t be available if there was no trust between the domains. But don’t worry if you are not allowed to set up a trust between these domains, you can still migrate mailboxes by typing in their addresses here.

Ok. So.. I can now pick myself as a target mailboxes and hit OK.

This gives me a manual match and I can start migrating my mailbox even right now. As for the other mailboxes, I can match them manually one by one, but if I have dozens, hundreds or thousands of them, this wouldn’t make sense, so I can use the Automatch option. Let’s select all mailboxes and see what happens.

It gives me a quick overview of the automatched mailboxes, but I can also display a full report with details of the automatched mailboxes and the ones that don’t have their equivalents on the target server. This one has already been matched.

So now it’s all set and I can start the migration process. By default only two mailboxes can be migrated at a time, but you can quickly change it to a different number.

How long will your migration take? Well, it depends on the amount of data you have to copy, your network bandwidth, source and target server throttling and so on.

I hope this video will help you conduct a successful migration to Exchange 2013. Learn more on

Tools for Microsoft 365

5 thoughts on “How to migrate from Exchange 2003 directly to Exchange 2013 (video transcription)

  1. Hi Adam. I couldn’t think of a username. haha. Thanks for clarifying. Very clever program. For my immediate needs, I would prefer to keep the new Exchange 2013 Server in the source local domain.

    I have an engineer testing the Exchange to Office 365 tool as well. We are loving it! Keep up the great work.

  2. So what happens to the source domain in the end? The new 2013 Server ends up in another domain. Would most feel the goal would be to have the new 2013 Exchange Server in the source domain? Perhaps I’m missing something. ;)

Leave a Reply

Your email address will not be published.

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>