User to Cart

Migrate Magento to Shopify without losing SEO, customers or custom features

To migrate Magento to Shopify, you move the data with a migration tool, then rebuild what makes your Magento store yours: EAV attributes as metafields, customer-group pricing as Shopify B2B or discount logic, extensions as apps and Functions, and every indexed URL as a 301 redirect. The data move takes days. The rebuild and the redirects are what take the planning. This applies both to Adobe Commerce and to Magento Open Source, and to moves onto Shopify and Shopify Plus.

What moves easily

  • Simple and configurable products with images, prices and stock.
  • Categories, as collections.
  • Customers and addresses.
  • Order history, as archived orders.
  • CMS pages and blocks, as Shopify pages (with some reformatting).

The hard parts, Magento-specific

Product types

MagentoShopify
SimpleProduct with one variant
ConfigurableProduct with variants (check option and variant limits)
BundleBundle via a bundles app or Cart Transform Function
GroupedCollection, bundle, or product recommendations
Virtual / downloadableProduct without shipping + a digital downloads app
Custom options (text, file, date)Line item properties via theme/app, or an options app

Magento's custom options, such as engraving text or file uploads priced per option, have no single native Shopify equivalent. They become line item properties captured by the theme or an options app, with pricing handled by an app or a Cart Transform Function.

EAV attributes → metafields

Magento stores product data as attributes in attribute sets. On Shopify:

  • attributes that define variants (size, colour) become product options;
  • filterable and descriptive attributes (material, compatibility, specs) become product or variant metafields with a type (text, number, dimension, list, reference);
  • repeated structured content (size charts, ingredient lists, care guides) becomes metaobjects, referenced from products.

Create the metafield definitions first, then import. The theme and search filters can then use them.

Customer groups, tier prices and catalog price rules

  • Tier prices (quantity breaks) map to volume pricing in Shopify B2B, or to a discount Function for D2C.
  • Customer-group prices for wholesale map to B2B catalogs assigned to companies. Plan availability applies: non-Plus plans get up to 3 active B2B catalogs, while Plus gets unlimited catalogs and direct assignment to companies and locations. See Shopify B2B.
  • Catalog and cart price rules become native Shopify discounts where possible, and discount Functions where the logic is more complex.

Multi-store: websites and store views

Store views for language and currency usually become Shopify Markets in one store. Separate websites with different catalogs, brands or B2B rules may be better as separate stores. Moving several websites into one store is itself a design decision, not a data-mapping one.

Extensions → apps, extensions, Functions

List every installed Magento extension and custom module and what it does. Then decide for each:

  • replaced by a native feature (common for SEO, basic reviews, simple shipping rules);
  • replaced by an App Store app;
  • rebuilt as a custom app: ERP sync, custom pricing, quote requests, custom checkout fields, via Checkout UI extensions and Functions;
  • dropped, because nobody uses it.

URLs and redirects

Magento URLs often end in .html, include category paths and have several variants per product (with and without category path, old URL rewrites). Collect them from:

  • Magento's URL rewrite table (it holds historical URLs too);
  • the XML sitemap;
  • analytics landing pages and Search Console's indexed pages;
  • backlink data.

Map each product, category and CMS URL to its Shopify equivalent, /products/handle, /collections/handle or /pages/handle, and import the redirects in bulk. Decide what happens to layered-navigation URLs that are indexed: usually redirect them to the parent collection.

Customers and passwords

Magento password hashes can't be imported. Customers sign in to Shopify's current customer accounts with email and a one-time code. Send a pre-launch email explaining this. If you have B2B customers, create their companies, locations and contacts at the same time.

Integrations

Magento stores often have an ERP, PIM or WMS connected through a custom module. That integration must be rebuilt against Shopify's GraphQL Admin API and webhooks. See Shopify ERP integration.

Large catalogs: import performance

For catalogs with tens of thousands of variants, one API call per product is slow and hits rate limits. Custom import scripts should use the GraphQL Admin API's bulk mutation operations, which upload a JSONL file and let Shopify process it asynchronously. Import in stages: products and variants first, then metafields and media, then inventory per location. Check counts after each stage.

Step-by-step plan

  1. Audit: catalog size and product types, attribute sets, customer groups, price rules, store views, extensions, integrations and URL rewrites.
  2. Decide the store structure: one store with Markets, or several stores. Choose your Shopify plan with Plus-only features in mind.
  3. Define metafields, metaobjects, options and B2B set-up.
  4. Test migration of a representative sample: configurables, bundles, custom options, B2B customers. Compare field by field.
  5. Full migration of products, customers and history.
  6. Build the replacements for extensions: apps, Functions, checkout extensions and integrations.
  7. Redirects: generate from the rewrite table and sitemap, import, and test a large sample automatically.
  8. UAT: full order scenarios per market and customer type, including refunds and integration round-trips.
  9. Cut-over: freeze or delta-migrate orders placed during the switch, update DNS, monitor 404s and orders.

Pre-launch checklist

  • Top landing pages from analytics all return 200 or a single 301 to a relevant page. No chains, no 404s.
  • Every configurable product has the right variants, prices and stock per location.
  • Metafields show on product pages and in filters.
  • B2B customers see their catalog prices and payment terms.
  • Discounts that replaced price rules calculate the same totals as Magento on test carts.
  • ERP and other integrations receive test orders and write back stock and fulfillments.
  • Transactional emails, tax and shipping per market are correct.
  • Imported historical orders didn't trigger emails or stock changes.
  • Customers have been told how to sign in.

Frequently asked questions

How do I transfer Magento to Shopify?

Use a migration app or service to move products, customers and orders, then handle what it doesn't: map Magento attributes to metafields, rebuild customer-group pricing and extensions, create 301 redirects for every indexed Magento URL, and test end-to-end before switching DNS. Treat the data move as one step of the project, not the whole project.

What happens to Magento customer passwords?

They can't be moved: Shopify doesn't import password hashes from other platforms. With Shopify's current customer accounts, customers sign in with their email address and a one-time code, so they don't need a password. Tell them in advance so the first sign-in isn't a surprise.

Do I need Shopify Plus when migrating from Magento?

Not necessarily. Many Magento stores fit on a standard Shopify plan. Plus matters if you need checkout UI extensions on the information, shipping and payment steps, custom apps with Shopify Functions, Launchpad, expansion stores, or B2B beyond what non-Plus plans include.

How are Magento configurable and bundle products migrated?

Configurable products become Shopify products with variants, subject to Shopify's limits on options and variants per product, so very large configurables may need restructuring. Bundle products become Shopify bundles, built with a bundles app or a Cart Transform Function. Grouped products are usually rebuilt as collections or bundles.

Can Magento store views move to Shopify Markets?

Often, yes. Magento store views for languages and currencies usually map to Shopify Markets with translations and local currencies in one store. Separate Magento websites with different catalogs, brands or B2B rules may be better as separate Shopify expansion stores.

  • Migrations

    Migrating to Shopify from Magento, WooCommerce, BigCommerce, Wix, Squarespace, WordPress or another Shopify store: what migration tools handle, what they don't (redirects, customer accounts, subscriptions, custom data, custom features) and a launch checklist.

  • WooCommerce to Shopify

    How to migrate WooCommerce to Shopify: what migration tools move, and how to handle what they don't: WooCommerce Subscriptions, ACF and custom fields, variable products, plugins, WordPress content, URLs and redirects.

  • Shopify B2B

    What Shopify B2B includes on each plan since April 2026, how companies, catalogs, volume pricing, payment terms and purchase orders work, and which B2B requirements need a custom Shopify B2B app or ERP integration.

  • ERP integration

    How Shopify ERP integrations work with SAP, Microsoft Dynamics 365, Acumatica and Odoo: which system owns what, order, inventory, pricing and fulfillment flows, connector vs middleware vs custom app, and a decision checklist.

  • Hire a Shopify app developer

    Freelance Shopify app developer for custom app development, ERP and accounting integrations, Checkout UI extensions and Shopify Functions. How an engagement works and what to prepare.