Read time:8 minutes

Summary: Using a CSV file helps to quickly configure a mailbox migration. You can create the CSV file manually or download it from Exchange Admin Center (EAC). Then, create the batch migration of Exchange mailboxes using this CSV file. Alternatively, you can use an advanced Exchange Migrator tool for any type of Exchange Server migration with zero downtime.

Migrating user mailboxes is a routine task for the Exchange admin. They often create and run these migrations. To shorten the time needed to setup a new migration, Exchange Server provides a few options. One such option is creating a batch migration of Exchange mailboxes using CSV file. Users can create a CSV file with headers like mailbox name, type, target database, baditemlimit, etc.

By uploading a single file, admins can save a lot of manual effort. Be it a server update, creating a test environment, or shifting mailboxes after a company merger, the CSV file is helpful in all scenarios. I myself use it when I am doing different Exchange migrations, like:

  1. IMAP Migration
  2. Staged Migration
  3. Offboarding remote move migration
  4. Onboarding remote move migration

How to create a CSV file for bulk Exchange mailbox migration

You can use the Exchange Admin Center (EAC) to instantly generate a CSV file for your migration needs with these steps:

  1. Open Exchange admin center (EAC). Navigate to recipients > mailboxes, click more (…) and select Export data to a CSV file.Exchange admin center
  2. Select the data (given as column names) for the export and click export to continue.Select the data for the export
  3. A CSV file with all the mailboxes details is created and is saved in the Downloads location of the system. You can add or remove any mailbox from the list. The CSV file in notepad will be seen like this.add or remove any mailbox from the list

Avoid these common mistakes when saving the CSV file

  • Header Mismatch: Don’t change the EMAIL ADDRESS to just EMAIL. Do not change a single character in the header name.
  • Hidden Character: Some users open the CSV file in Excel and save it in CSV format with UTF-8 encoding. This can add a hidden character at the end of the CSV file and cause Exchange Server to fail to read the CSV file.
  • Extra Space: Make sure there are no trailing spaces between or after any value. A single space can make the CSV file unreliable to add users to the migration batch.

How to create a batch migration in Exchange Server using the CSV file

You can use the CSV file while setting up the Exchange Server mailbox migration batch, either using the EAC or the EMS.

Using CSV with EAC

Follow these steps to configure the bulk Exchange mailbox migration through EAC:

  1. Login into EAC, go to the migration tab, click + and select Move to a different database.click+and select Move to a different database
  2. In the new local mailbox move page, select Specify the users with a CSV file radio button. Click Choose File to add the CSV file you downloaded in the previous section.Choose File to add the CSV file
    Note: If you come across an error asking to add email address column, modify the CSV file as shown and try adding it again.add email address column, modify the CSV file
  3. Now, the CSV file is added, click on next to progress.CSV file is added
  4. Enter New migration batch name, select the required options, add the Target database and click next.Enter New migration batch name
  5. In Start the batch page, select the mailbox for receiving the migration report. Select the migration options and click new.Start the batch
  6. The mailbox synchronization gets started. After some time, the migration gets completed, displaying the Completed status.mailbox synchronization gets started

Using CSV with EMS

Even if you are using the EMS to create the migration batch, you can use the CSV file. A sample command that uses CSV file for bulk migration is:

New-MigrationBatch -Local -AutoStart -AutoComplete -Name “New-Mig-Batch-Name” -CSVData ([System.IO.File]::ReadAllBytes(“Complete-CSV-File-Path”)) -TargetDatabases “Database-Name” -BadItemLimit 10

Pro-Tip for bulk Exchange mailbox migration

Try these hacks to avoid any issues during the mailbox transfer:

  • Assign Permissions: Make sure you have the following permissions: Organization Management, Server Management, Recipient Management, and View-Only Management. You need these permissions to avoid errors while creating batch migration using CSV file.
  • Keep the Migration Batch Small: When you move 500 or more mailboxes, the Exchange Server will put most of them in a queue. This will increase the migration time. To avoid it, create migration batches of 100-200 users.
  • Increase EWS Throttling: Exchange Servers set a pre-defined throttling limit on operation like migration. You can temporarily increase the throttling limit to minimize the time need to move multiple user mailboxes.
  • Check Storage Space: If you are moving mailboxes of size 100 GB, make sure that the target database has 2 times the space available. In addition to mailbox data, logs are also generated during data move, and if storage is filled up by 90%, the server may stop the transfer.
  • Repair Corrupted Items: During the migration, if the number of damaged items is more than the bad item limit allowed, the migration will fail. So, if you know you have corrupted data, repair the EDB files before you begin the migration.

How are Admins moving mailboxes between Exchange Server Tenants in 2026

Manual methods are good for small-scale migration, but as the number of mailboxes increases, the migration becomes messy. Therefore, now admins prefer to rely on an automated Kernel Migrator for Exchange software. It helps to automate the complete migration and allows you to quickly create migration batches to avoid long migration queues.

Furthermore, the tool comes with a pre-migration analysis feature that helps to plan the migration efficiently and eliminate the risk of failures. This Exchange mailbox migration tool also provides the option to use CSV file for bulk mailbox migration to Office 365 or any version of On-Premises Exchange Server.

Conclusion

In large-scale migration, admins often create a batch migration of Exchange mailboxes using CSV file. This helps to avoid manually adding thousands of users individually. After creating the CSV, you can either use the EAC or the EMS to create and run the migration.

If you often have to move large mailboxes between Exchange Servers (On-Premises & Online), I recommend using the professional Exchange migration tool. It’s an all-in-one tool that allows migration and backup of Exchange On-Premises, Hosted Exchange, and Office 365.

Frequently Asked Questions

Q. Is there a limit on how many mailboxes I can add in the CSV file for Exchange migration?

Ans. Yes, as per Microsoft’s official documentation, the maximum number of mailboxes you can add in a single CSV file is 2000. However, it is recommended to only create a migration job with 100 – 200 users.

Q. How can I view an ongoing batch migration in Exchange?

Ans. You can view the migration using both EAC and EMS. In EAC, go to Recipient > Migration and select the batch you want to view. Or run this command in EMS: “Get-MigrationBatch”.

Q. Is it safe to delete a completed migration batch from EAC?

Ans. Yes, in fact, I always do it. After a migration is over, you can safely remove it from the migration list. It will not affect the mailboxes in the target or source database.

Kernel Migration for Exchange
Related Posts