Financial TimesAmericas' Fastest-Growing 2025
Certified PartnerOdoo Gold · Adobe Solution · Shopify Premier partnershipsOdoo Gold · Adobe · Shopify Premier partnerSee all
One business dayA senior architect replies to every inquiry · +1 (631) 897-7276Architect reply within one business dayLet's talkCall us
Inc. Regionals 2025Fastest-growing private companies in AmericaInc. Regionals 2025 honoreeSee awards
Americas' Fastest-Growing Companies 2025Recognized by the Financial TimesFT Fastest-Growing Companies 2025See the rankingRanking
4.8 / 5 on Clutch265 verified client reviews4.8/5 on Clutch · 265 reviewsRead the reviews
4.8 · 265 Clutch reviews
US United States
May 7, 202510 min readUpdated on October 2, 2026

How to run a Shopify data migration without losing order history

· Vice President, eCommerce and ERP
How to run a Shopify data migration without losing order history

The new theme looks great in staging. Then a loyal customer signs in on launch day, opens their account and finds no order history. Support gets the first ticket before lunch.

That's a Shopify data migration failure, not a design one. This guide is for the ecommerce or IT lead who owns the move. It runs in the order the work should happen, from the first record count to the post-launch reconciliation. The steps follow Shopify's own migration checklist, with the data work pulled forward. That's where schedules usually slip.

Before you start

Get four things in place before anyone exports a file:

  • A record count for every data type on the old store: products, variants, customers, orders, gift cards, blog posts, pages and URLs. These numbers are your sign-off at the end.
  • A Shopify development store for test loads, separate from the store you'll launch.
  • One owner for the data. Treat it as its own workstream, apart from the theme. You can migrate onto a stock theme and redesign later, or the other way around.
  • One controlled place for exports. Customer files hold names, emails, phone numbers and addresses. Keep them in a single location and delete working copies after cutover.

It's also worth a last check that Shopify fits the catalog. Products that need more than 3 options or 2,048 variants require a third-party app or custom theme code. Deep B2B pricing rules and heavy custom checkout logic deserve a test before you commit.

Sometimes the better move is to stay put. On Adobe Commerce, when the integrations are the hard part rather than the platform, an Adobe Commerce upgrade or rebuild may cost less than a replatform. If you're still choosing, compare Shopify with other ecommerce platforms before you plan the move.

1. Decide what's worth moving

List every data type and give each one a verdict: migrate, archive or drop. Discontinued products with no traffic can usually stay behind. This is also the moment to remove obsolete products and merge duplicate customer accounts, while the data still lives in a spreadsheet.

Order history is the big call. Shopify's Plus launch checklist says to migrate, at minimum, every order inside your return policy window, and it recommends the past 2–5 years. Older orders can sit in an archive that finance and support can still search.

2. Choose a Shopify data migration route for each data type

Shopify's data transfer guide lists 5 ways to import data, from least to most technical. They are copy and paste, CSV import, a migration app, a Shopify Partner or a custom build on the API. Not every route carries every data type, so choose per data type rather than per project.

Data type CSV import Migration app Shopify API
Products Yes Yes Yes (GraphQL product APIs)
Customers Yes Yes Yes
Historical orders No Yes Yes (orders and transactions)
Gift cards and store credit No Yes Yes (gift card API)
Blog posts No Yes Yes
Pages No Yes Yes
URL redirects Yes (redirect CSV) Some apps Yes

The table draws on Shopify's transfer guide, its URL redirect docs and its API reference. Read the orders row first. If you need order history, a CSV file alone won't get you there.

CSV import

Shopify's built-in CSV import handles products and customers. The product file can't exceed 15 MB, and neither can the customer file. Split large catalogs into several files rather than fighting the cap. The formatting rules that trip up a first import are covered under troubleshooting below.

Shopify's Store Migration app

Store Migration is Shopify's own free app in the Shopify App Store. It imports product and customer data from Square, WooCommerce, Etsy, Wix, Amazon, eBay, Clover and Lightspeed R/X (Vend).

The gaps are wide, and Shopify says so in its July 2026 overview. The app doesn't import orders, collections, navigation menus, SEO data, blog posts, pages or reviews. Magento isn't a supported source either, so Magento and Adobe Commerce stores need another route.

For a store with a few hundred products on a supported platform, though, this app plus a CSV cleanup may be the whole job. You don't need a consultancy for that.

Third-party migration apps

Several App Store apps move what Store Migration leaves behind. Their listings differ, and they change, so check the exact data types each one moves from your platform.

Matrixify works through spreadsheets. It handles products, customers, orders, redirects, metafields, metaobjects and store credits. Its listed sources include Magento, WooCommerce, BigCommerce, Lightspeed and WordPress. It suits teams that want full control over the file.

LitExtension runs automated platform-to-platform transfers. Its listing covers products, customers, orders, reviews and 301 redirects, with a free demo migration on a small sample.

Cart2Cart also automates the transfer. It lists WooCommerce, Magento, Wix, BigCommerce and PrestaShop among its sources, and it lets you test a migration before going live.

Custom build on the GraphQL Admin API

Custom work earns its cost when your data doesn't fit any app's mapping. B2B price lists, custom attributes, ERP-linked SKUs and a decade of orders are the usual reasons. Build on the GraphQL Admin API. Shopify made the REST Admin API legacy on October 1, 2024, and the current stable API version is 2026-10.

For volume, use bulk mutation imports. You upload a JSONL file of up to 100 MB. From API version 2026-01, each app can run up to 5 bulk mutations per shop at once. Orders go in through the orderCreate mutation, which Shopify describes for importing orders from an external system.

3. Clean the data and map every field

Match every source field to a Shopify field, then decide where the leftovers go. Beyond the option and variant limits, each product takes up to 250 media items. Attributes that don't fit the standard fields belong in metafields.

Fix duplicates, broken image links and inconsistent units at this stage. A spreadsheet is far cheaper to correct than a live catalog.

4. Build the redirect map now, not in launch week

List every product, collection, category, page and blog URL on the old store, and map each one to its new Shopify URL. Shopify allows 100,000 URL redirects on standard plans and 20,000,000 on Plus. You can import them in bulk from a CSV under Content, Menus and URL redirects.

One rule catches people out. Shopify redirects only from broken URLs, so if the old path still loads a page, the redirect won't fire.

A complete map prevents 404 errors and keeps the search authority those pages earned. A rushed one misses the long tail: old category pages, blog posts and product URLs that still carry links and bookmarks. The rankings go with them. For the SEO side of a platform switch, see the guide to switching platforms without losing SEO.

5. Run a test load on a development store

Move a sample first: a few hundred products, a slice of customers and a month of orders. Check variants, images, store settings, shipping zones, taxes and payment gateways. Then open a few orders and confirm each one links to the right customer.

Expect throttling. On trial and development stores, orderCreate allows a maximum of 5 new orders per minute. Use the test run to prove the mapping, not to time the full load.

6. Import products, then customers, then orders

Shopify's transfer guide is explicit about sequence. Products go first, then customers, then historical orders, so each order connects to the right records. Blogs, pages and redirects can go in any order.

Before the order load, turn off new order notifications in the Shopify admin. Otherwise every staff member who receives them, including the account owner, gets an email for each imported order. On a 200,000-order import, that's a long morning.

7. Switch customers to the new sign-in

Shopify is clear that you can't migrate customer passwords from another store with a CSV. New stores don't need them. Shopify deprecated legacy customer accounts on February 26, 2026, and they're no longer available to new stores.

In the current customer accounts, shoppers sign in with their email and a one-time code. So skip the password reset campaign. Send a short note at launch telling customers the store has moved and how sign-in works now.

Saved payment methods are a separate project, and subscription stores feel it most. Shopify's payment method migration guide says moving card numbers (PANs) requires the Shopify Plus or Enterprise plan. Token migration is available on all plans. Card-number migration through Shopify Professional Services covers credit cards only. Wallets such as Apple Pay and Google Pay, and bank account details, aren't supported.

8. Move gift card balances last

Balances keep changing while the old store is live, so the Plus launch checklist puts gift cards right before launch. Imported gift cards can't be edited or deleted, and a card number can't be used again. Keep a full record of card numbers outside Shopify and reconcile balances after cutover.

9. Run the delta and cut over

Between the full import and launch day, the old store keeps taking orders and signups. Freeze changes on the old store, then import only what changed since the last load. Switch the domain, publish the redirects and place test orders.

Shopify's checklist calls for test orders that cover successful and failed payments, refunds and fulfillment. Train support and merchandising staff on the Shopify admin before cutover, not after. For US retailers, pick a date well clear of the Black Friday and Cyber Monday code freeze.

10. Reconcile, then watch for a month

Compare counts between the old store and the new one: products, variants, customers, orders and order totals. "It looks fine" isn't a sign-off; matching numbers are. Spot-check 20–30 records of each type by hand.

Submit your Shopify sitemap in Google Search Console. For the first month, check its 404 reports, site performance, checkout errors and support tickets daily. That's how you catch what no test run found.

Troubleshooting

The CSV import fails before it starts

Check the file against Shopify's product CSV rules. It needs UTF-8 encoding, and column headers are case-sensitive. A missing header fails the whole import. Once an import starts, it can't be canceled, so validate on the development store first.

Customers are missing after the import

Shopify skips customers with a duplicate email or phone number. The marketing consent fields also accept only "yes" or "no." Compare the skipped rows against your source export and merge the duplicates at source.

Variant IDs changed after a second CSV pass

Editing Option1, Option2 or Option3 values in a later CSV deletes the existing variant IDs and creates new ones. Anything tied to those IDs breaks. Settle option values before the first full load and leave them alone afterward.

Staff inboxes filled up overnight

Order and gift card imports can email customers and staff. Switch notifications off before the next batch, and turn them back on once the import finishes.

An old URL still lands on the wrong page

The redirect exists but the old path still loads a page, so Shopify ignores it. Remove or rename the page at that path and the redirect starts working.

FAQ

Is there a Shopify migration assistant?

Shopify's own free tool is called Store Migration. It imports products and customers from Square, WooCommerce, Etsy, Wix, Amazon, eBay, Clover and Lightspeed R/X (Vend). It doesn't import orders, so stores that need order history pair it with a third-party app, a CSV workflow or the API.

Can I import historical orders into Shopify with a CSV?

Not with Shopify's built-in CSV import, which covers products and customers only. Historical orders need a migration app or the Admin API, such as the orderCreate mutation. Turn off new order notifications before you import, or staff get an email for every order.

Can I migrate customer passwords to Shopify?

No. Shopify says you can't migrate customer passwords from another online store using a CSV. New Shopify stores use customer accounts where shoppers sign in with an email and a one-time code, so no password is needed.

When to bring in Shopify data migration services

A small catalog on a supported platform rarely needs outside help. Bring in a partner when the data is the risk: large order histories, B2B accounts, custom attributes, ERP or OMS links, or a launch date that can't move. Shopify lists hiring a Partner as one of its 5 migration routes.

As a Shopify Plus Partner, Brainvire's Shopify development team would start where this guide does: your record counts, a field map and a sample load on a development store. Send your record counts and source platform, and the team can map a route for each data type.

ShareLinkedInXEmail

Related reading

Planning a commerce build or replatform?

Explore ecommerce services