facebook Magento 1 to Magento 2 Migration: A Complete Guide

Magento 1 to Magento 2 Migration: A Comprehensive Guide for 2024

Looking to migrate from Magento 1 to Magento 2? Explore the essential steps, benefits, and common challenges you might face during Magento 1 to Adobe Commerce (Magento 2) migration with our comprehensive guide.

Lalit Singla
Lalit Singla
Listen to this article
Sample Audio File

Table of Contents

Magento Open Source (previously Magento Community Edition or Magento CE) is an open-source eCommerce platform first released in 2008 (Magento 1). In 2015, Magento 2 was released concurrently, a revised architecture that comes with significant improvements in performance, security, features and developer tools. Magento 1 reached its end-of-life in 2015, but every year thousands of companies are still making the switch to Magento 2.

In this article we cover how to migrate from Magento 1 to Magento 2 for your store, including compelling information on:

  • If you haven’t yet migrated to Magento 2 in 2024, you’re not alone
  • Why you should no longer wait to migrate to Magento 2
  • A simple step-by-step guide to take the fear out of upgrading to Magento 2
  • What is Adobe Commerce and should you migrate there instead?

Disclaimer: The information below is accurate as of October 2, 2024.

Why Migrate From Magento 1 to Magento 2?

Magento was acquired by Adobe in 2018, who made the decision to sunset Magento 1 on June 30, 2020 since Magento 2 offered significant benefits over Magento 1 across all aspects: performance, security, checkout processes, admin interfaces, advanced analytics, mobile-responsiveness and more.

Magento 2 Benefits

Among other improvements, Magento 2 leverages PHP 8.x, Nginx (for performance, security), Varnish (for performance), Composer (component management), Symfony (to accelerate coding), Redis (caching), Elasticsearch and Open Search (search engine).

For more, we encourage you to review the current 11 biggest benefits of using Magento, which reflects all the opportunities on today’s Magento 2 platform. Adobe continues to make regular updates to Magento 2 for the free Magento Open Source software, which is now at version 2.4.7. This means that, if you are still on Magento 1, you will experience:

Drawbacks of Magento 1

  • Reduced performance and scalability: Magento 1 is at least 20% slower than Magento 2, with increasing performance lags as product catalogs or data grow.
  • Security and compliance risks: No new security patches, so new vulnerabilities remain unaddressed and expose you to risk and potential PCI-DSS non-compliance.
  • Extension issues: Third-party services have mostly sunset support for Magento 1, causing extensions to stop working or work sub-optimally.
  • Reduced productivity & skills gap: As Adobe invests in functional improvements to Magento 2, such as Page Builder, developers and content creators using Magento 1 are stuck doing everything the “old” way and could find a widening skills gap for Magento 1 developers.
  • Outdated features, lack of agility: Magento 2 sites enjoy a competitive advantage with evolving features and functionality.
  • Failure to meet customer expectations: With customers increasingly demanding personalized omnichannel experiences, legacy platforms fall further behind.

Still on Magento 1? You’re not alone.

Despite the fact that Magento 1 reached its end-of-life in 2020, tens of thousands of websites still use Magento 1.x, including global brands with hundreds of thousands of dollars in annual sales revenue. Each year, the risks and challenges associated with continued use of Magento 1 grow, compelling brands to finally make the switch. This is particularly true for those brands still using earlier 1.x versions of Magento.

Magento 1.0 Migration Statistics

The top reasons that businesses have for remaining on Magento 1 are:

  • Lack of skilled developers
  • Budget constraints
  • Extensive customizations
  • Complex and/or large data sets
  • Fear of data risks and/or performance issues

Acknowledging these obstacles is the first step to overcoming them, creating a comprehensive plan that minimizes risk and creates a roadmap to success. Best of all, migrating to Magento 2 allows you to tap into all the benefits of a stronger, faster and more secure platform—benefits that ultimately deliver a strong ROI.

How to Migrate from Magento 1 to Magento 2

If you’re ready to migrate from Magento 1 to Magento 2, to take advantage of all that Adobe now includes in the base eCommerce platform and to deliver on outstanding customer experiences (check out some examples of great Magento 2 websites), we have laid out a simple step-by-step plan (and also a Magento 2 migration checklist) to help you overcome the fear and get started on the journey to a more responsive, agile, scalable digital storefront for your brand.

Although Adobe publicly refers to only “Magento Open Source” now, for the sake of clarity in this post, we will refer to “Magento 1” and “Magento 2” when necessary, to help clarify the process of migration.

How to Migrate from Magento 1 to Magento 2

1. Assess your Magento 1 store

Step 1 is to take stock of where you are, where you want to go, the potential risks involved in the migration, and a general sense of budget and ideal launch time. Although the timeline can vary, allow around 3 months for the migration.

Examine current extensions

Determine which extensions are now a part of the core Magento 2 platform and which require a more recent version of that extension or an alternate service from the marketplace. Verify if any extensions have database assets that must also be migrated.

Examine customizations and integrations

Establish the current level of customization of the core Magento program: what functionality have you built, what integrations do you have to internal systems or data, and what shifts will need to take place during the migration to remove or alter these. It is typical for websites to need fewer customizations on Magento 2.

Review themes

Magento 2 themes deviate from Magento 1 themes, using new approaches and technology, resulting in greater mobile responsiveness and performance. Themes built for Magento 1 should not be migrated to Magento 2. This is a great time to reassess your user experience and determine how to take advantage of new capabilities of Magento 2.

Map and clean data

In order to prepare for the migration to Magento 2, you need to have a clear understanding of all your data and take steps to prepare it for migration.

  • Map data: to know where data is coming from and where it needs to move to (choose to retain or alter the structure and data format)
  • Clean data: to remove duplicate or outdated data

Perform SEO assessment for the store

Benchmark the current search engine optimization (SEO) position with an SEO assessment using tools such as Semrush, Google Analytics, and your Google Search Console. Examine:

  • Top landing pages (page views / sessions) and keywords
  • Run crawl texts to see the status of SEO and what efforts will need to be made during migration (e.g. optimize on-page SEO with greater product details or metadata, alter the URL structure, fix 404 errors). Assess if the page still serves a purpose.
  • Robots.txt file to see warnings, errors, last time crawled
  • Create a store URL redirection plan (if needed)

2. Set up Magento 2

Set up Magento 2 (the latest version) on your server in a local development environment, ensuring your hosting environment meets the detailed system requirements, including PHP (see required PHP settings), Apache or NGINX (min 2GB of RAM), MySQL and a search engine (we suggest OpenSearch).

  • Download Magento Open Source directly from GitHub or with Composer (recommended).
  • Create a database on the same MySQL server as the Magento 1 database (establish a replica of your Magento 1 database). Note, you can choose to alter the data structure and data format, but take note of these changes as they impact migration.
  • Upload Magento using FTP or the File Manager (easier, will trigger an install wizard)
  • Customize your store (URL, time zone, currency, language)
  • Create an admin account
  • Complete the install Magento 2 (Magento Open Source)

3. Back up Magento 1 store data

Before you get started, it’s critical to back up your data to allow you to restore the database if migration is not successful. For smaller sites, data migration from Magento 1 to Magento 2 may be as simple as using CSV files, while larger sites data migration can be a time-intensive project involving complex back-up and/or import / migration workflows using APIs.

Backups are stored in the var/backups directory of your Magento file system. You can run backups from the command line or using the system interface, going to System > Tools > Backups.

Backup types in Magento 1

4. The Magento 1 to Magento 2 migration process

In order to validate your migration process, run through data migration first in your staging (testing) environment, then move to your production environment.

Migrate themes

You can use the standard “Luma” theme for a traditional / coupled infrastructure, examine alternative themes in the Adobe marketplace, or create a custom theme using the “Blank” theme as a basis. Regardless of your approach to the process, the first step will be to apply a new theme before deleting the old Magento 1 theme.

Applying a Theme in Magento 1

Migrate extensions

Update extensions or switch to new extensions, as determined earlier. If extensions create data in the storefront database, capture these in the Data Migration Tool config files (see below). If the extension has its own tables, these will need to be tracked separately following instructions here.

Migrate customizations & integrations

If Magento 2 connectors are not available, custom integrations may be needed. Develop new or modified code to support any remaining needed customizations for Magento 2, referencing Adobe’s PHP Developer Guide. Adobe also offers advice on how to map configuration files to Magento 1 store configurations here.

Migrate data

The last stage of any migration is the data migration, which we’ll go into in depth using the Data Migration Tool provided by Adobe.

5. Download and install the Data Migration Tool

Adobe provides a Data Migration Tool to transfer data from Magento 1 to Magento 2. This command-line interface (CLI) tool verifies database structures (tables and fields), tracks progress, generates logs, and runs appropriate data verification tests to ensure the process works as expected.

The Data Migration Tool shares the same system requirements as Magento 2, ensuring you have the appropriate tool for the version of Magento (e.g. Magento 2.4.7 requires Data Migration Tool 2.4.7). After meeting prerequisite conditions for the tool, either:

Download the tool from GitHub and enter the following commands in the application root directory:

<code>composer config repositories.data-migration-tool git https://github.com/magento/data-migration-tool</code>

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

Note: <Version> must match the version of the Magento 2 codebase.

Download the tool from repo.magento.com and update composer.json to provide the location of the tool package:

composer config repositories.magento composer https://repo.magento.com
composer require magento/data-migration-tool:

6. Configure the Data Migration Tool

Before starting, you can adjust the Data Migration Tool in case some data doesn’t need to be migrated or if you need to convert customizations as part of the migration. The following directory contains mapping and configuration files in Magento 2:

<your Magento 2 install dir>/vendor/magento/data-migration-tool/etc/opensource-to-opensource: Configuration and scripts for migrating from Magento Open Source 1 to Magento Open Source 2

You will then configure the Data Migration Tool to set access details to the Magento 1 and Magento 2 databases and encryption key. If you have customizations, this is where you would map them, which can include:

  • Changing table names
  • Changing field names
  • Ignoring tables or fields
  • Adapt transferring data of a field to Magento 2 format

You can configure the tool in one of two ways:

  • In a separate module (recommended, necessary for source control) following the instructions from Adobe here.
  • In the above /etc/ directory

Before data migration, you must also create a config.xml configuration file from within the application server as the file system owner, changing this directory:

cp config.xml.dist config.xml

Entering this command to create the config.xml file, double checking that the file contains a value for the encryption key.

<source>
<database host=”127.0.0.1″ name=”magento1″ user=”root”/>
</source>
<destination>
<database host=”127.0.0.1″ name=”magento2″ user=”root”/>
</destination>
<options>
<crypt_key />
</options>

For added security, you can alternatively use the TLS protocol and add SSL attributes to the database element. Within the config.xml file, you can optionally make data format and structure changes:

For further details, refer to the Data Migration Tool Technical Specification.

7. Start the Migration

The Data Migration Tool will split migration into three modes or set of operations, each including steps to validate, transfer and verify the data:

Various modes in Magento

  • Settings Mode: migrates the system configuration and website settings
  • Data Mode: migrates database assets
  • Delta Mode: migrates incremental changes (anything since the previous run), to ensure you have complete accuracy over customers and orders when the final switch over occurs.

When you are ready to migrate, run through the following pre-migration checklist:

  • Stop all Magento 1 cron jobs.
  • Stop all Magento 1 Admin Panel activities (except order management). These will resume only when you’re live on Magento 2. Magento 1 storefront operations are allowed, with updates adjusted in Delta Mode.
  • Stop all Magento 2 Admin and storefront changes.
  • Stop all code modifications.
  • Ensure that the Data Migration Tool has network access to both Magento 1 and Magento 2 databases.

Next, begin the migration:

    • Use the Data Migration Tool to migrate settings and websites (Settings Mode)

Note: Settings migration does not capture timezone settings. These will need to be manually set at Stores > Configuration > Locale Options > Timezone.

  • Migrate media files, which is done manually from the magento1-root/media directory to magento2-root/pub/media.
  • Use the Data Migration Tool to migrate data from the Magento 1 database to the new Magento 2 database (Data Mode). Use the mapping files in the tool if extensions have different data structures
  • Perform other manual migrations of storefront design (theme migration), admin user accounts, access control lists (ACLs).

8. Modify the migrated data

Once migrated, you have the opportunity to add new CMS pages or adjust catalog structures or sales rules—however, any manual changes may make incremental data migrations (Delta Mode) more difficult and add delays to completing your Magento store.

If you have data changes that have occurred during this period that reflect storefront activities (orders, customers), this is also the time to capture those incremental updates using the Data Migration Tool in Delta Mode.

9. Launch

After you have verified that everything in your store is working as it should, you’re ready to go live. This will potentially cause downtime in your store, so choose a time that minimizes impact on your customers.

  • Put Magento 1 in maintenance mode
  • Press Control+C in the Data Migration Tool command window to stop incremental updates
  • Start Magento 2 cron jobs
  • Flush all Magento 2 cache types
    • In System > Tools > Cache Management, either Flush Cache Storage (bin/magento cache:flush) or Flush Magento Cache (bin/magento cache:clean)
  • Reindex all Magento 2 indexers, which is a special table used by Magento 2 to help render catalog pages quickly. This process should be repeated any time you add or change product attributes or other merchant data, you’ll need to reindex some or all indexers. You can do this via the command line (running “bin/magento indexer:reindex”) or via the Admin:
    • Go to System > Index Management > Indexers (you will see “Reindex Required”) > Actions > Update on Schedule
  • Change DNS and load balancers to point to the Magento 2 production hardware

Congratulations, you’ve made it! We hope these migration steps were helpful.

Magento 2 Case Study

Global retailer Legend Footwear approached us, they were experiencing a number of optimization challenges with their Magento 2 implementation. Sub-optimal loading speeds on desktop and mobile, verified on GTMetrix, were causing a failure to both index and rank on Google, low engagement rates by mobile users, and a high cart abandonment rate.

Net Solutions was brought in to assess and remediate the problem, including:

  • Using more efficient programming techniques and configurations to reduce the number of HTTP requests
  • Reduced the server space and installed the Varnish cache to enhance web speed
  • Fix catalog indexing issues
  • Switched to an instant checkout process with integrated payment gateways
  • Optimized images through compression
  • Made the website more responsible for mobile users

As a result, Legend Footwear increased website speed overall, increased their engagement rates with mobile users (their primary target), and reduced checkout time by 80%.

Should you consider Adobe Commerce instead?

If you are a large enterprise or global client still on Magento 1, before taking the leap to Magento 2, you should take a hard look at the licensed Adobe Commerce products, which significantly improved upon by the Magento 2 core with additional features, capabilities and composable services. Adobe Commerce is available on-Premise or on Cloud (Adobe Commerce Pro and Adobe Commerce Managed Services).

Adobe’s continued investment in the platform has made them the seven-time Leader in the digital commerce space for delivering personalized B2C and B2B experiences at scale. Learn more about Adobe Commerce vs Magento Open Source to see which may be right for you.

How Net Solutions Can Help With the Migration

We hope that the above step-by-step migration guide has been helpful in reducing the fear around migrating to Magento 2. However, we acknowledge that for some brands, the obstacles to migration can be higher, requiring significant development resources to re-theme and re-architect a highly customized implementation. For others, migration is a great opportunity to go back to the drawing table on user experience, design, and performance goals, requiring an experienced Magento development company.

Thankfully, the Net Solutions team of Adobe certified developers have extensive experience in working with Magento and in helping global brands not only make the transition to Magento 2, but do so in a way that fully realizes the benefits of the new platform capabilities and extensions, while also navigating any needs for customization.

To help you on your way, we’d be happy to speak with you directly to help you get clarity on your project and offer a no-commitment project scope.

Frequently Asked Questions

1. How much does it cost to move from Magento 1 to Magento 2?

The average enterprise migration cost is between $25,000 to $500,000, according to an eCommerce platforms report; a Magento 1 to Magento 2 migration would likely fall on the lower spectrum, since Adobe has provided helpful tools to assist.

2. What common problems occur when moving from Magento 1 to Magento 2?

The most common Migration 1 to Magento 2 problems include theme incompatibility, difficulty finding extensions, lack of adequate testing of system and extensions, inadequate SEO strategy to understand the impact of URL rewrites, unexpected amounts of downtime (with experience, this should just be minutes), or cost overages. The best way to avoid these unexpected problems is to work with an experienced team of Magento experts.

3. What is the expected timeframe for migrating from Magento 1 to Magento 2?

The average migration takes about three months once a roadmap has been established, allowing ample time to create new templates, add custom code, implement new features and capabilities, start with a dry run, and move into production. The experience of your development team or partner can have a large impact on the project timeline.

SHARE THIS POST
Lalit Singla
Article written by

Lalit Singla

Lalit Singla is a distinguished Technical Architect renowned for his exceptional programming skills and logical prowess in solving complex technical and programming challenges. With an innate ability to dissect problems and find innovative solutions, he has earned a reputation as a go-to expert in the industry.


Passionate about the nuances of Indian Classical Music, Lalit finds solace and inspiration in its melodic rhythms and soul-stirring compositions. He believes that music has the power to transcend boundaries and evoke profound emotions, serving as a creative outlet that complements his technical expertise.


Beyond his technical pursuits, Lalit takes an interest in taking up social causes and contributing to his best ability.

Pin It on Pinterest