How to Migrate Public Folders from Exchange Server 2007 to 2013?

Summary: In this post, we’ve discussed the detailed procedure to migrate public folders from Exchange Server 2007 to 2013 by using Exchange native utilities. We have also mentioned an EDB converter tool that can help you migrate public folders in a few easy steps.

How to Migrate Public Folders from Exchange Server 2007 to 2013?

Migrating mailboxes from Exchange Server 2007 to a newer Exchange Server is a tedious operation. It can be a real struggle if you’re migrating public folders from Exchange Server 2007 to 2013. In Office 365, public folders are not used much as SharePoint and Groups are mostly used. In on-premises Exchange Server, public folders are used to hold information and other data. So, Exchange 2007 to 2013 public folder migration is crucial for certain custom apps and business processes. The other reason is that on-premises SharePoint deployment can be quite costly for small businesses.

Procedure to Migrate Public Folders from Exchange Server 2007 to 2013

There is an option to export public folders by using Outlook. However, it is not recommended as large PST files are not supported by Outlook and you need to somehow split the data. There is no continuity if the process is stopped or cancelled. It is a cumbersome process and would take a lot of time to complete.

To start Exchange 2007 to 2013 public folder migration, you need to make sure that the Exchange Server 2007 is fully compliant with your Exchange Server 2013. Although these two versions of Exchange Server can coexist, there are some requirements and assumptions that need to be taken into consideration. These are:

  • The server must be updated with the Update Rollup 10 for Exchange 2007 Service Pack 3 (SP3) on all Exchange 2007 servers in the organization, including Edge Transport servers.
  • The user who will be used for the migration has the roles of Organization Management and Recipient Management.
  • All the user mailboxes have been migrated and moved to the new Exchange Server 2013.
  • Removed spaces and special characters from names and aliases of the public folders prior to migration.
  • Expect downtime for the last steps of the migration.

Pre-Migration Steps for Exchange 2007 to 2013 Public Folder Migration

Important Note: Before you start the migration, take an ad-hoc backup so that you can failback in case something goes wrong during the migration.

You need to download the Public Folders Migration Scripts from the Microsoft Download site using the link:

public folder migration scripts

Save them in your Exchange Server.

Usually, I like to create a folder for scripts under the operating system drive and save all my scripts there. It is up to you where you want to save them.

Once you are ready, you can start off by preparing the migration.

From the Exchange Management Shell, run the following command to export the list of existing and non-existing folders so that these can be mapped to the Exchange 2013 Server.

Get-PublicFolder -Recurse | Export-CliXML C:\Scripts\structure.xml

Get Public Folder

This will be used during migration and for comparison post-migration.

Now you need to check and make sure that the public folders are not locked or in a migration by using the below command.

Get-OrganizationConfig | Format-List PublicFoldersLockedforMigration, PublicFolderMigrationComplete

Get Organization Config

If the command shows any as ‘True’, you need to use the same command but with the Set-OrganizationConfig to set them as False (as given below).

Set-OrganizationConfig -PublicFoldersLockedforMigration $false -PublicFolderMigrationComplete $false

This will confirm the public folders and their state on the Exchange Server 2007.

On the Exchange Server 2013, you need to perform the similar process. Before proceeding, you need to make sure that there are no migrations in progress as this would create an issue.

The below command will show if there are any pending public folder migration requests.

Get-PublicFolderMigrationRequest | Get-PublicFolderMigrationRequestStatistics -IncludeReport | Format-List

Get Public Folder Migration Request

If there are any, the below command will remove any pending requests.

Get-PublicFolderMigrationRequest | Remove-PublicFolderMigrationRequest

Remove Public Folder Migration Request

To start the migration, you need to export the folder statistics from your Exchange 2007 Server using the Export-PublicFolderStatistics.ps1, which will generate the CSV file.

Export Public Folder Statistics

Next, you need to run the PublicFolderToMailboxMapGenerator.ps1 you downloaded on the Exchange Server 2013 with the statistics you exported from the Exchange Sever 2007.

Public Folder To Mailbox Map Generator

The MailboxSize (in bytes) is the maximum size you want to set for the new public folders in the Exchange Server 2013.

The Create-PublicFolderMailboxesForMigration.ps1 will create the destination public folders on the Exchange Server 2013, according to the files exported from the Exchange Server 2007.

Create Public Folder Mailboxes For Migration

This will create all the public folders on the Exchange Server 2013 that you exported from the Exchange Server 2007.

Exchange 2007 to 2013 Public Folder Migration Processes

To start the migration process, you need to create the migration batch by using the following command:

New-MigrationBatch -Name <Name of migration> -SourcePublicFolderDatabase (Get-PublicFolderDatabase -Server <DestinationServer>) -CSVData (Get-Content <MapGeneratedFile> -Encoding Byte)

New Migration Batch

Once this is created, you can start the migration by using the command below:

Start-MigrationBatch <Name of migration batch>

Start Migration Batch

Once the migration is complete and the public folders are marked as ‘Synced’ in the migration section in the Exchange Server 2013 Admin Center, you can lock the public folders on your Exchange 2007 server by using the below commands. This is to make sure that no changes are done by the users.

Set-OrganizationConfig -PublicFoldersLockedForMigration:$true
Set-OrganizationConfig -PublicFolderMigrationComplete:$true

Set Organization Config

The final step in the migration process is to run the below command on the Exchange Server 2013.

Set-OrganizationConfig -PublicFoldersEnabled Remote

Public Folders Enabled Remote


As you can see from the above procedure, migrating public folders from Exchange Server 2007 to 2013 using the scripts is a bit messy and takes a considerate amount of time. On the other, both servers must be in top condition and no issues are present. Also, the public folder databases must be in a mounted state.

An easier and faster way to migrate public folders from Exchange Server 2007 to Exchange Server 2013 is by using Stellar Converter for EDB. This application can easily open any EDB file of any Exchange Server version and export the EDB data to PST or directly to another Exchange Server version in a few simple steps.

Leave a Reply

Your email address will not be published. Required fields are marked *

Time limit is exhausted. Please reload CAPTCHA.