Platforms · 12 min

Magento to Shopify migration: a step-by-step guide with a data map and redirect plan

Magento to Shopify migration in 10 steps: what moves and what doesn't, a data mapping table, a redirect plan, app replacements, Plus or not, and a cutover list.

Feature graphic: Magento to Shopify migration: a step-by-step guide with a data map and redirect plan

A Magento to Shopify migration moves your catalog, customers, order history, content and URLs from Magento Open Source or Adobe Commerce onto Shopify, and replaces every extension and custom module with a Shopify app, a setting or a small custom build. The data is the easy part. The work that decides the outcome is mapping Magento's product types and customer groups onto Shopify's simpler model, deciding what not to bring, and redirecting every old URL before the domain moves. Below are ten steps in the order we run them, a mapping table, a redirect plan and a cutover checklist. Shopify and Adobe facts were checked on their own documentation on 24 October 2026.

Step 1: Decide whether to leave Magento at all

Some stores should stay. Magento models complex catalogs, many inventory sources and negotiated B2B pricing well; a hosted platform imitates some of that with apps. Our Adobe Commerce and Magento page sets out when staying is the better call. The pressure to decide usually comes from the support calendar. On Adobe's lifecycle policy, regular support for 2.4.6 ended on 11 August 2026 and for 2.4.5 on 12 August 2025; 2.4.7 is supported to 31 May 2027, 2.4.8 to 31 May 2028 and 2.4.9 to 31 May 2029. If you are on 2.4.6 or older, the real choice is between an upgrade project and a migration project, and both cost money.

Leaving makes sense when the catalog and checkout are standard, upgrades keep getting postponed, and most of your engineering budget goes into keeping the platform running rather than selling.

Step 2: Inventory the Magento store

Build one spreadsheet before anyone touches data. One tab each for:

  • Catalog. Product counts by type (simple, configurable, bundle, grouped, virtual, downloadable), attribute sets and the attributes on each, categories, and the largest configurable product by number of children.
  • Customers. Account counts, customer groups, and whether groups drive prices, tax classes or catalog visibility.
  • Orders. How many years of history the business actually uses, and for what: reorders, customer service, reporting or tax.
  • Extensions and custom modules. Every one, what it does on the storefront or in the admin, and who still depends on it.
  • Integrations. ERP, PIM, WMS, marketing, payments and tax, with the direction of each data flow.
  • URLs. Every indexed URL from the sitemap, a full crawl and 12 months of Search Console data, with clicks and referring domains per URL.
  • Store views and websites. Each language, currency and country, and which domain serves it.

Step 3: Check what moves and what does not

Shopify's migration guide lists what can be moved: products, customers, historical orders, gift cards, certificates and store credits, blogs and pages. What it cannot carry is anything that lives in Magento's code.

Moves with data toolsMoves only with mapping workDoes not move
Products, variants and imagesConfigurable products over Shopify's option and variant limitsCustomer passwords
Customers and addressesBundle and grouped productsExtensions and custom modules
Historical ordersCustomer groups and tier pricesThe Magento theme and layout XML
Gift cards and store credit balancesStore views and multi-website set-upsCheckout customizations
CMS pages and blog postsCMS blocks and widgetsAdmin users and roles (recreate as staff)
URL rewrites, as redirectsProduct reviews (through a review app)Cart price rules as code (rebuild as discounts)

Passwords. Shopify's current customer accounts sign customers in with a one-time six-digit code sent by email, and say a password is not required. Migrated customers therefore sign in with their email and a code, with no password to carry over. If your theme still uses legacy customer accounts, check Shopify's upgrade guide before launch and plan the email that tells customers how to sign in.

Step 4: Map Magento's data model to Shopify

This table is the core of the plan. Agree every row with the people who run the store before importing anything.

MagentoShopifyWatch for
Simple productProduct with one variantSKU and barcode carried as variant fields
Configurable product with child productsOne product with variantsShopify allows up to 2,048 variants and three options per product. A fourth attribute becomes a metafield or a split product
Bundle or grouped productA bundles app, or a custom build on the Cart Transform FunctionPrice and stock rules for each component
Attribute sets and custom attributesMetafields and metaobjectsDecide which attributes drive filters and which are display only
CategoriesCollections, manual or automated by ruleDeep category trees become collections plus menus
Customer groupsCustomer tags and segments, or B2B companiesGroup-specific prices need B2B catalogs or an app
Tier pricesB2B quantity price breaks, or a discount appRetail tier pricing differs from B2B volume pricing
Store views and websitesShopify Markets, or separate stores on PlusTranslations, currencies and domains per market
CMS pages and blocksPages, and sections in the themeWidgets are rebuilt as theme sections
Orders and invoicesHistorical ordersImport after products and customers
URL rewritesURL redirectsShopify paths are fixed (step 7)

Step 5: Export from Magento

Magento's admin export, under System > Data Transfer > Export, writes CSV files for six entity types: advanced pricing, products, customer finances, customers main file, customer addresses and stock sources. Orders are not among them, so order history comes out through the REST or GraphQL API, a direct database query, or a migration tool that reads the database. Export from a recent copy of production, not the live store, and repeat the export for the final delta at cutover.

Clean while you export: disabled products nobody will sell again, customers with no orders in years, test orders, duplicate attributes and images over the size you need. Every row you drop is a row you do not have to map, import and check.

Step 6: Import into Shopify in the right order

Shopify lists five ways to move data, from copy and paste through CSV import, a migration app, a Shopify Partner, to a custom build on the Shopify API. For a Magento store with thousands of SKUs and years of orders, it is usually a migration app or a scripted import on the GraphQL Admin API. Two rules from Shopify's guide matter most:

  1. Import products first, then customers, then historical orders, so each order links to its customer and its products.
  2. Turn off staff new-order notifications before importing orders, because imported orders trigger them. Turn them back on afterwards.

Run a trial import of a hundred products, a hundred customers and their orders into a development store. Check every field on the product page, the customer record and the order, then import the rest. Reconcile counts and revenue totals per year against Magento before you sign off.

Step 7: Build and test the redirect plan

Magento URLs rarely survive the move. A product at /mens/oxford-shirt-blue.html becomes /products/oxford-shirt-blue, and a category at /mens/shirts.html becomes /collections/shirts. Every old URL with traffic, backlinks or an index entry needs a 301 to its closest new page. Shopify's redirect rules shape the plan:

  • Redirects are imported as a CSV under Content > Menus > URL redirects. Download Shopify's sample file and match its columns.
  • A store can hold up to 100,000 redirects; Shopify Plus stores up to 20,000,000. Large Magento catalogs with layered-navigation URLs can exceed the lower figure, so redirect only URLs that carry traffic or links.
  • A redirect only fires when the old URL is broken. If the path still loads a page on Shopify, the redirect does nothing.
  • Fixed Shopify paths such as /products and /collections cannot be redirected as paths, although an individual old product URL under them can.
Old Magento URLNew Shopify URLClicks, last 12 monthsReferring domainsTested on staging
/mens/oxford-shirt-blue.html/products/oxford-shirt-blue2,14011[Date]
/mens/shirts.html/collections/shirts8604[Date]
/catalog/product/view/id/412//products/linen-trousers352[Date]
/about-us/pages/about-us1203[Date]
/blog/care-guide.html/blogs/news/care-guide4109[Date]

The rows are examples; yours come from the URL tab in step 2. Test before launch by running every old URL through a crawler in list mode and confirming one 301 to a live page, with no chains.

Step 8: Replace extensions with apps or custom builds

Magento extension or moduleShopify replacement
Layered navigation and searchShopify's storefront filters, or a search app for large catalogs
ReviewsA review app with an import from Magento's review export
Loyalty, gift cards, subscriptionsNative gift cards plus loyalty and subscription apps
Custom pricing and promotionsShopify discounts, or a Discount Function in an app
Shipping rate and delivery rulesShipping settings, a carrier app, or a Delivery Customization Function
Checkout fields and stepsCheckout UI extensions
ERP, PIM and WMS connectorsA maintained connector app, or a custom integration on the Admin API
B2B quoting and company accountsShopify B2B, plus an app or custom app for quote workflows

Two platform rules matter here. Checkout UI extensions on the information, shipping and payment steps are available only on Shopify Plus, and custom apps that contain Shopify Functions run only on Plus stores. Public App Store apps that ship Functions work on any plan. So a store that needs private checkout or pricing logic is, in practice, a Plus store.

Step 9: Choose Shopify or Shopify Plus

Our Shopify vs Shopify Plus comparison covers the prices and the revenue where Plus pays for itself, so here are only the differences a Magento migration runs into. For B2B, Shopify's features-by-plan page puts companies, locations, quantity rules, price breaks, net terms and vaulted cards on Basic, Grow, Advanced and Plus, but limits the non-Plus plans to three active B2B catalogs and keeps direct company catalogs, deposits and partial payments for Plus.

Need carried over from MagentoShopify plansShopify Plus
More than 100,000 redirectsNoUp to 20,000,000
Custom fields or logic on checkout stepsNoCheckout UI extensions
Private pricing, delivery or payment logicPublic apps onlyCustom apps with Functions
B2B with many price listsUp to 3 active B2B catalogsUnlimited catalogs, direct company catalogs
Deposits and partial payments for B2BNoYes

Step 10: Cut over and watch the first month

WhenTaskDone
2 weeks beforeData map and redirect map signed off; content freeze date agreed; apps installed and configured[ ]
1 week beforeFull import on the new store; counts and revenue reconciled; test orders through every payment method and shipping zone; taxes checked[ ]
1 week beforeRedirects tested in list mode; integrations running against the new store; DNS TTL lowered; Magento backed up in full[ ]
Launch dayFinal delta import of orders and customers since the freeze; order notifications back on; redirects imported; domain connected[ ]
Launch dayTop 50 old URLs checked by hand; sitemap submitted in Search Console; customer sign-in email sent[ ]
Days 1 to 7404s, redirect errors and failed integration messages checked daily; Magento kept read-only for look-ups[ ]
Day 30Clicks and conversion compared with the 30 days before; remaining 404s redirected; Magento hosting scheduled for shutdown[ ]

What drives the timeline and the cost

Five things decide the size of a Magento migration far more than SKU count does: the number of product types that need remapping, how many extensions and custom modules must be replaced, the integrations that must keep running through the cutover, B2B pricing and company accounts, and whether the move includes a redesign. Years of order history and multi-store set-ups add reconciliation time.

Gigabit's Platform Migration starts at $7,000 fixed, from 4 weeks: data migrated and reconciled, a full redirect map, a rehearsed cutover with a rollback plan and 30 days of post-launch monitoring. Magento sources are quoted above that base, as a fixed price before work starts, up to about $40,000 for large multi-store catalogs. If the migration includes a new theme, a Store Build starts at $9,000 fixed. One custom integration, such as an ERP order sync rebuilt for Shopify, is the AI Quick Win Sprint at $8,000 fixed over 3 weeks, and custom apps and Functions after launch run on an embedded engineer at $3,000–$7,500 per engineer per month. Gigabit is a Shopify Partner; our Shopify page covers the rest of the work, and if the inventory in step 2 says you should stay on Magento, we will say so.

Platforms · FAQ

Questions this raises

Short answers to the questions this article is written to settle.

How long does a Magento to Shopify migration take?

It depends on product types, extensions, integrations and B2B rules more than on SKU count. A simple catalog with few extensions moves far faster than a multi-store B2B set-up with an ERP. Most of the time goes into data mapping, replacing extensions and testing redirects and integrations, not into the import itself. Plan a content freeze of a few days around cutover.

Can customer passwords be migrated from Magento to Shopify?

No password is carried over. Shopify's current customer accounts sign customers in with a one-time six-digit code sent to their email, and say a password is not required, so migrated customers simply sign in with their email address. If your store uses legacy customer accounts, check Shopify's upgrade guide and plan a launch email that explains how to sign in.

Will I lose SEO rankings moving from Magento to Shopify?

You can keep most of them if every old URL with traffic or backlinks gets one 301 to its closest new page, titles and descriptions carry over and internal links are updated. Shopify product and collection URLs follow fixed patterns, so nearly every Magento URL changes. Shopify allows 100,000 redirects on standard plans and 20,000,000 on Plus, and a redirect only fires when the old URL no longer loads a page.

Do I need Shopify Plus when migrating from Magento?

Not always. You need Plus for checkout UI extensions on the information, shipping and payment steps, for custom apps that use Shopify Functions, for more than three active B2B catalogs, for B2B deposits and partial payments, and for more than 100,000 redirects. A store with a standard checkout and retail pricing usually fits Basic, Grow or Advanced. Our Shopify vs Shopify Plus comparison covers the prices.

What happens to Magento configurable and bundle products on Shopify?

A configurable product becomes one Shopify product with variants, within Shopify's limit of 2,048 variants and three options per product; a fourth attribute becomes a metafield or a separate product. Bundle and grouped products have no direct equivalent and are rebuilt with a bundles app or a custom app on the Cart Transform Function.

Keep reading

Related insights

The next articles on the same decision.

AI coding tools

Cursor pricing in 2026: every plan, how usage works and what a team of 5, 20 or 50 pays

Cursor pricing in 2026: Plus $8, Premium $30, Super $100, Ultra $200 a month, Teams from $30 a seat. How the…

Platforms

n8n pricing in 2026: every plan, and what self-hosting really costs

n8n pricing in 2026: Cloud from €20 a month for 2,500 executions, Business €667, a free self-hosted edition,…

Platforms

Webflow pricing in 2026: plans, seats, add-ons and what a site really costs

Webflow pricing in 2026: Premium is $25 a month billed yearly, plus $15 to $39 per editor seat. Every plan, …

Stop reading, start shipping

Want this running in your stack?

If this is the kind of work you're trying to get into production, a 30-minute call with an engineer is the fastest path to a scoped plan with a price.