"How long will this take?" is the first question every brand asks when considering a platform migration. It is a reasonable question, and it deserves an honest answer rather than the vague "it depends" that most agencies offer.
We have migrated stores ranging from 200-product boutiques to 15,000-SKU catalogue operations. The timelines vary, but the phases and dependencies are consistent. This guide breaks down every phase of an ecommerce migration with realistic timelines, explains what causes delays, and gives you the information you need to plan your migration with confidence.
The honest answer
A straightforward ecommerce migration — moving from one platform to Shopify with a standard theme, clean data, and limited custom functionality — takes 8-12 weeks from kickoff to launch. A complex migration with custom development, large data sets, multiple integrations, and a design overhaul takes 16-24 weeks.
Here is the typical breakdown:
| Phase | Standard migration | Complex migration |
|---|---|---|
| Discovery and planning | 1 week | 2 weeks |
| Design and UX | 2 weeks | 4 weeks |
| Development and data migration | 3-4 weeks | 6-8 weeks |
| Testing and QA | 1 week | 2 weeks |
| Launch and stabilisation | 1 week | 2 weeks |
| Total | 8-10 weeks | 16-24 weeks |
These timelines assume a responsive client, clean data, clear requirements, and an experienced migration team. Any weakness in these assumptions adds time.
The most common reason migrations take longer than planned is not technical complexity. It is indecision. Every week of deferred decisions on the client side adds a week to the project. The build cannot proceed until decisions about design, functionality, and data are made.
What determines migration complexity
Before diving into each phase, it is worth understanding the factors that push a migration from the simple end of the spectrum to the complex end:
- Product catalogue size: 500 products with simple variants versus 10,000+ products with complex variant structures and custom attributes.
- Custom functionality: Standard ecommerce features versus bespoke pricing logic, configurators, B2B portals, or custom checkout flows.
- Integration count: Three integrations (payment, shipping, email) versus fifteen (ERP, PIM, 3PL, CRM, loyalty, reviews, analytics, advertising, etc.).
- Design requirements: Adapting a premium theme versus building a fully custom design from scratch.
- Data quality: Clean, well-structured data versus messy data that needs significant cleanup before migration.
- International complexity: Single-market store versus multi-language, multi-currency international operation.
- SEO criticality: Low organic traffic versus significant organic revenue that requires meticulous redirect mapping and SEO preservation.
Phase 1: Discovery and planning (1-2 weeks)
Discovery is the most important phase of any migration and the one most frequently underinvested in. Rushing through discovery to "get started on the build" is the most reliable way to guarantee delays later in the project.
What happens in discovery
- Current platform audit: Documenting everything on the existing store — products, customers, orders, integrations, custom functionality, content, and URL structure.
- Requirements gathering: Defining what the new store needs to do, which features are essential versus nice-to-have, and what the success criteria are for launch.
- Data audit: Assessing the quality and structure of data to be migrated. Identifying cleanup requirements and transformation rules.
- Integration mapping: Documenting every third-party integration, its current configuration, and the equivalent on the new platform.
- SEO baseline: Capturing current search rankings, organic traffic, and backlink profile as a benchmark for post-migration comparison.
- Redirect mapping: Beginning the URL redirect map — ideally completed during this phase for large catalogues.
- Project plan: Creating a detailed project timeline with milestones, dependencies, and responsibilities clearly assigned.
The output of discovery is a migration specification document that the entire team — your team and the agency — agrees on before any build work begins. This document is the contract for the project scope. Changes after this point are change requests, not discoveries.
For more detail on what a proper discovery process looks like, see our guide on how long a Shopify build should take.
Phase 2: Design and UX (2-4 weeks)
The design phase runs in parallel with the early stages of data migration and development setup. How long it takes depends on whether you are adapting an existing theme or building custom.
Theme customisation (2 weeks)
If you are working with a premium Shopify theme (Dawn, Prestige, Impulse, etc.), the design phase involves configuring the theme, customising colours, typography, and layout, and creating any custom sections needed. This is the fastest path and suitable for most migrations where the priority is moving platforms rather than redesigning the brand.
Custom design (3-4 weeks)
If the migration includes a significant design overhaul, this phase extends to include wireframing key pages (homepage, product page, collection page, cart, checkout), visual design mockups, review cycles, and responsive design specification. Custom design adds time but delivers a result that is uniquely yours rather than a variation on a template shared by thousands of other stores.
The approval bottleneck
Design is where client-side delays most commonly occur. The agency presents designs, the client reviews, feedback is gathered from multiple stakeholders, revisions are made, and the cycle repeats. On well-run projects, this takes one or two rounds of revision. On poorly managed ones, it takes five rounds and three months.
Set clear expectations: appoint a single decision-maker for design approval, agree on a maximum number of revision rounds upfront, and commit to providing feedback within a defined timeframe (48-72 hours is reasonable).
Phase 3: Development and data migration (3-6 weeks)
This is the core of the project — building the new store and migrating data from the old one. These workstreams run in parallel.
Theme development (3-4 weeks)
Building or configuring the theme based on approved designs. This includes implementing page templates, creating custom sections and blocks, building navigation structures, integrating metafields and metaobjects, and setting up the checkout experience. For Shopify Plus migrations, this also includes checkout extensibility and any script customisations.
Data migration (2-3 weeks, overlapping)
Running the data migration in stages: products first, then customers, then orders. Each data type goes through export, transformation, import, and validation. The first migration run is always the hardest — subsequent runs benefit from refined transformation scripts and known issue resolution.
Integration setup (1-2 weeks, overlapping)
Configuring and testing every third-party integration: payment gateways, shipping carriers, email marketing (Klaviyo, typically), accounting (Xero, QuickBooks), inventory management, reviews platforms, and any custom API integrations. Each integration needs configuration, testing, and sign-off.
Custom functionality (1-4 weeks, variable)
Any bespoke functionality — custom pricing rules, product configurators, B2B features, subscription setup, loyalty programme integration — adds time proportional to its complexity. This is where scope creep most commonly occurs, which is why clear requirements from discovery are essential.
SEO setup (1 week, overlapping)
Implementing the redirect map, configuring SEO metadata, verifying hreflang tags for international stores, setting up Google Search Console for the new domain structure, and creating XML sitemaps. This work happens alongside development but requires its own dedicated attention.
For brands migrating from specific platforms, our platform-specific migration guides cover the technical details: Visualsoft to Shopify, OpenCart to Shopify, and PrestaShop to Shopify.
Phase 4: Testing and QA (1-2 weeks)
Testing is non-negotiable and should not be compressed to hit a launch deadline. The testing phase covers:
Functional testing
Every page template, every product type, every checkout scenario, every payment method, every shipping option, every discount code, every email notification. Test on desktop and mobile. Test on Chrome, Safari, Firefox, and Edge. Test with real payment methods, not just test mode.
Data verification
Verify product counts, prices, images, variants, inventory levels, customer records, and order history against the source platform. Automated scripts help here — manually checking 5,000 products is not feasible, but spot-checking a representative sample combined with automated count and integrity checks catches issues reliably.
Performance testing
Run Google PageSpeed Insights, Lighthouse, and WebPageTest against key pages. Verify that Core Web Vitals meet targets. Load test the store if you are expecting high traffic volumes at launch (or shortly after, during a planned promotion).
Redirect testing
Crawl every URL in the redirect map and verify each one resolves correctly to the intended destination on the new store. This is critical for SEO preservation and can be automated with tools like Screaming Frog.
User acceptance testing (UAT)
Your team uses the staging store for real work: creating orders, processing returns, updating products, generating reports. They test the workflows they will use daily and report any issues, missing functionality, or unexpected behaviour.
Phase 5: Launch and stabilisation (1-2 weeks)
Pre-launch (2-3 days)
Final data synchronisation (delta migration of orders and customers created since the initial migration). DNS configuration. SSL certificate verification. Payment gateway activation. Email notification testing. Final redirect map deployment.
Launch day
DNS switch. Monitor for errors. Test checkout with a real transaction. Verify all integrations are firing correctly. Monitor server response times and error rates. Keep the old platform accessible (read-only) as a fallback.
Post-launch stabilisation (1-2 weeks)
The first two weeks after launch require heightened attention. Monitor Google Search Console for crawl errors and indexing issues. Track conversion rate versus pre-migration baseline. Address customer service enquiries related to the new store experience. Fix any issues that emerge under real traffic conditions.
Common post-launch issues include: missing redirects discovered through search console data, payment gateway edge cases not caught in testing, email deliverability changes due to domain changes, and analytics tracking discrepancies requiring tag manager adjustments.
What actually causes delays
In our experience, projects that exceed their timeline do so for predictable, preventable reasons:
1. Scope creep (adds 2-6 weeks)
The most common delay. "While we are at it, can we also add..." is the phrase that kills timelines. Every addition — however small it seems — requires specification, development, testing, and integration with everything else. A clear scope document and a disciplined change request process are the only defences.
2. Slow client feedback (adds 2-4 weeks)
Design reviews that sit in someone's inbox for two weeks. Product data spreadsheets that are "almost ready" for a month. Decision-making committees that cannot meet until next quarter. These delays add up fast and are entirely preventable with the right project governance.
3. Dirty data (adds 1-3 weeks)
Product data that arrives full of errors, inconsistencies, missing fields, and duplicate records adds rework to every migration phase. Clean your data before the migration starts. Do not treat the new platform as a data cleaning tool.
4. Integration surprises (adds 1-2 weeks)
Third-party services that turn out to have limited API access, different behaviour on the new platform, or missing features that were assumed to exist. Thorough integration mapping during discovery minimises these surprises.
5. Insufficient testing (adds 1-2 weeks post-launch)
Rushing through testing to hit a launch deadline means launching with bugs. Post-launch firefighting is more expensive and disruptive than pre-launch testing. Every hour saved on testing costs three hours of post-launch crisis management.
How to accelerate your migration
If your migration has a hard deadline — a contract expiry, a peak trading period, or a business event — here is how to compress the timeline without compromising quality:
- Start data cleanup immediately. Do not wait for the project to begin. Clean your product data, standardise your taxonomy, and prepare your redirect map now. This work is on the critical path and every week of head start translates directly to an earlier launch.
- Appoint a single decision-maker. Design by committee kills timelines. One person with authority to approve designs, sign off functionality, and resolve conflicts.
- Choose theme customisation over custom design. A premium theme with brand customisation launches weeks faster than a bespoke design. You can always iterate on design post-launch.
- Reduce integration scope. Launch with essential integrations only — payment, shipping, email. Add secondary integrations (loyalty, reviews, advanced analytics) in the weeks after launch.
- Commit to a content freeze. Stop adding products to the old platform one week before migration. This eliminates delta migration complexity and reduces the risk of data sync issues.
- Be available. The single most effective accelerant is a responsive client. Answer questions within hours, not days. Review deliverables within 48 hours, not two weeks. Your speed determines the project's speed.
For context on the broader risk calculus of timing your migration, our guide on the signs your platform is holding you back helps identify when the cost of delay exceeds the risk of moving quickly.
Timeline scenarios by store type
To make this practical, here are realistic timeline scenarios for different store profiles:
Small brand (200-500 products, 3 integrations)
A DTC brand on WooCommerce or Squarespace moving to Shopify with a premium theme. Clean product data, simple variant structures, basic integrations (Stripe, Royal Mail, Klaviyo). No custom functionality beyond standard ecommerce features.
Timeline: 6-8 weeks. Discovery (1 week), design/configuration (1-2 weeks), development and data migration (2-3 weeks), testing (1 week), launch (1 week).
Mid-market brand (1,000-5,000 products, 8 integrations)
An established brand on Magento, OpenCart, or Visualsoft moving to Shopify or Shopify Plus. Complex variant structures, custom attributes requiring metafield setup, multiple integrations including ERP and 3PL. Moderate custom functionality — B2B pricing, loyalty programme, subscription products.
Timeline: 10-16 weeks. Discovery (2 weeks), design (2-3 weeks), development and data migration (4-6 weeks), testing (1-2 weeks), launch (1-2 weeks).
Enterprise brand (10,000+ products, 15+ integrations)
A large-catalogue operation on a legacy enterprise platform moving to Shopify Plus. Complex data structures, multiple product types, international multi-currency and multi-language requirements, extensive custom functionality, and significant organic traffic requiring meticulous SEO preservation.
Timeline: 16-24 weeks. Discovery (2-3 weeks), design (3-4 weeks), development and data migration (6-10 weeks), testing (2-3 weeks), launch and stabilisation (2-3 weeks).
Every ecommerce migration is different, but the phases, dependencies, and risk factors are predictable. The brands that launch on time are the ones that invest in discovery, make decisions quickly, prepare their data in advance, and resist the urge to expand scope mid-project.
The brands that do not launch on time are the ones that skip discovery, treat every meeting as a brainstorming session, deliver data late, and add "just one more thing" every week.
If you are planning a migration and want a realistic timeline based on your specific situation, start a conversation with us. We will assess your store, your data, and your requirements — and give you an honest answer about how long it will take.