Magento 2 data migration tool: Pros, cons and steps to use it successful

Magento is continually changing, with more and more robust versions being released. Due to the termination of Magento 1, an influx of online retailers migrates to Magento 2 to stay ahead of the competition with a diverse collection of innovative features.

Therefore, the demand for shopping cart data migration from Magento 1 to Magento 2 is at an all-time high. Thus, there is a lot of article about “what is the best way to migrate Magento 1 to Magento 2?”, among various instructions floating all over the Internet,

To answer this question, this title will first present “What is the Magento 2 data migration tool”, after that is the Pros and Cons of the Magento 2 Data Migration Tool. Moreover, we also show “Why Should You Migrate From Magento 1 To Magento 2?”. Finally, provide you with detailed instructions on “How to use it?”.

Let’s get started!

Magento data migration

I. What is the Magento 2 data migration tool

Firstly, Magento 2 Data Migration Tool is a Magento feature that allows Magento 1.x merchants to migrate their store to the new Magento 2.x version.

Since Magento announced Magento 1 end of life in June 2020, you need to upgrade from Magento 1 to Magento 2 as soon as possible to avoid negative consequences for your organization.

II. Pros and Cons of Magento 2 Data Migration Tool

However, few people are aware of the advantages that Magento 2 provides and what should be considered while migrating to Magento 2, as well as the hazards involved with Magento data migration. If you’re one of them, or even if you haven’t considered migrating yet, it’s never a bad idea to be prepared for what’s to come.

Now, we would like to show you about “Pros and Cons of Magento Data Migration Tool.”

Magento 2 migrate

1. Pros

1.1. It’s free

At first, It is available for download and installation at no cost. You will not be charged anything regardless of the amount of data you have to migrate.

1.2. Magento’s documentation and instructions

In addition, Magento’s documentation and instructions are extremely detail. Throughout the migration process, you can refer to Magento’s extensive step-by-step instructions.

1.3. Migrate the newly added data in your source cart to the target cart

Furthermore, after the first migration using Magento Delta Migration, the tool allows you to migrate the freshly added data in your source cart to the target cart. However, it’s worth noting that in Delta mode, the Data Migration Tool only migrates data created by Magento’s modules, and it’s not liable for third-party code or extensions.

2. Cons

2. 1. Downtime on your Source Store

At first, switch to the new site after the data update, you must put your Magento 1 system into maintenance mode. As a result, your store will go through a period of downtime.

2.2. No official support

Magento does not provide any support personnel other than the documentation. As a result, users are solely responsible for the success or failure of their migrations. Although users may request assistance from the Magento community, they just receive unofficial answers from other users.

2.3. Require highly technical knowledge from users

Additionally, the procedure is incredibly intricate, which might result in a slew of problems that prevent your transfer from taking place or result in data loss. Some of these errors are:

  • Exception printing: It’s a common error. This issue might occur when installing a Magento 2 theme or module.
  • Data loss: After the migration is complete, because product photos do not appear in the target shop, they must be dropped off along the way.

Indeed, the two issues mentioned above are only a handful of the many that you will almost certainly encounter if you utilize the Magento Data Migration Tool. As a result, you must back up your data first, identify the errors and get them fixed. This procedure may be both time and resource-intensive.

2.4. Manually migrate

Another drawback is that you must manually migrate these 4 sorts of data using this tool: Media, Storefront design, Admin user accounts, and Access control lists.

2.5. No migrate shopping cart from Magento 1 to Magento 2

Last but not least, keep in mind that migration from other shopping carts to Magento is not supported by this Magento Data Migration Tool.

In this instance, Contact ArrowHitech for assistance.

III. Why Should You Migrate From Magento 1 To Magento 2?

Magento 2 is generally more improved and adapted than Magento 1, all in speed, designs, and platform functions.

Why Magento 2? - migrate magento

1. Improve in performance

The structure of Magento 2 websites has been improved, making them 2 times faster on all devices than Magento 1.

2. Better UI designs

Furthermore, Magento 2 is built with a Web Responsive Design that connects PCs, tablets, and mobile devices. Magento 2’s responsive website was spot on, with 79 percent of customers purchasing online via mobile phones.

3. Friendly Admin Interface

In addition, Even for Magento 2 administrators, the new interface is a significant improvement over the previous old interface. Compared to the old Magento 1 admin panel, the new design is more user-friendly, responsive, and speedier.

4. Better user experience

Many new features exist in Magento 2 that improve the user experience for business owners, such as a new checkout design, a persistent shopping cart, etc.

5. More integration and payment options

Moreover, Magento 2 provides you with several payment choices. Magento 1 required customers to leave the store to finish the payment; in contrast, Magento 2 now allows you to finish your purchase using PayPal within the store.

IV. Step by step to use Magento data migration tool successful

The Magento Data Migration Tool’s migration procedure consists of four steps:

  • Firstly, Install the Magento Data Migration Tool on your server.
  • Then, Configure migration: create a backup of your database and perform some code modifications.
  • Afterward, Migrate with the Data Migration Tool: run commands to start the migration, fix errors if needed.
  • Lastly, Post-migration checkup: After the migration, double-check your target store to ensure no missing data or mistakes.

Step 1: Install Magento data migration tool

1.1. Install Magento data migration tool

At first, updating composer.json in the Magento root installation directory to provides the Data Migration Tool package location.

  1. Switch to the Magento file system owner or log in to your Magento server as.
  2. After that, Change to Magento 2 root directory.
  3. Enter the following command – composer config git composer require magento/data-migration-tool:

1.2. Check the version of installed Magento data migration tool

Take the following steps:

  1. Change to your Magento data migration tool directory:

2. After that, Open composer.json

The version entry in that file is the version of the Magento data migration tool.

Be reminded that different Magento versions necessitate various PHP versions. For instance, to use Magento version 2.3.4, PHP version 7.3 is required. For merchants, this may be troublesome. At Magento Community, you may look at one of the issues that may arise.

Step 2: Configure migratio

2.1. Backup target store’s database

Later, Follow the command:

mysqldump -uadmin -p databasename target> databasename target.sql

2.2. Configure migration

Before migrating any data, you must create a ‘config.xml’ configuration file from the provided sample.

There are two possible ways to configure the Data Migration Tool for migration:

  • Configure migration in a separate module
  • Configure migration in the vendor folder

Here is how to configure migration in a vendor folder:

  1. Firstly, Login or switch to your Magento server as the Magento file system owner.
  2. Change to the following directory:

3. Enter the following command to create a config.xml from the provided sample:

cp config.xml.dist config.xml
  1. Then, Open config.xml in a text editor.
  2. After that, nThe config.xml file must contain access details to M1 and M2 databases and encryption keys.
1    <source>
2    <database host=”″ name=”magento1″ user=”root”/>
3    </source>
4    <destination>
5    <database host=”″ name=”magento2″ user=”root”/>
6    </destination>
7    <options>
8    <crypt_key />
9    </options>

Optional parameters:

  • Database user password: password=<password>
  • Database custom port: port=<port>
  • Table prefix: <source_prefix>, <dest_prefix>

For instance, if your database owner’s username is root with password pass and you use the prefix magento1 in your Magento 1 database, use the following in ‘config.xml’:

1    <source>
2    <database host=”″ name=”magento1″ user=”root” password=”pass”/>
3    </source>
4    <destination>
5    <database host=”″ name=”magento2″ user=”root” password=”pass”/>
6    </destination>
7    <options>
8    <source_prefix>magento1</source_prefix>
9    <crypt_key>f3e25abe619dae2387df9fs594f01985</crypt_key>
10   </options>

Save your changes to ‘config.xml’ and close the text editor when you’re done.

Step 3: Migrate using Magento data migration tool

Thirdly, The Magento data migration tool runs in three modes:

  • Settings: migrates configuration settings
  • Data: bulk migrates main data in the database
  • Delta: transfers incremental data updates added to Magento 1 storefront and Admin Panel while running previous migration mode.

3.1. Migrate settings

In order to start settings migration, run:

bin/magento migrate:settings [-r|--reset] {<path to config.xml>}


  • [-r|–reset] is an optional argument that starts migration from the beginning. You can use this argument for testing migration.
  • {<path to config.xml>} is the absolute file system path to the migration tool’s xml file; this argument is required.

The migration completed message is displayed after the settings are transferred successfully.

3.2. Migrate data

And then, To star data migration, run this command:

bin/magento migrate:data [-r|--reset] [-a|--auto] {<path to config.xml>}


  • [-a|–auto] an optional argument that prevents migration from stopping when it encounters integrity check errors.
  • [-r|–reset] an optional argument that starts migration from the beginning. You can use this argument for testing migration.
  • {<path to config.xml>} is the absolute file system path to config.xml; this argument is required

3.3. Migrate changes

The rest of the data that was added after the primary migration is sent via the Delta functionality. Additional data might have been added to the Magento 1 database after the main migration (for example, by customers on the storefront). In order to track this data, the tool creates database triggers for tables at the start of the transfer process.

In order to run recent data, run the command line:

bin/magento migrate:delta [-r|--reset] {<path to config.xml>}

However, be wary of an unstoppable circle of data processing over and over. We ran into this problem after executing the command line and have yet to find a solution.

Step 4: Post-migration checkup

When transferring data using this program, you are likely to encounter several errors. In order to ensure that your data is not missed out along the way, you must check all of your store’s entities from both the backend and frontend to identify any errors and get them fixed


In short, this is a complicated process of using the Magento data migration tool. However, you can completely follow the instructions above that we have guided.
Besides, to save time, We can completely support you easily thanks to our Magento development services. Hopefully, this article was useful to you.