What Klaviyo flows should a D2C subscription brand have beyond welcome and cart?
Beyond welcome and abandoned cart, a D2C subscription brand needs Klaviyo (or ESP) flows that cover browse abandon, post-purchase / subscription onboarding, pre-renewal reminders, skip-swap-pause education, cancel-save, win-back, sunset, and - coordinated with the billing app - failed-payment recovery messaging. Welcome and cart only protect the front door. Subscription economics live in renewal, portal, and recovery.
This is not a generic "best 20 Klaviyo flows" list. It is the subscription stack map for mid-stage brands. Our post-purchase second-purchase guide covers first-to-second purchase for one-time / beauty-CPG paths. It does not cover pre-renewal, skip/swap portal education, or dunning ownership. Failed-payment recovery lives in depth on involuntary churn and Shopify dunning. This page tells you what else belongs in Klaviyo and who owns each job.
Why welcome + abandoned cart are not enough
At roughly $75K-$500K/month, CAC is rising. Subscription LTV only works if renewals and portal behavior are owned. The common stack is Shopify + Recharge or Skio (or native Shopify Subscriptions) + Klaviyo.
What founders often track:
- Welcome open rates
- Abandoned cart recovery revenue
- Blended Meta ROAS
What quietly deletes MRR:
- Surprise renewal charges that become voluntary cancels
- Silent skips with no education path back to a healthy cadence
- Failed payments with conflicting retries and emails
- Cancel intent that hits a dead-end portal instead of a save offer
- One-time buyers who never get a second-purchase sequence because the team assumed "we are a sub brand now"
Operator rule: flow coverage is a revenue system, not a template checklist vanity score. Opens are not success. Retained and recovered MRR are.
If your Klaviyo account looks "complete" (welcome + cart) but subscription MRR is leaky, Book a Diagnosis. Growthitt maps the flow stack to a revenue-ranked 24-hour roadmap.
The subscription flow map (priority table)
| Flow / system | Trigger (concept) | Job | Typical owner | Priority |
|---|---|---|---|---|
| Welcome / site signup | List join | Brand + offer path to first purchase or sub | Klaviyo | Baseline (assumed live) |
| Abandoned cart / checkout | Cart or checkout started | Recover intent | Klaviyo | Baseline |
| Browse abandon | Product / collection view | Warm intent | Klaviyo | P2 |
| Post-purchase / first-order education | Placed order | Habit + second purchase or sub confidence | Klaviyo | P1 - see second-purchase guide |
| Subscription onboarding | Subscription created | Expectation, portal how-to, first renewal date | Klaviyo | P0-P1 |
| Pre-renewal | N days before renewal charge | Reduce surprise cancels; push skip/swap if needed | Klaviyo (+ billing dates) | P0 |
| Skip / swap / pause education | Portal engagement or upcoming renewal | Keep sub alive with flexibility | Klaviyo + portal UX | P0-P1 |
| Failed-payment / dunning messaging | Charge failed | Recover payment | Billing app primary; Klaviyo only if events are authoritative | P0 - see dunning playbook |
| Pre-dunning (card expiry) | Card expiring | Update card before failure | Billing + Klaviyo | P0 |
| Cancel-save | Cancel / pause intent | Retain with relevant save | Portal + Klaviyo | P0 |
| Win-back (ex-subscribers) | Terminal cancel / expired | Reactivate | Klaviyo | P1 |
| Win-back / lapse (one-time buyers) | No second order | Separate from sub win-back | Klaviyo | P1 - ties to post-purchase |
| Sunset / engagement | Non-openers | Protect deliverability | Klaviyo | P2 |
| VIP / high-LTV | AOV or tenure | Retention + referral | Klaviyo | P2 |
Flows most subscription brands underbuild
Pre-renewal
Timing is often 7 / 3 / 1 day before charge. Tune to cadence: a 30-day replenishment needs a different rhythm than a 90-day supply.
Job: remove surprise, surface skip / swap / delay, confirm address and card, deep-link the portal (passwordless if possible).
Metric: involuntary cancel rate around renewal, skip rate, and support tickets that say "I was charged?" or "I did not know it would renew."
Pre-renewal is not a marketing blast with a new SKU. It is expectation management that protects MRR cheaper than buying another Meta customer. Treat it like contribution-margin work next to MER vs break-even ROAS.
Skip, swap, and pause (portal-adjacent)
Email and SMS should teach the portal, not replace it with support tickets.
- Swap to another SKU, scent, or size before cancel.
- Pause or delay beats lose.
- Suppress aggressive win-back offers while someone is only skipping. They are still a subscriber.
If support tickets cluster around "how do I skip," your education flow and portal UX are underbuilt - not your acquisition creative.
Subscription onboarding (first 14 days of a sub)
Different from one-time post-purchase. Cover:
- Shipping cadence and what arrives when
- How to skip, swap, pause, or change address
- When they will be charged next
- How to update the card without hunting
Early voluntary churn often comes from "I did not know I subscribed" or "I thought it was a one-time box." Onboarding fixes expectation. It does not need a discount to work.
Cancel-save vs win-back (keep separate)
| System | When it fires | Goal |
|---|---|---|
| Cancel-save | Still in cancel / pause intent flow | Keep them subscribed (or pause) with a relevant offer or friction reduction |
| Win-back | Already cancelled / expired | Reactivate a former subscriber |
Do not redefine these inconsistently with the dunning playbook. Cancel-save is active intent. Win-back is after exit. Mixing them wastes margin and muddies reporting.
Dunning and failed payments - ownership callout
Deep playbook: involuntary churn on Shopify.
Rule: the billing app owns retry logic. Do not invent a Day 0 / Day 2 / Day 5 Klaviyo series that fights Recharge, Skio, or native Shopify Subscriptions retries. Duplicate dunning emails train people to ignore you and can contradict live charge state.
What Klaviyo should own in this stack:
- Card-update nudges when billing events are real and authoritative
- Post-recovery confirmation
- Win-back after terminal cancel
- Brand-side SMS only if consent and compliance are clean
Pre-dunning for expiring cards is cheaper than post-failure recovery. Calm "your card on file expires soon" with the same secure update link pattern beats a soft-decline spiral later.
If you cannot produce a clean involuntary vs voluntary churn split, that audit is P0 before another welcome-series redesign.
How this sits next to post-purchase (one-time) flows
Use post-purchase email for second purchase as the one-time / first-order track. Do not rebuild that day-by-day table here.
Branch logic:
- Subscription started from first order → subscription onboarding + pre-renewal + dunning path. Suppress refill nags that fight the sub ("buy another jar" while they are already on auto-ship).
- One-time buyer → second-purchase sequence. Later convert to subscribe-and-save with a dedicated ask, not a random blast.
- Lapsed one-time vs cancelled subscriber → separate win-back flows. Different objections, different offers, different metrics.
30 / 60 / 90 day build order (mid-stage team)
Days 1-30 (P0)
- Audit dunning ownership (billing app vs Klaviyo). Kill conflicting retries / emails.
- Ship or fix pre-renewal.
- Align cancel-save with the portal (pause / skip / relevant save, not a blanket deep discount that trains cancel behavior).
- Launch subscription onboarding for new subs.
- Turn on pre-dunning for known card expiries where data exists.
Days 31-60 (P1)
- Win-back for terminal cancels / expired subs (suppressed during active dunning).
- Deepen post-purchase for non-subscribers (second-purchase guide).
- Add browse abandon if creative and offer bandwidth allow.
- Instrument recovered MRR, renewal rate, and involuntary share of churn on the weekly review.
Days 61-90 (P2)
- Sunset non-openers to protect deliverability.
- Light VIP / high-LTV retention or referral.
- Refine skip / swap education from real support-ticket themes.
- Tie outcomes to the Engine review: recovered MRR, renewal rate, involuntary share of churn - not open-rate theater.
If the team is stuck choosing between "more Meta tests" and "fix lifecycle," stage guidance in when to hire a D2C growth agency can help. Retention leaks often pay back faster than another acquisition experiment.
Metrics that prove the stack works
| Metric | Why it matters |
|---|---|
| Renewal rate / retained MRR | Core subscription health |
| Involuntary vs voluntary churn split | Tells you dunning vs cancel-save priority |
| Recovery rate on failed payments | Proves dunning ownership works |
| Cancel-save rate | Proves portal + save offers work |
| Skip / pause rate | Context, not vanity - healthy flexibility vs silent decay |
| Flow-attributed revenue | Directional only |
| Spam / unsub / deliverability | Protects the whole ESP |
Operator rule: opens are not success. Retained and recovered MRR are. Put those next to ad spend on the same weekly sheet.
FAQ
What Klaviyo flows should a D2C subscription brand have beyond welcome and abandoned cart?
Prioritize subscription onboarding, pre-renewal, skip/swap/pause education, cancel-save, win-back, and - coordinated with the billing app - failed-payment / pre-dunning messaging. Add browse abandon, sunset, and VIP as P2. Welcome and cart protect acquisition. Renewal, portal, and recovery protect MRR.
Should failed-payment emails live in Klaviyo or Recharge/Skio?
The billing platform should own retry timing and authoritative recovery state. Messaging should follow that truth - often native recovery notifications, or Klaviyo only when the integration exposes reliable failure/recovery events and duplicates are disabled. Do not invent a parallel Day 0/2/5 series that fights retries. Full ownership rules: involuntary churn dunning playbook.
What is a pre-renewal flow and when should it send?
A pre-renewal flow reminds subscribers before the next charge, confirms address/card, and surfaces skip, swap, or delay so renewals are not a surprise. Common timing is 7 / 3 / 1 day before charge, tuned to 30-day vs longer cadences. Success is fewer "I was charged?" tickets and healthier renewal / skip behavior - not higher open rates.
How is cancel-save different from win-back?
Cancel-save targets people still in cancel or pause intent and tries to keep the subscription alive (or paused). Win-back targets people who already cancelled or expired and tries to reactivate them. Keep triggers, offers, and metrics separate.
Do subscription brands still need a post-purchase second-purchase flow?
Yes for one-time buyers, and as a branched path when someone did not start a subscription on order one. If they subscribed on order one, shift to subscription onboarding and suppress refill nags that fight the sub. Details: post-purchase second-purchase.
What order should we build these flows if we are under-resourced?
P0 in the first 30 days: dunning ownership audit, pre-renewal, cancel-save alignment, subscription onboarding, pre-dunning. P1 by day 60: win-back, non-sub post-purchase depth, browse abandon if bandwidth allows. P2 by day 90: sunset, VIP, skip/swap refinement from support themes.
Welcome + cart look complete but MRR leaks?
A growth operator will map pre-renewal, portal, and dunning ownership into a revenue-ranked 24-hour roadmap.
Request a Growth Diagnosis →