Before the move
Before anything moves, write three lists: the data that moves, every URL that will change, and every app or integration the new store needs.
Your data
Products and variants, images, customers, orders, gift cards and store credit, reviews, blog posts and pages. Shopify lists gift cards, store credit and historical orders as data you move with migration apps or its APIs.
Every URL
Crawl the old store and export every URL with traffic or links, then map each one to its new Shopify address. Shopify puts products under /products and collections under /collections, so many addresses change.
A baseline
Record clicks, top pages and rankings in Search Console, plus sessions, conversion rate and revenue, so you can compare after launch.
Apps and integrations
List each plugin, app and connection, such as your ERP, email, reviews and subscriptions, with what replaces it on Shopify.
A launch date
Pick a date away from your busiest weeks, and agree a content freeze for the last days before it.
Moving the data
Shopify's own advice is to import products first, then customers, then any historical orders.
Products
Import products with a CSV file, Shopify's Store Migration app where it's available, or a migration app. Then check that counts, variants, prices, SKUs and images match the old store.
Customers
Customer passwords can't be moved with a CSV. Shopify's answer is to invite customers to create new passwords, so plan that email for launch.
Email consent
Import each customer's email marketing consent, and mark anyone who unsubscribed or never opted in as no. Engagement history, such as past opens and clicks, doesn't move.
Orders
Past orders move with migration apps or Shopify's APIs, not with a customer CSV. Each imported order can send your staff a new order email, so plan for that before the import.
Gift cards
Shopify's Plus launch checklist moves gift card data right before launch. Gift cards can't be edited or deleted in Shopify, so check the file first.
URLs, 301 redirects and SEO
Every old URL needs a 301 redirect to its closest new Shopify page before the domain moves, and Google recommends keeping those redirects for at least a year.
Import the redirect map
Shopify imports redirects from a CSV file under Content, then Menus, then URL redirects. A store can hold up to 100,000, or 20,000,000 on Plus, and each one works as soon as it is added.
One old URL, one closest page
Google warns against sending many old URLs to one unrelated page, such as the home page. Map each product, collection, page and post to its own replacement.
No chains
Point each old URL straight at its final address, not through an older redirect.
Keep what ranks
Carry over the titles, meta descriptions and main text of the pages that bring the most traffic, and keep their images' alt text.
Update internal links
Google's site move guide says to change the new site's internal links to the new URLs. Menus, footer links and links inside text all count.
Canonical tags
Google wants each new URL to carry a canonical tag pointing to itself. Shopify adds canonical tags on its own, so check that your theme kept them.
Theme, apps and payments
After the data, Shopify's own migration steps set up the theme, shipping, taxes, a payment provider, test orders, staff and the domain, in that order.
Theme
Build or adapt the theme for every template you use: home, collection, product, cart, pages, blog and customer accounts.
Apps
Install the apps that replace your old plugins, and build small features into the theme instead of adding more apps. Most app charges then appear on your Shopify bill.
Shipping and taxes
Set shipping rates for every zone you ship to, and check the tax settings for each country or state.
Payments
Set up Shopify Payments or another provider. With another provider, Shopify adds a fee of 2% on Basic, 1% on Grow, 0.6% on Advanced and 0.2% on Plus.
Staff
Add staff accounts with only the permissions each person needs.
Testing before launch
Place real test orders before launch with every payment method, a discount code, a gift card, a refund and a shipping rate for each zone.
Orders and refunds
Run each payment method from start to finish, then refund one order and cancel another.
Emails
Check order, shipping and account emails, and any Klaviyo flows, from the new store.
Redirects
Run the full list of old URLs through a crawler. Each should return a 301 to the right page in one step.
Tracking
Check that analytics, ad pixels and conversion events record a test purchase once, not twice.
Phones and keyboards
Go through the buying path on a phone and with a keyboard only, from the home page to the order confirmation.
Launch day
On launch day, point the domain at Shopify, take the store out of private mode and check the redirects, since a domain connection usually takes effect within two hours but can take up to two days.
Connect the domain
For a domain from another provider, point its A record to Shopify's IP address 23.227.38.65 and its www CNAME to shops.myshopify.com. You keep paying for and renewing it at that provider.
Turn off private mode
New Shopify stores start in private mode, which hides every page from visitors and search engines. Turn it off once the domain is connected.
Submit the sitemap
Submit the new sitemap in Search Console, which Google says helps it learn the new URLs.
Check the live store
Open your top 20 old URLs, place one real order and follow it through to fulfillment.
Invite customers
Send the account invitations, so returning customers can set their new passwords.
After launch
For the first weeks after launch, compare Search Console, rankings and sales against your baseline every week, and fix each new 404 with a redirect.
Watch for 404s
Search Console and your crawler show old URLs that still return 404. Add a redirect for each one that had traffic or links.
Compare with the baseline
Clicks, rankings, conversion rate and revenue, week by week. Look at the trend over several weeks, not a single day.
Speed
Check Core Web Vitals once real visitors arrive, and remove any app you no longer need.
Close the old store last
Export a final backup from the old platform before you cancel it.
When to get help
A migration is worth handing over when the store has search traffic you can't afford to lose, custom features or integrations.
Rolling Pandas migration prices and timelines
Etsy
- Price
- From $5,000
- Timeline
- 2 to 4 weeks
Wix
- Price
- From $8,000
- Timeline
- 3 to 5 weeks
Squarespace
- Price
- From $8,000
- Timeline
- 3 to 5 weeks
BigCommerce
- Price
- From $8,000
- Timeline
- 4 to 6 weeks
WooCommerce
- Price
- From $8,000
- Timeline
- 4 to 8 weeks
PrestaShop
- Price
- From $8,000
- Timeline
- In your free plan
OpenCart
- Price
- From $8,000
- Timeline
- In your free plan
Magento
- Price
- From $15,000
- Timeline
- 6 to 10 weeks
Every migration starts with a free migration plan within 48 hours, with the fixed price in it.
Shopify migration services