The problem
Alex was evaluating an acquisition of an existing Shopify Plus footwear store, roughly 1,200 SKUs, six years of order history, a Klaviyo account at 450,000 profiles, Attentive at 80,000 SMS subscribers, Judge.me reviews, Shopify Flow automations, Shop Pay, and two active SPS Commerce EDI integrations with retail partners. Before committing to the deal, he needed to actually know what a live cutover would look like: what could be exported cleanly, what couldn't, where the real risk sat, and how long it would genuinely take, not a rough guess offered to close a sale.
What I built
A pre-close migration plan
I scoped the full migration against the actual data footprint, the SKU count, six years of order history, and every connected system, Klaviyo, Attentive, Judge.me, Shopify Flow, Shop Pay, and the two SPS Commerce EDI retail partner connections, so the plan reflected this specific store's real complexity rather than a generic migration checklist.
An hour-by-hour 48-hour go-live runbook
I built a runbook structured hour by hour rather than by vague phase, each block naming the task, the tool involved, and the validation check that confirms it actually worked, DNS and domain cutover, SSL provisioning, a full QA pass across checkout, search, redirects, and mobile, a completeness manifest sign-off with the client as a go-live decision checkpoint, then go-live itself with order flow, checkout, and EDI transaction monitoring. I built in a contingency checkpoint around hour 30 and kept a documented rollback point throughout, so a problem mid-cutover has a defined way back rather than an improvised one.
A completeness manifest template
I built a manifest tracking fifteen data objects, products and variants, collections, orders, order line items, customers, email and SMS consent records, Klaviyo profiles and suppression list, Attentive subscribers, Judge.me reviews, theme files, pages and blog content, the URL redirect map, and files and media assets, each with a defined validation method, from source count to signed-off status, so nothing gets marked complete without being checked.
A non-exportable items list, with mitigations
Some data simply doesn't carry across cleanly in any Shopify-to-Shopify migration. Rather than let that surface as a surprise after close, I documented exactly what falls into that category for this store and what to do about each item.
What was delivered
| Deliverable | Scope |
|---|---|
| Pre-close migration plan | ~1,200 SKUs, 6 years of order history, full connected app stack |
| 48-hour go-live runbook | Hour-by-hour task/tool/validation structure, hour-30 contingency, documented rollback point |
| Completeness manifest template | 15 data objects tracked from source count through sign-off |
| Non-exportable items list | What doesn't migrate cleanly, and the mitigation for each |

