Home » Shopify » Migration to Shopify

How to Migrate Your Store to Shopify

Migrating to Shopify from another platform takes 1 to 4 weeks depending on the size of your product catalog and the complexity of your data. The critical steps are exporting your data (products, customers, orders), importing it to Shopify, setting up 301 redirects from old URLs to new ones (to preserve your SEO rankings), and switching your domain's DNS to point to Shopify. Keep your old store running throughout the process and only switch over when the new store is fully tested.

Before You Start: Plan the Migration

A botched migration can cost you months of SEO rankings, lose customer data, and break hundreds of links pointing to your store from search engines and other websites. Planning prevents these problems.

Document everything on your current store: Make a list of all your product URLs, collection/category URLs, blog post URLs, and static page URLs. Export your product data including titles, descriptions, images, prices, variants, and SKUs. Export your customer list with email addresses, names, and addresses. Export your order history if you want to reference it after migration. Save copies of your store policies (return, shipping, privacy, terms).

Map URLs before importing anything: Shopify uses a different URL structure than most platforms. WooCommerce products at /product/blue-widget/ become /products/blue-widget on Shopify. BigCommerce categories at /categories/summer-collection/ become /collections/summer-collection on Shopify. Blog posts at /blog/post-title/ become /blogs/news/post-title on Shopify. Create a spreadsheet mapping every old URL to its new Shopify equivalent. This spreadsheet becomes your redirect list.

Timeline: Keep your old store live throughout the migration. Build the entire Shopify store behind its password page (enabled by default). Only switch DNS to Shopify when everything is tested and ready. This zero-downtime approach means your customers experience no interruption in service.

Step 1: Export Data from Your Current Platform

Export products, customers, and orders as CSV files from your current platform.
Every major ecommerce platform supports CSV exports. In WooCommerce, go to Products, then Export. In BigCommerce, go to Products, then Export. In Squarespace Commerce, go to Commerce, then Products, then Export All. In Etsy, go to Settings, then Download Data. Save these files and review them for completeness before importing to Shopify.

Products: The export should include product title, description (HTML formatted), price, compare-at price, SKU, weight, inventory quantity, images (as URLs), tags, and variants with their specific attributes (size, color, material). If your current platform stores product images locally (WooCommerce), the image URLs in the export will point to your current server, and Shopify will import them from there, so keep your old server running until after the import is complete.

Customers: Export email addresses, first and last names, shipping addresses, and any tags or segments. Shopify's customer CSV import accepts these fields. Note: Shopify cannot import customer passwords. After migration, customers will need to reset their passwords through Shopify's "Forgot password" flow. Send an email to your customers before the migration informing them of the platform change and that they will need to create new passwords.

Orders: Shopify can import historical orders through the API (not through CSV in the admin). If preserving order history in Shopify is important, use a migration app like Matrixify ($20/month) that handles order import. If you just need the records for reference, keep them in your exported CSV files or in your old platform's database backup.

Step 2: Set Up Your Shopify Store

Build your new Shopify store completely before importing data.
Sign up for Shopify, choose your plan, select and customize a theme, configure Shopify Payments, set up shipping zones and rates, configure tax settings, create your store pages (About, Contact, FAQ, policies), and set up your navigation structure. Do all of this before importing products so you understand where everything lives.

Follow the How to Start a Shopify Store guide for the complete setup walkthrough. Pay particular attention to your theme selection, because you want a theme that displays your products at least as well as your current store. If your current store uses features like color swatches, product filtering by attributes, or quick-view modals, verify your chosen Shopify theme supports these features natively or through configuration.

Step 3: Import Products and Customers

Import your product CSV to Shopify and verify the data transferred correctly.
Go to Products, then Import, and upload your product CSV file. If your CSV is from a non-Shopify platform, you may need to reformat it to match Shopify's CSV template (download Shopify's sample product CSV from the help documentation for the correct column headers). Review the imported products: check that images loaded correctly, descriptions preserved their HTML formatting, variants and pricing are accurate, and inventory counts are correct.

For stores with fewer than 100 products, manual review of each imported product is feasible and recommended. For stores with hundreds or thousands of products, spot-check a representative sample from each product category and fix issues in bulk using Shopify's bulk editor or a re-import of the corrected CSV.

Image issues: If product images did not import (showing as broken or missing), the image URLs in your CSV may have been inaccessible to Shopify's importer. This happens when your old server blocks external requests, requires authentication, or the URLs have expired. Re-upload images manually for affected products, or use a migration app that handles image transfer more reliably.

Complex migrations with Matrixify: For stores with complex data (hundreds of variants per product, metafields, custom attributes, multilingual content, or large order histories), the Matrixify app ($20/month) is the standard migration tool. It handles imports from WooCommerce, BigCommerce, Magento, Squarespace, and other platforms with mapping for fields that Shopify's native CSV importer does not support. The $20/month cost is trivial compared to the hours of manual data cleanup it prevents.

Step 4: Set Up URL Redirects

Create 301 redirects from every old URL to its new Shopify URL to preserve SEO rankings.
Go to Online Store, then Navigation, then URL Redirects. Click "Import" to upload a CSV file with two columns: "Redirect from" (the old URL path) and "Redirect to" (the new Shopify URL path). Alternatively, add redirects individually by clicking "Create URL redirect."

This is the most critical step of the migration for SEO. Every page on your old store that has been indexed by Google, linked to from other websites, or bookmarked by customers must redirect to its equivalent page on Shopify. Without redirects, those pages return 404 errors, you lose the SEO authority those pages accumulated, and external links (including backlinks that contribute to your domain authority) become dead ends.

Common redirect mappings:

  • WooCommerce: /product/blue-widget/ redirects to /products/blue-widget
  • WooCommerce: /product-category/summer/ redirects to /collections/summer
  • WooCommerce: /blog/post-title/ redirects to /blogs/news/post-title
  • BigCommerce: /blue-widget/ redirects to /products/blue-widget
  • BigCommerce: /summer/ redirects to /collections/summer
  • Squarespace: /store/p/blue-widget redirects to /products/blue-widget

After creating redirects, test a sample of them by entering old URLs in your browser (after DNS has switched) and verifying they land on the correct new pages. Use Google Search Console's URL Inspection tool to verify that Google recognizes the redirects.

Step 5: Test and Switch

Test the complete Shopify store, then update your domain DNS to point to Shopify.
Share the password-protected Shopify store URL with a few trusted customers or team members for testing. Have them browse, add to cart, and complete test purchases. Verify that emails send correctly, order confirmations work, and the checkout experience is smooth. When everything checks out, update your domain's DNS to point to Shopify (A record to 23.227.38.65, CNAME for www to shops.myshopify.com).

After switching DNS, monitor your store closely for the first 48 hours. Check Google Search Console for crawl errors (404s from URLs you missed in your redirect mapping). Check your email for customer complaints about missing pages or broken links. Have someone test the complete purchase flow on the live domain to confirm payments process correctly.

Keep your old store or its database backup accessible for at least 90 days after migration. You may need to reference old order details, find URLs you missed in the redirect mapping, or recover data that did not import correctly. Do not delete your old hosting account or cancel your old platform subscription until you are confident the migration is complete and stable.

Post-Migration SEO Checklist

Submit the new sitemap: Go to Google Search Console, then Sitemaps, and submit yourstore.com/sitemap.xml. This tells Google to crawl and index your new Shopify URLs.

Monitor index coverage: Check the Index Coverage report in Google Search Console weekly for the first month. Look for spikes in "Excluded" or "Error" pages, which indicate redirect issues or pages that Google cannot access.

Expect a temporary traffic dip: It is normal to see a 10% to 30% drop in organic traffic for 2 to 4 weeks after a migration, even with proper redirects. Google needs time to recrawl, recognize the redirects, and transfer authority to the new URLs. Traffic should recover to pre-migration levels within 4 to 8 weeks if redirects are properly implemented.

Update external links: If you have control over links pointing to your store from social media profiles, directory listings, partner websites, or your own email signatures, update them to the new Shopify URLs. While the redirects handle old links, direct links to the new URLs are marginally better for SEO and eliminate the redirect processing step.