RetainUPBook a call

Subscription App Migration Checklist: Day by Day, With What Breaks

Most subscription app migrations take two to five weeks, with a one-week cutover. Keep the payment gateway so saved cards can move, keep next charge dates exact, and rebuild every Klaviyo flow and portal link.

Rahi Jain
, Subscription LTV Specialist
· Updated · 14 min read
Moving boxes and house plants in a sunny room with the Recharge, Loop, Skio and Stay AI logos, cover for the RetainUP subscription app migration checklist

Key takeaways

  • When one supplement brand moved from Appstle to Loop, the migration created 348 subscriptions and cancelled 232 the same day, so raw data showed 440 cancels instead of 208.
  • Saved cards survive a subscription app switch when the payment gateway stays the same or its tokens are imported, and Skio says it cannot move Shop Pay methods between stores.
  • Subscribers in the middle of dunning lose their retry position in a migration, so tag them before the export and import them paused.

"Can I switch between subscription apps with active subscribers?" It comes up on the Shopify forums every few weeks. The answer is yes. Most brands switch without a single customer typing in a card again.

What breaks is quieter. Subscribers stuck halfway through dunning. Reminder emails that stop. Klaviyo flows that never fire again. Numbers that look worse, or better, than they are. This guide covers those, with a checklist, a day-by-day plan with an owner on every task, and a week-1 watch list. If you are still choosing where to go, start with our comparison of the best Shopify subscription app.

Can you switch subscription apps without losing subscribers?

Yes, you can switch subscription apps without losing subscribers, as long as the saved cards stay where they are. Every big app runs a migration team. Loop, Skio and Stay AI list it in their paid plans, and Recharge has its own. They move subscriptions, next charge dates and, in most cases, payment tokens.

They don't move your setup. Dunning state, notification settings, Klaviyo events and portal links are yours to check. I've seen every one of them go wrong on a live store.

What moves and what doesn't

In a subscription app migration, subscriptions, products, prices, discounts and next charge dates move. Retry position, email settings, Klaviyo event names and old portal links don't, or only partly.

What moves in a subscription app migration and what has to be rebuilt by hand
ItemMoves?What to do
Subscriptions, products, quantitiesYesCheck the variant mapping file line by line
Prices and discountsYes, if recreated firstRecreate discount codes in Shopify before import. Keep grandfathered prices
Next charge datesYesFreeze edits in the old app. Spot-check 20 records
Saved cardsUsuallyDepends on where the card lives. See below
Dunning positionNoTag and export failed-payment subscribers first
Order countUsuallyCheck it, or your order 3 gifts fire on the wrong order
Portal linksNoRedirect the old portal URL, update every email and help page
Notification emailsNoRebuild, turn on and test each one
Klaviyo eventsNoNew app, new event names. Rebuild flow triggers

The middle column is where to spend your planning time. Cards at an outside gateway, discounts, prepaid and bundles all move, but only if someone checks them. And some things never move: Skio does not migrate cancelled subscriptions, and Loop's FAQ says order history and analytics stay behind.

What moves, what half moves and what stays behind in a Recharge, Loop, Skio or Stay AI subscription app migration

Saved cards and payment tokens

Saved cards survive a subscription app migration when the payment gateway stays the same. A saved card is a token held by a payment gateway, not by the subscription app. Change the app and keep the gateway, and the token can move. Change the gateway, and customers may have to enter their card again.

Decision tree for whether saved cards survive a subscription app migration, by where the payment token lives

Three cases cover most brands.

Cards already in Shopify's vault

If you are on Shopify Payments with a Shopify-native app, the cards are already in Shopify. Loop's guide says there is no payment data to move in that case. This is the easy one.

Cards held by Stripe, Braintree or Authorize.net

When cards sit at an outside gateway like Stripe, Braintree or Authorize.net, as in Recharge's legacy checkout, that gateway gets connected to Shopify as a secondary provider and the tokens are imported. Loop's payment docs add two limits: billing keeps running through the outside gateway until the customer updates their card in Shopify, and Adyen tokens can't be migrated. Shopify allows one secondary provider at a time.

Moving from Braintree to Stripe first? Recharge says that transfer takes 7 to 14 business days, and charges for existing customers are blocked until it finishes. Move any charge dates out of that window.

Shop Pay and store-to-store moves

Moving subscriptions to a new Shopify store is harder than switching apps, and Shop Pay cards are the part most at risk. Skio's docs say the Shopify Payments team has to transfer the card data, and that Skio cannot migrate Shop Pay payment methods from one store to another. On one Loop brand we audited, Shop Pay carried 64% of payment attempts. Ask about Shop Pay before you sign.

Subscribers who are mid-dunning

Subscribers who are mid-dunning usually arrive in the new app looking healthy. The retry schedule lives in the old app's billing engine, so the new app treats a failing subscriber as a normal active one. The next charge fails, and a fresh retry ladder starts from zero.

How to handle subscribers who are in failed payment retries during a subscription app migration

Before the export, pull everyone with a failed charge in the last 30 days. Tag them in Shopify. Decide one of two things for each: import them paused and send a card update email, or let the new app retry once and then pause. Don't import them active and hope.

This is the same leak as passive churn in a normal month, just bigger. On that Loop brand, 35% of failed payments were dead cards that no retry can fix. Only a new card brings those back.

Next charge dates

Keep next charge dates exactly the same in a migration: the new app should bill each subscriber on the day the old one would have. A shifted date reads as a surprise charge, and a surprise charge reads as a reason to cancel.

Two rules. Freeze edits in the old app once the export starts, because the migration team won't pick up changes made after. And never let both apps bill. Skio's process brings new subscriptions into Skio first, checks them for 24 to 36 hours, then moves existing subscriptions over 2 to 3 days, with recurring billing switched off in the old app.

Keeping next charge dates during a subscription app migration and avoiding a window where both apps bill

Then check the interval on every plan, not the name. On one Loop store, a plan called 3 months was set to deliver every month. The checkout's last line, "Recurring subtotal every 84 days", is the proof.

The customer portal

Every old portal link breaks on cutover day. They live in more places than you think: reminder emails, order confirmations, the account page, help center articles, SMS flows and saved bookmarks.

Redirect the old portal path to the new one. Skio says it updates login links and can redirect the old portal. Then click every link from a real subscriber account, on a phone. A subscriber who can't find skip will find cancel, or email support to do it.

Emails and flows

Don't assume the new app's notification emails match the old ones. Rebuild and read each one: upcoming charge, payment failed, card expiring, skip and cancel confirmations. Turn the old app's emails off the same day, or subscribers get two.

Portal links and subscription notification emails to rebuild and test after switching subscription apps

Check they are on, not just built. On one Loop brand, the payment failure emails had stopped in September. There were 184 retries that month and no emails. Nobody noticed, because nothing errors when an email doesn't send.

Klaviyo

Every Klaviyo flow triggered by the old app stops on cutover day. The new app sends its own events with its own names. The old metrics stay in Klaviyo, so the flows look fine. They just never trigger again.

Klaviyo flows to remap when switching subscription apps, from old app events to new app events

A week before cutover, list every flow and segment that uses a subscription metric or profile property. Map each one to the new app's event. Build the new versions in draft. Switch them on at cutover and turn the old ones off. Keep the old metrics for reporting.

The exact names for each app are in our Klaviyo event map for Recharge, Loop, Skio and Stay AI. Two catch people out. Stay AI still sends its events as "Retextion", its old name. And on Recharge, failed payment emails can't run from Klaviyo at all, per Recharge's own help center.

The flows that matter most are the ones in our list of Klaviyo subscription automations: upcoming charge reminder, failed payment, cancel and winback. Segments built on "active subscriber" need the new property too.

Clean the data after cutover

A migration leaves debris in your numbers. Take it out before you read a single chart.

Migration debris in subscription data: 440 raw cancels against 208 real cancels after an Appstle to Loop migration

A supplement brand on Loop with about 300 subscribers moved from Appstle on 29 June. 589 events landed that day. The migration created 348 subscriptions and cancelled 232 of them, all tagged "migrated from appstle". Counted raw, the brand cancelled 440 subscriptions in three months. The real number was 208.

Nine more were created paused that day and never billed. They sat in the paused count for three months. And many subscribers still paid the old $44 a month, which is fine, as long as you know it before you test a price.

So in week one, rebuild active count from the activity log and match it to the dashboard. Filter migration events out of churn, cohort and save rate reports. Cohort charts get a break at the migration date, so read them as we describe in how to read a cohort chart.

Pre-migration checklist

Work through this pre-migration checklist before you book a cutover date for your new subscription app.

Pre-migration checklist for switching Shopify subscription apps without losing subscribers
  • Ask the new app, in writing, how your card tokens move. Name your gateway and your Shop Pay share.
  • Export active subscriptions, upcoming charges and customers from the old app. Note the active count and MRR on its dashboard.
  • Export everyone with a failed charge in the last 30 days. Tag them in Shopify.
  • Export cancels with dates and reasons. You lose this history once the old app goes.
  • Recreate discount codes and selling plans in the new app. Check every interval.
  • List every email, help page, SMS and theme link that points at the old portal.
  • List every Klaviyo flow and segment that uses a subscription metric or property.
  • Agree a freeze: no manual edits in the old app from export to cutover.
  • Pick a cutover day away from your biggest billing day.

Day-by-day migration plan

Most subscription app migrations run two to five weeks end to end, and the cutover itself takes about a week. Here is the plan I would run, built from Skio's and Loop's published processes plus what breaks in practice.

Day-by-day subscription app migration plan from three weeks before cutover to 30 days after
DayWhat happensOwner
Day -21Sign. Get the migration plan and the token answer in writingFounder or ops lead
Day -14Exports, dunning tag list, cancel history. Build selling plans and the portal in the new appOps lead + new app team
Day -7Rebuild notification emails. Draft the new Klaviyo flows. Test checkout on an unlisted productKlaviyo owner + developer
Day -3Freeze the old app. Final exportOps lead
Day 0New subscriptions go into the new app. Publish the new theme widgetDeveloper
Day 1 to 2Check every new subscription lands in the new appOps lead
Day 2 to 4Approve the migration preview. Existing subscriptions move. Old app billing offOps lead + new app team
Day 4Portal redirect live. Old emails off, new emails and Klaviyo flows onDeveloper + Klaviyo owner
Day 7Reconcile active count and MRR against the old export. Clear migration debrisOps lead
Day 14Review the first big billing day: failures, support tickets, double chargesSupport lead
Day 30One full cycle done. Compare cancel and failure rates to the month before. Then uninstall the old appOps lead

Name a person for each row before you sign. "The app's team handles it" covers the data move and nothing else. Here is the same plan as a printable sheet.

Subscription app migration plan with a day and an owner for every task, from day -21 to day 30

Cutover week: one app bills at a time

In cutover week, days 2 to 4 are the risk window: both apps hold the same subscribers, and only one may bill them.

Subscription app cutover from day 0 to day 14, with the day 2 to 4 window when both apps hold the same subscribers

Each app handles it a little differently. Shopify's developer docs say to pause billing in the old app while you migrate. Skio says it does not turn billing on until the old platform is confirmed off. Loop, moving a brand off Recharge, cancels the Recharge contracts by API so nobody is charged twice.

That last step is also where your churn numbers go wrong. Those cancels are real records in the old app. On the supplement brand we moved from Appstle to Loop, they were 232 of the 440 cancels in the first three months.

A migration is the cheapest moment to rebuild the program, because every flow, offer and cancel path is open anyway. The Subscription LTV Maximizer™ builds your new setup or migration in 30 days, for $5,000.

Switch off the old app, in this order

Uninstall the old subscription app last, because some exports only work while it is still installed.

Checklist for switching off the old subscription app on cutover day and before uninstalling it
  • Cutover day: recurring billing off, then confirm the old app creates no new orders.
  • Cutover day: old notification emails and old Klaviyo flows off. Keep the old metrics.
  • Cutover day: old portal path redirected. On Recharge that is the /tools/recurring path.
  • Before uninstalling: export cancel history, cancel reasons and any analytics you report on.
  • Before uninstalling: remove theme widgets, app blocks and scripts, and search emails, SMS and help pages for old links.
  • Then: wait one full billing cycle, and uninstall.

Week-1 watch list

Check the week-1 watch list every day for the first week after cutover, because most migration problems show up there before a customer emails.

Eight numbers to check every day in the first week after a subscription app migration
  • Active subscriptions against the old export, and MRR against the old dashboard.
  • Double charges: any subscriber with an order from both apps. The target is zero.
  • New subscriptions landing in the old app. Zero, or an old widget or link is still live.
  • Failed payment rate against the month before the move. Read it with our failed subscription payments playbook.
  • Portal and login tickets. The first sign an old link is still out there.
  • Entries on every rebuilt Klaviyo flow.
  • Cancels tagged as migrated, stripped out before anyone reads churn.

How long does a subscription app migration take?

A subscription app migration takes two to five weeks, depending on the app and your gateway. Skio puts the full integration and migration at 4 to 5 weeks. Loop says about two weeks, with a test environment and post-launch support. Stay AI says up to two weeks, with no implementation charge. Recharge's managed Migration Services are on Scale (formerly Plus) and Custom only, with a minimum lead time of 2 to 8 weeks by tier. A gateway change adds 7 to 14 business days.

Published subscription app migration timelines from Skio, Loop and Recharge compared

Plan around your billing calendar, not the vendor's. Once the dust settles, a free subscription audit will show whether the new setup is doing its job.

FAQ

Will my subscribers have to re-enter their cards?

Not if your payment gateway stays the same or its tokens can be imported into Shopify. They may have to if you change gateway or move to a new Shopify store. Shop Pay methods are the hardest to move between stores.

Will subscribers notice the switch?

They notice a new portal and new emails. Charge dates and prices should not change. Tell them a week before, with the new portal link, so the first email from the new app is expected.

Can I migrate from Recharge to Loop, or Skio to Recharge?

Yes. Every major app runs migrations from the others, and Loop, Skio and Stay AI list it in their paid plans. Recharge now owns Skio, so a move between those two is in-house.

What happens to subscribers in failed payment retries?

Their retry position stays behind in the old app. Export them first, tag them, and import them paused with a card update email, or they show up active and fail again.

Should I uninstall the old subscription app straight away?

No. Turn its billing, emails and flows off on cutover day, but keep it installed for one full billing cycle. Export cancel history and analytics first, because they do not move to the new app.

Which Klaviyo flows break when I switch subscription apps?

Every flow triggered by the old app's events: welcome, upcoming order, failed payment, cancel and winback. Each app names its events differently, so each flow needs a new trigger. Our Klaviyo event map lists the names.

Should I switch apps to fix churn?

Only for a lever your app can't set, like bundles or a backup card. Most churn problems we find are setup, and they move with you to the new app. Our Subscription LTV Maximizer fixes the setup in 30 days, on whichever app you run.

More in the Migration and Setup Series

Guides for brands setting up, or just moved to, Recharge, Loop, Skio or Stay AI:

Switching apps soon? A migration is the cheapest moment to rebuild the program, because every flow, offer and cancel path is open anyway. The Subscription LTV Maximizer™ builds your new setup or migration in 30 days, for $5,000.

Rahi Jain
About the author

Rahi Jain

Rahi Jain is a subscription LTV specialist who helps $1M to $10M DTC brands reduce subscription churn and maximize LTV on Recharge, Skio, Stay AI and Loop.

More about Rahi
Scorecard report mockup
Free subscription audit

Not sure where to start? Get your Subscription LTV Scorecard™

The same audit we run on every paying client, free.

  • A personalized 20-page report
  • 8 dimensions, 48 checkpoints
  • Benchmarked against Grüns, IM8 and Mars Men
  • Delivered in 24 hours

Just your email and store URL.