Most Shopify migration plans are written backwards to front, cutover date, DNS switch, go-live checklist, champagne. Almost none of them spend real time on the question that actually matters at 6am on launch day when the new store is throwing checkout errors: what do we do if this doesn’t work?
A rollback plan isn’t pessimism. It’s the difference between a launch-day problem costing you twenty minutes and a fixed procedure, versus costing you six hours of ad-hoc troubleshooting while orders bounce and customer support tickets pile up. If you’re planning a Shopify migration, from Magento, WooCommerce, BigCommerce, or anywhere else, the rollback plan should exist as a written document before you touch DNS, not as something you improvise once things go sideways.
This post covers what a proper Shopify migration rollback plan actually contains: the DNS rollback procedure, the redirect kill-switch, keeping orders flowing no matter what’s broken, and the decision framework for when to roll back versus when to just fix forward. This is contingency planning for before go-live, not a post-mortem for after.
Why “We’ll Just Roll Back If Something Breaks” Isn’t a Plan
Saying you’ll roll back if something goes wrong isn’t the same as having a rollback plan. A real plan answers three questions in advance, with named owners and exact steps:
- What specific conditions trigger a rollback decision, and who has the authority to call it?
- What is the exact technical sequence to reverse the cutover, in what order, and how long does each step realistically take to propagate?
- What happens to orders, customers, and data created in the gap between go-live and any rollback decision?
Most launch-day chaos comes from teams discovering the answers to these questions live, under pressure, while someone’s refreshing the storefront and a founder is asking why checkout is down. By the time you’re debugging in production, you’ve already lost the calm decision-making a rollback needs.
The Three Failure Categories You’re Actually Planning For
Not every launch-day issue needs the same response. Splitting problems into categories up front stops teams from either panicking over something minor or under-reacting to something serious.
Category 1: Cosmetic or non-blocking issues
A misaligned banner, a missing collection thumbnail, a font that didn’t load correctly on one browser. These are annoying, not urgent. Fix forward on the live store, never roll back for these.
Category 2: Degraded but functional
Search is slow, a filter isn’t working, a third-party app (reviews, loyalty, a shipping calculator) is throwing errors but checkout still completes. This is a judgement call, usually fix forward with the broken feature temporarily disabled, rather than a full rollback.
Category 3: Revenue-blocking or data-integrity failures
Checkout won’t complete, payment gateway errors, tax or shipping calculating incorrectly at checkout, customer accounts not resolving, or orders not reaching fulfilment. This is where a rollback decision needs to happen fast, using a plan you already wrote rather than one you’re inventing on the spot.
The rollback plan only really matters for Category 3. Everything below is built around detecting and reversing that category of failure quickly.
DNS Rollback: The Part Everyone Underestimates
DNS is usually the single biggest lever in a migration cutover, and it’s also the part teams most often get wrong when planning a rollback, because DNS doesn’t reverse instantly, it reverses on the timeline your DNS TTL (time to live) allows.
Here’s what a proper DNS rollback plan covers:
- Lower your TTL well before cutover, ideally 48-72 hours ahead, drop the TTL on the relevant A/CNAME records down to something like 300 seconds (5 minutes). A record with a 24-hour TTL that you try to “roll back” on launch day can take up to a full day to fully propagate the reversal across every resolver, which defeats the purpose of a fast rollback entirely.
- Keep the old platform’s hosting/DNS target live and untouched during the cutover window, don’t decommission or repoint the old store’s infrastructure until you’re confident the new one is stable. This sounds obvious, but it’s a common mistake under time pressure to start tearing down the old environment immediately after cutover to “tidy up.”
- Document the exact old DNS values (A record IPs, CNAME targets, MX records if email is affected) in the rollback runbook itself, not buried in a support ticket from months ago. Someone should be able to paste these values back in without needing to log into the old platform’s dashboard under pressure.
- Know your actual propagation reality, not the theoretical one. Even with a low TTL, some ISP-level resolvers and corporate networks cache longer than they should. A DNS rollback should be treated as “most traffic redirected within 15-30 minutes, full propagation within a few hours”, not instant.
If DNS is the trigger for your rollback, the clock starts the moment you change the record, not the moment everyone sees the old site again.
The Redirect Kill-Switch
If your migration includes a large redirect map, old URLs pointing to new Shopify URLs, which almost every replatform does, that redirect layer needs its own rollback consideration, separate from DNS.
The risk: if your redirects are misconfigured (wrong destination, redirect loops, or redirects firing before the new store’s routing is stable), you can end up in a worse state than either the old or new site working alone, visitors and Googlebot hitting broken redirect chains.
A redirect kill-switch means having a fast, tested way to:
- Disable or bypass the new redirect rules without needing a full platform rollback, if the redirects themselves are the problem rather than the store.
- Fall back to a maintenance or holding page with clear messaging and a way to contact you, rather than visitors hitting 404s or infinite loops, if redirects and DNS both need attention simultaneously.
- Re-point specific problem redirects individually rather than an all-or-nothing switch, most redirect issues on launch day affect a subset of URLs (a particular collection structure, a set of legacy blog URLs), not the whole map.
Test this kill-switch mechanism before launch day, not during it. If “disabling redirects” actually means someone needs to edit and redeploy a .htaccess-equivalent file or a Shopify app’s redirect rules under pressure, that’s not a kill-switch, that’s a five-alarm fire with extra steps.
Order-Capture Continuity: Don’t Let a Rollback Lose Sales
This is the part most rollback plans miss entirely, and it’s the one that actually protects revenue. If you do have to roll back mid-launch, what happens to any orders, customer sign-ups, or cart activity that occurred on the new Shopify store in the window before the rollback completes?
Build this into the plan explicitly:
- Export or note the new store’s orders before reversing DNS. Even a short live window can generate real orders that need to be manually reconciled and re-entered into whichever platform ends up being the source of truth.
- Decide in advance who owns manual order recovery if orders land on the new Shopify store but you roll back to the old platform. This is operations work, not a technical fix, and it needs an owner named before launch day, not discovered afterwards.
- Keep the payment gateway’s dashboard as your source of truth for what was actually charged, independent of which storefront was live at the time. Payment records don’t disappear when you roll back DNS, but disconnected order records across two platforms are a genuine mess to reconcile without a plan.
- Consider a short “read-only” or “coming back shortly” state rather than an instant hard rollback if checkout is the only broken piece, sometimes disabling checkout temporarily on the new store while you fix the underlying issue is less disruptive than a full DNS reversal, because it avoids splitting orders across two systems at all.
A Practical Rollback Framework: The 4 Questions Before Go-Live
Before you schedule a cutover, your team (agency and internal) should be able to answer these four questions in writing, not in theory:
- Who has the authority to call a rollback, and what’s the maximum time between “someone notices a problem” and “a decision is made”? Name a person, not a team.
- What is the rollback trigger list? Write the specific, observable conditions, checkout failure rate above a threshold, payment gateway errors, core pages returning errors, that automatically mean “roll back,” so nobody’s debating definitions during an outage.
- What is the step-by-step technical rollback sequence, in order, with the person responsible for each step and a realistic time estimate? This should read like a runbook, not a paragraph.
- What happens to orders and customer data created during the live window, and who reconciles them afterwards?
If any of these four questions doesn’t have a clear, written answer before cutover, the rollback plan isn’t finished yet, it’s a plan to have a plan.
Launch Day Rollback Checklist
A condensed, practical sequence to run through in the 48 hours before go-live and to have printed (or pinned, not buried in a shared drive) on launch day itself:
- [ ] DNS TTLs lowered to a short value at least 48 hours before cutover
- [ ] Old platform environment left live and untouched, not decommissioned
- [ ] Exact rollback DNS values documented in the runbook itself
- [ ] Redirect kill-switch tested end-to-end at least once before launch day
- [ ] Rollback trigger conditions written down and agreed by whoever’s on call
- [ ] Named decision-maker confirmed and reachable during the launch window
- [ ] Order export/reconciliation process for the live window documented and owned
- [ ] Payment gateway dashboard access confirmed as the source of truth for charges
- [ ] Post-cutover monitoring window scheduled (who’s watching checkout, search, and core pages, and for how long)
- [ ] A clear “go / no-go / rollback” checkpoint scheduled a set number of hours after cutover, rather than leaving the decision open-ended
When to Bring In a Specialist
Plenty of smaller, lower-complexity migrations can be planned and executed safely in-house, particularly if you’re moving a modest catalogue with a simple redirect map and no complex integrations. But the risk profile changes quickly once you’re dealing with a high order volume during the cutover window, third-party integrations (ERP, POS, subscriptions) that also need to stay in sync, or a redirect map covering years of accumulated SEO equity that a botched rollback could damage.
If you’re not confident your current migration plan actually has answers to the four rollback questions above, or if nobody on the team has run a Shopify cutover before, that’s exactly the kind of gap a Shopify audit is designed to catch before launch day, not after. An outside review of your cutover and rollback plan, done a week or two ahead of go-live, is far cheaper than untangling a bad launch in real time. It’s also worth working from a structured Shopify migration checklist so the rollback plan sits inside a complete pre-launch process rather than as an isolated document.
FAQ
How long should we keep the old platform live after a Shopify migration?
Long enough to be confident the new store is stable under real traffic and order volume, in general terms, many teams keep the old environment accessible (even if not publicly linked) for at least a few weeks post-launch, purely as a rollback safety net, before fully decommissioning it.
What’s the actual difference between “fix forward” and “roll back”?
Fixing forward means leaving the new Shopify store live and repairing the specific issue on it, appropriate for cosmetic or degraded-but-functional problems. Rolling back means reversing DNS and/or redirects to send traffic back to the old platform entirely, reserved for revenue-blocking or data-integrity failures where the new store genuinely can’t take orders safely.
Can you partially roll back just the checkout without rolling back the whole site?
Sometimes, depending on your setup, temporarily disabling checkout on the new Shopify store (with a clear message to visitors) while keeping browsing live can be less disruptive than a full DNS reversal, because it avoids splitting orders across two separate platforms. Whether this is possible depends on how your DNS and app stack are configured, so it’s worth confirming as part of pre-launch planning, not discovering on the day.
Who should be the final decision-maker for calling a rollback?
It should be one named person (or a very small, pre-agreed group) with the authority to make the call quickly, not a committee. Under launch-day pressure, decision-by-consensus is slow, and the whole point of a written rollback plan is to remove hesitation from the moment it’s needed most.
Does a rollback plan slow down the migration project itself?
Not meaningfully, most of the work is documentation and a couple of dry runs (testing the redirect kill-switch, confirming DNS TTL changes propagate as expected) that take a day or two, not weeks. It’s a small time investment relative to the cost of an unplanned, panicked rollback attempt during a live outage.
Ready to Stress-Test Your Launch Plan?
If you’re heading toward a cutover date and aren’t fully confident your rollback plan would hold up under real pressure, it’s worth getting a second set of eyes on it before you commit to a date. Book a call with Nexly and we’ll walk through your migration and go-live plan together.