This website uses cookies

Our website, platform and/or any sub domains use cookies to understand how you use our services, and to improve both your experience and our marketing relevance.

✨ Vultr and Linode are back on Cloudways! VIEW PLANS→

How To Migrate From Magento 1 To Magento 2 Without Breaking Anything On Your Store

Updated on March 29, 2022

14 Min Read
Magento 2 Migration

Magento 2, the transformed version of the Magento Ecommerce Platform, comes with brand new architecture, coding structure, and database design. With the support for Magento 1 ending soon, the best minds in the ecommerce development industry are focused on making Magento 2 a successful ecommerce platform. In this context, the most important question is how to conduct Magento migration.

This is what Ben Marks, Evangelist at Magento, tweeted about the sunset of Magento 1:

Paul Boisvert, head of Product Management at Magento, also verified the information and said that November 18th, 2018 is the date when the world will bid Magento 1 an official goodbye, with three years of Magento 1 End-of-Life (EOL) warning to store owners. Later, it was said by Magento Inc. that they don’t currently have any plan to discontinue the support for Magento 1.

Given all this, it is essential that store owners should start planning Magento migration from M1 to M2. If you are moving over to Magento 2, continue reading this blog post as I will give you a detailed overview of the Magento migration process.

Want to Migrate Your Magento 2 Store to a Better Host?

Cloudways offers fast, superior, and cost-effective Magento 2 hosting so you can have a robust Magento store.

Before starting the actual migration process, consider the following recommendations:

  • Make a full backup of the Magento 1 store, including all files, folders, and the database.
  • Create a clone of your Magento 1 store. Do not use the live store for the Magento migration process.
  • Analyze your store. Keep what you think is necessary and delete the rest for Magento 2 migration.
  • Check whether your current theme(s), extensions, and custom code are compatible with Magento 2.
  • Migrate data from the cloned database of your Magento 1 store.
  • Remove outdated and useless data from the database including logs, recently viewed products, compared products, etc.
  • Install a fresh copy of Magento 2 on the same hosting server as your Magento 1 store.
  • You should also ensure that the store traffic and other SEO related practices are streamlined.

SEO Analysis That You Should Keep in Mind Before M1 To M2 Migration

The first issue that arises for the store owner is worrying about losing the traffic, which ultimately leads to the loss of conversion. To counter this issue, they should perform an SEO analysis before M1 to M2 migration.

Here are some necessary technical SEO analyses that you need to go through before getting into the Magento 2 migration processes.

Analyze Your Google Analytics

The first thing that you need to do is to analyze your Google Analytics. To do that you need to go to your google analytics. Set a date range of at least the last 6 months. You can find the date range section in the top right corner of your Google Analytics screen.

Analyze Google Analytics

The next thing that you need to do is to view your data as a landing page. To do that, go to the panel on the right and select Behaviour > Site Content > Landing Page.

Landing Page Navigation

Here, you need to record the URLs that are heavily contributing to your website traffic. This way, you can ensure that the most critical pages of your Magento 1 website are migrated to the Magento 2 website properly.

Analyze Your Google Search Console

The second thing that you need to do is to analyze your Google Search Console Data.

  • Check Your High Performing Keywords

In order to check your keyword, simply go to your GSC account and Click on Performance > Search Results.

Google Search Console Queries

As shown above, you can find the keywords, their impressions, and clicks. Thus, you can analyze whether your best-performing keywords remain stagnant once your store migrates from Magento 1 to Magento 2.

  • Fix The 404 Errors

To view your 404 error file, you need to navigate to the index>coverage section in Google Search Console. Check if your website is returning any 404 errors and make sure to fix them before the migration process.

Google Search Console Coverage

Analyze Your Robots.txt File

  • You can Analyze your robots.txt file to see if you are not blocking the .js file or any media files. If you are, make sure to unblock them. You can access your robots.txt file by simply typing “/robots.txt” in front of your home page URL.
  • Analyze Sitemap.xml File
  • Access your sitemap.xml file by simply typing “/sitemap.xml” at the end of your home page URL to make sure that your sitemap.xml is updated and follows the structure of your website.
  • Analyze Your Canonical Tags
  • Make sure that you have properly set canonical tags for all the static pages of your website. Canonical tags make sure that you are passing the link juice to the right pages in case of duplicate pages. If you want to check for the canonical tag of any particular page, just access their view page source and look <link rel=”canonical” href=””/> if you are able to find the tag, the availability is confirmed.
  • Don’t Change Your Meta Tags
  • Do not change your Meta Tags, especially MTs, MDs, and H1 in the migration process from Magento 1 to Magento 2 as they could leave an impact on your SERP results.

Why Is Magento 2 Better than Magento 1?

Magento supports an all new stack, including the latest PHP 7.4, Apache 2.4, NGINX 1.x, Elasticsearch 7.9.x. RabbitMQ 3.8.x, Varnish 6.x, etc. This combination improves the speed and performance of your website. Ultimately, it helps take more orders and loads the frontend content faster than Magento 1.

As far as Magento 2 extensions are concerned, they are more reliable and have a cleaner code. With Magento 2.x, you can experience the significant impact of SEO with and rich snippets on the catalog pages. Importantly, Magento 2 is more mobile-friendly when compared to Magento 1. The themes are more responsive, and the checkout process is also optimized. Magento 2 supports PWA, which allows developing a mobile native application experience for your online store.

Magento 2 Migration Processes

According to the official documentation, Magento 2 migration consists of four different stages:

  1. Theme Migration
  2. Extension Migration
  3. Customizations
  4. Data Migration

Theme Migration

Magento 2 introduces new technology and methodologies to deliver enhanced shopping and store experience to the merchants and users. Developers can take advantage of new ways of creating awesome Magento 2 themes, or modify the current ones to make them compatible with the Magento 2 standards. You should keep in mind that you cannot directly migrate your Magento 1 theme to Magento 2.

You have to create a new theme for Magento 2 and make it responsive for the best user experience. If you need help, I’d suggest you to go through this easy-to-follow article on how to create a custom theme in Magento 2.

If you wish to avoid this hassle altogether, buy and install a Magento 2 theme from the Magento Marketplace or other reputed sources.

Extension Migration

Extensions are essential components that provide new features and extend the functionalities of your Magento store. The next step in the Magento migration process is to install the desired Magento 2 extensions available on Magento Marketplace.

You need to keep reminding yourself that Magento 1 extensions will not work on Magento 2. If you try integrating them into Magento 2, you will experience severe compatibility issues.

Ideally, it is suggested to only install relevant extensions that are available and required for your Magento 2 stores. In the meantime, Magento developers, community, and development agencies are working hard on porting Magento 1 extensions to Magento 2.

If you are well-versed in Magento and want to do it on your own or want to learn more about Magento 2 extension development, I have discussed how to create Magento 2 extensions as  well.


In many cases, the custom code used by your Magento 1 store is compatible with Magento 2. Magento offers a Code Migration Toolkit to help you in this process. It should be noted here that due to structural differences in the two platforms, This Magento migration may require additional work to make sure that the custom code successfully integrates with the Magento 2 store.

To know more about the integration, visit the GitHub repository of the Magento Code Migration Toolkit.

Data Migration

The last action you need to perform during the Magento migration process is move your Magento 1 settings and data to Magento 2. To ease up the Magento migration process, Magento has officially released a Magento 2 Data Migration Tool that helps developers migrate their store data and settings using CLI commands. It makes the Magento migration process hassle-free and helps migrate critical data (products, categories, orders, store configurations & settings, etc.) to Magento 2.

The Data Migration Tool migrates the complete database of Magento 1 platform to the database of Magento 2 platform based on a set of rules defined in the XML files. As of now, the Data Migration Tool only transfers data and settings. As stated earlier, extensions, themes, and other code customizations of Magento 1 store cannot be automatically migrated to the Magento 2 store right now. You will have to reach out to your theme/extension provider from time to time to see whether or not they have provided an exporting option for the Magento 2 platform.

Install Magento 2 Data Migration Tool via Composer

You can install the Data Migration tool into a fresh Magento 2 store using Composer. Remember, it’s not a Magento 2 extension, it’s a standalone shell application that requires the Magento 2 store to become operational.

Before installing the Magento 2 Data migration tool, we have to move media files from Magento 1 to Magento 2.

Command: rsync -a magento-sample-data /media/ {username}@{publicIP}:{Media Folder Path}

Transfer done

Magento Migration 2

To install the Data Migration Tool, make sure that the version of Magento 2 store and Data Migration Tool match.

For example, if you are using Magento version 2.2.0, you must install the Data Migration Tool version 2.2.0. In general, If you are using the latest version of Magento 2 platform, you have to use the most recent version of the Data Migration Tool as well.

To find the version of your store, navigate to the root directory of your Magento 2 via SSH and enter the following command:

php bin/magento --version

Once you know the version of your Magento 2 store, it’s time to install the Magento 2 Data Migration Tool.

Keep in mind that you must update the location of the Data Migration Tool package in the composer.json file to make it work.

To do that, just run the following commands:

composer require magento/data-migration-tool:<version>

In the above CLI command, <version> refers to the version of the Data Migration Tool that must match the Magento 2 version discovered earlier.

For example, if you are using Magento version 2.4.3, enter:

composer require magento/data-migration-tool:2.4.3

Magento Migration 3

You will be asked to enter your developer authentication keys. Go to the Magento Marketplace. Sign in using your login credentials, go to your profile, and then click Access Keys under the My Products section.

If you already have keys, your public key will be your username and the private key will be your password. Otherwise, create a new key pair by clicking the Create a New Access Key button.

In a few seconds, the Data Migration Tool will be successfully installed on your Magento 2 store.

Magento Migration 4

Once migration is complete, run the setup:upgrade command because the Migration tool is a Magento module, and it is always recommended to run the setup:upgrade command whenever you install a new module.

Magento Migration 5

Configure Magento 2 Data Migration Tool

After the installation is complete, the following directories will contain mapping and configuration files for the Data Migration Tool.

<Magento 2 root dir>/vendor/magento/data-migration-tool/etc/opensource-to-opensource

The above file will contain configuration and scripts for migrating from Magento 1 Open Source platform to Magento 2 Open Source platform.

<Magento 2 root dir>/vendor/magento/data-migration-tool/etc/opensource-to-commerce

The above file will contain configuration and scripts for migrating from Magento 1 Open Source platform to Magento 2 Commerce.

<Magento 2 root dir>/vendor/magento/data-migration-tool/etc/commerce-to-commerce

Magento Migration 6

The above file will contain configuration and scripts for Magento migration from M1 Commerce to M2 Commerce.

Before you migrate any settings and data, you must create a config.xml file in the relevant directory. For example, if you are performing data migration from Magento 1 Open Source platform to Magento 2 Open Source platform, navigate to the

<Magento 2 root dir>/vendor/magento/data-migration-tool/etc/opensource-to-opensource/<Magento 1.x version> directory and rename config.xml.dist to config.xml.

Next, open config.xml in your favorite code editor and specify the following:


<database host="localhost" name="Magento1-DB-name" user="DB-username" password="DB-password"/>



<database host="localhost" name="Magento2-DB-name" user="DB-username" password="DB-password"/>





In the above code, <source> has the database information of Magento 1 and <destination> has the relevant database information of Magento 2. <crypt_key> is mandatory and needs to be filled prior to running. It is the encryption key of Magento 1 store and can be found in the <Magento 1 root dir>/app/etc/local.xml file, within the <key> tag.

When finished, save the config.xml and you are done.

Magento Migration 7

Migrate Settings Using Magento 2 Data Migration Tool

Here is how you can use the Data Migration Tool to migrate settings from Magento 1 to Magento 2. These settings include stores, websites, and system configurations such as shipping, payment, tax settings, etc.

According to the Magento Data Migration Order, you should migrate settings first. To start migrating the settings, navigate to your Magento 2 root directory via SSH terminal, and run the following command:

php bin/magento migrate:settings --reset <path to your config.xml>

where <path to your config.xml> this would become vendor/magento/data-migration-tool/etc/opensource-to-opensource/<Magento 1.x version>/config.xml. I have used –reset argument in the above command, which forces the Data Migration Tool to start from the beginning.

Magento Migration 8

Once the settings migration is over, a success message will be displayed.

Magento Migration 9

Migrate Data Using Magento 2 Data Migration Tool

Data migration from Magento 1 platform to Magento 2 platform includes products, categories, orders, customers, wish lists, ratings, etc. To migrate data, run the following CLI command:

php bin/magento migrate:data --reset --auto <path to your config.xml>

Magento Migration 10

As this command runs, the Magento 2 Data Migration Tool saves its current progress, and in the case of an error, stops the process and resumes from the last known good state. Also, the Magento 2 Data Migration Tool may report some errors during the migration. In such a case, refer to the Troubleshooting page of the Magento 2 Data Migration Tool for further assistance.

Once the data migration is complete, you will receive a success message.

Don’t forget to run the following commands:

Run the setup:upgrade command

Magento Migration 11

Refresh the indexes

Magento Migration 12

Flush Cache

Magento Migration 13

Sets the proper permissions in the media files

Magento Migration 14

Suggestions to Further Improve the Migration Process

Some data might not be covered by the Data Migration Tool. Then it’s suggested describing the process to migrate Users, ACL, and Media files (catalog images). So, here is an example of the manual process to do it:


rsync -a magento-sample-data-

[email protected]:applications/cahcfdrnsw/public_html/pub/media/

ssh [email protected]

[master_kfnsqxajrw]:~$ chmod a+rw -R applications/cahcfdrnsw/public_html/pub/media/

Another suggestion is to add the option of migrating incremental changes. An online store could spend many hours in migration, and usually they don’t want to stop sales. So, the delta

command synchronizes changes after the migration:data command.


bin/magento migrate:delta --reset --auto <path>/config.xml

Note: Use –auto argument to avoid soft interruptions.

Upgrade Magento with the Automated Tool

Besides a manual upgrade via Composer, you can consider using an automated data migration tool to switch from Magento 1 to Magento 2.

Currently, LitExtension is the leading shopping cart migration expert that helps you automatically, accurately, and securely migrate all your valuable entities, including products, orders, customers, and even multiple languages, to your new store.

The price and estimated time of your migration will depend on the number of entities that have to be transferred, and the complexity of your project.

In this section, I will guide you through 3 simple steps to upgrade your Magento store with the LitExtension tool.

Let’s get started!

Before setting up your migration details, you need to register or log in to LitExtension if you already have an account. Alternatively, you can sign in with your Google or Facebook account.

M1 to M2 Migration 1

Then, you’ll be redirected to the My Migration page. Simply click on the Create New Migration button to start.

M1 to M2 Migration 2

Step 1: Provide Your Shopping Cart Information

In this step, select Magento as your Source Store and Target Store and provide your store URL. Then download the LitExtension connector, extract the zip file, and follow the instructions to upload it to your Source and Target store’s root folder. You can also watch the video tutorial for visualized guidance.

M1 to M2 Migration 3

At the end of the Setup page, hit Next to continue.

Step 2: Select Entities to be Transferred and Additional Options

You may select as many entities to migrate as you like. If you want to migrate everything from Magento 1 to Magento 2, check Select All.

M1 to M2 Migration 4

Don’t forget to take a look at the Additional Options that help you extend your migration possibility. Here LitExtension provides more than 10 options for you to choose from, including Preserve Product IDs on Target Store, Migrate Customers’ Passwords, and more.

M1 to M2 Migration 5

If you are new to LitExtension, I recommend that you perform a Free Demo Migration. By doing this, you can understand how LitExtension transfers and stores data on your new store. 20 entities will be migrated automatically without any extra cost.

Step 3: Run Full Migration

Now, it’s time to start the Full Migration process that upgrades your Magento 1 store to a better version.

M1 to M2 Migration 6

As the data switching process is cloud-based, it’s completely safe to turn off your browser window or your PC. Make yourself a cup of coffee as you wait for the notification from LitExtension to your email to inform you the process is over.

Remember to click on the Check result button to make sure that everything has been transferred to your new store flawlessly.

M1 to M2 Migration 7

In case you have any questions, don’t hesitate to contact the LitExtension support team. They are available 24/7 to solve your problems as quickly as possible.

Magento 2 Migration FAQs

Q. How long does it take to migrate from Magento 1 to Magento 2?

In general, a Magento migration project will take 1-3 months to complete.

Q. What is migration in Magento 2?

Magento 1 to Magento 2 migration is a migration service that covers the transfer of design, Magento extensions, database, and custom functionality from Magento 1 to Magento 2 platform requiring a certain level of technical skills.

Q. Why do I migrate to Magento 2?

It’s important to migrate your store from M1 to M2 due to many reasons. But the most important reason to consider is there would be no support available for Magento 1. If your M1 store gets vulnerable then there would be less possibility to recover it.

Final Thoughts

Once all Magento migration processes are successfully over, do not forget to test the Magento 2 store thoroughly to ensure that everything functions properly. Although I have outlined the entire migration process, it is not an easy task since it is not fully automated yet. You will have to put in hours of manual work to answer the question: how to conduct Magento 1 to Magento 2 migration?

For smooth and trouble-free Magento migration, you can choose Cloudways Magento hosting. I would recommend store owners hire a Magento professional for the job. In case you face a difficulty in understanding the migration process, leave your questions in the comments section below.

Share your opinion in the comment section. COMMENT NOW

Share This Article

Fayyaz Khattak

Fayyaz, a passionate Motorbike tourist, works as a Team Lead — Magento Community at Cloudways - A Managed Magento Hosting Platform. His objective is to learn & share about PHP & Magento Development in Community. You can contact him at [email protected]


Get Our Newsletter
Be the first to get the latest updates and tutorials.

Thankyou for Subscribing Us!


Webinar: How to Get 100% Scores on Core Web Vitals

Join Joe Williams & Aleksandar Savkovic on 29th of March, 2021.

Do you like what you read?

Get the Latest Updates

Share Your Feedback

Please insert Content

Thank you for your feedback!

Do you like what you read?

Get the Latest Updates

Share Your Feedback

Please insert Content

Thank you for your feedback!

Want to Experience the Cloudways Platform in Its Full Glory?

Take a FREE guided tour of Cloudways and see for yourself how easily you can manage your server & apps on the leading cloud-hosting platform.

Start my tour


  • 0


  • 0


  • 0


  • 0



For 4 Months &
40 Free Migrations

For 4 Months &
40 Free Migrations

Upgrade Now