How to Migrate from Magento 1 to Magento 2: A 4-Step Guide

Magento 1 to Magento 2 Migration

Magento is one of the leading ecommerce platforms on the market today, offering a bevy of tools and features to establish and grow your online store.

A few years ago, Magento released a massive upgrade of their platform, going from 1.x to 2.0. If your business has yet to migrate to the latest version of Magento, now's the time. Let's delve into why, and what this Magento migration entails.

Why You Should Migrate from Magento 1 to Magento 2

The short answer? Time is running out for Magento 1.

In June 2020, the previous version will no longer be supported and all Magento customers will have to upgrade. And when the time comes, you might have to redo any customization you've made to the previous version — so you may as well do it sooner, rather than later.

That's the technical reason to make the move.

But the real reason is Magento 2.0 is better in just about every way. You're going from a 2003 Honda to a 2020 Lexus.

Here are just some of the features your ecommerce business will benefit from after making the switch to the new iteration:

  • Improved speed
  • Increased stability
  • Better, and faster, check-out process
  • More mobile-friendly design
  • "Instant Purchase" button availability
  • More robust reporting options
  • Increased security

Essentially, there's no downside to migrating, except for the initial time investment to perform the move. Transitioning from Magento 1 to Magento 2 is necessary, beneficial and a win for your ecommerce business.

Magento 1 to Magento 2 Migration Steps

computer code

Preparing for Migration

As you prepare for the migration, it's recommended that you take a high-level view of your site and perform a data analysis and audit of all the elements you'll move over. This includes integrations with web services, APIs and customizations that are unique to your store.

To this end, many businesses will hire a Magento migration expert or service to assist with the audit; however, if your dev team has worked closely with the Magento platform throughout the lifetime of your business, you can handle it in-house. They can also create a backup of your data just in case something gets lost during migration.

Step 1: Acquire the Magento Migration Tools

Once you're ready to begin, you'll want to start by creating your instance of Magento 2; think of this as an empty bucket that you'll fill up with all the data from Magento 1.

Download the latest version of Magento 2.x, and follow the included setup wizard to install the new platform on your server.

Next, you'll want to use Magento's handy Data Migration Tool, which you can use in a couple ways. If you're using Composer, you can enter a command to download a metapackage to assist you. If you're not using Composer, you can get the Data Migration Tool from GitHub, using the steps outline on Magento's DevDocs.

Make sure the version of the tool matches the version of your Magento 2 codebase. You can find your version in your root directory of your Magento 2 store via SSH. Simply enter this command:

php bin/magento --version

Step 2: Configure the Magento Data Migration Tool

Once you've installed the tool, you'll need to create a config.xml file in the appropriate directory. This will specify the configurations you want to include during the migration. While the directory will vary depending on your Magento instance, the config file should be specified as such:

<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"/>

Source is the database information for Magento 1, Destination is for Magento 2. Your crypt_key can be found in your Magento 1 root directory. This last value is required.

Magento Data Migration Tool Structure
Source: Magento

Step 3: Migrate from Magento 1 to Magento 2 via the Data Migration Tool

Now you're ready to use the Data Migration Tool. First, migrate your settings by going to your Magento 2 root directory and run this command:

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

Once successful, migrate your data by running this CLI command:

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

Once this is successful, your migration from Magento 1 to Magento 2 should be complete.

Step 4: Test Your Site

Finally, it's important to test the functionality of your site to make sure that everything has migrated to your specifications. If you run into issues — for instance, your products aren't appearing in categories or your homepage doesn't seem to load correctly — you may need to check your custom settings or reindex your products.

The entire migration is not an easy process, so expect some hiccups. But the improved performance of Magento 2 will soon more than make up for this small headache to get your site on the newest version of the platform.

Build Magento pages that convert.

Create professional-quality pages for your ecommerce store with a powerful drag and drop page builder for Magento designed with ecommerce teams and agencies in mind.
Start Your Free Trial

Build Magento pages that convert.

Create professional-quality pages for your ecommerce store with a powerful drag and drop page builder for Magento designed with ecommerce teams and agencies in mind.
Start Your Free Trial