All segments

Churn Rate for Non Subscription Services: What's Normal

Churn rate for non subscription services has no standard formula; this gives the calculation method and where vendor benchmark figures stop applying.

  • Published
  • Reading time 9 min read
  • Author Nafiul Hasan
Churn Rate for Non Subscription Services: What's Normal. Diagram: the step that changes the price. RETAIN Churn Rate for Non SubscriptionServices: What's Normal pointerflow.com

Short answer

Churn rate for non subscription services is the share of customers who stop buying within a defined window, measured as lapsed-customer count divided by active customers at the start of that window — there is no cancellation event to count, so the window itself becomes the definition, and brands under $3M revenue on non-Plus platforms should confirm their order-history depth before trusting any figure here.

What does churn rate for non subscription services actually measure?

Churn rate for non subscription services measures the same thing subscription churn measures — customers who stopped buying — but without the event that normally triggers the count. A subscription brand knows the moment someone cancels. A brand selling replenishable goods, apparel or one-off purchases has no such moment. The customer just stops.

That difference sounds small. It isn’t. Every published churn benchmark — Recurly’s Consumer Goods Churn Benchmark, Recharge’s DTC panel, ProfitWell’s aggregate figures — measures logo churn or MRR churn on subscription contracts. Those numbers come from a cancel button, a failed renewal charge, or a support ticket that says “cancel my subscription.” A brand without that mechanism is measuring something structurally different, even when the resulting percentage looks comparable on a slide.

The fix isn’t to find a different published number. It’s to define your own event: a window of inactivity long enough to be meaningful, short enough to be actionable. That window becomes your churn definition, and it has to be built from your own order history — not borrowed from a vendor panel that never included a store like yours.

Who this benchmark is for, and who it isn’t

This benchmark is written for operators running $3M-$30M in revenue on Shopify Plus or a comparable paid subscription platform, selling products people buy again without a formal subscription: apparel, home goods, gifting, beauty brands running a loyalty programme instead of auto-ship. If your store runs under $3M or on a free-tier platform, the order-volume thresholds here won’t give you a stable number — a churn calculation needs enough monthly order volume that one bad week doesn’t move the percentage by several points, and a store doing a few hundred orders a month rarely clears that bar.

It’s also not for brands where subscription is the primary revenue model. If most of your revenue already comes through Recharge, Bold, or Skio recurring orders, you have an actual cancellation event to count and the Recurly and Recharge benchmarks apply to you directly, unlike to the non-subscription reader this piece is written for.

How to calculate churn without a cancellation event

Pick a window first. The window should be roughly two to three times your median repurchase interval — pull that interval from your own order data, not an industry assumption, since it varies enormously between a consumables brand with a six-week cycle and an apparel brand with a six-month one.

Once the window is set:

  1. Count customers who placed an order in the prior window (the “cohort”).
  2. Count how many of that cohort placed at least one order in the current window.
  3. Subtract the current-window count from the prior-window cohort count. That’s your lapsed count.
  4. Divide the lapsed count by the prior-window cohort count. That’s your churn rate for the window.

The step teams get wrong is changing the window length between reporting periods. A marketing team under pressure to show improvement will sometimes widen the window from 90 to 120 days mid-quarter, which mechanically lowers the churn number without any change in customer behaviour. Fix the window once, document it, and treat any request to change it as a request to redefine the metric, not to report it more favourably.

A second common error is measuring churn on a customer ID that isn’t stable. If your store allows guest checkout, or migrated platforms in the last year, a portion of “lapsed” customers may simply be repeat buyers who got a new customer ID on their second order. Before trusting the number, confirm identity resolution — email or phone match — is applied consistently across the full order history you’re measuring.

Where the published subscription benchmarks apply, and where they don’t

Recurly’s Consumer Goods Churn Benchmark report and Recharge’s DTC panel are the two most commonly cited sources when someone searches for a churn number to compare against. Both measure subscription-specific attrition: a customer who was on a recurring billing plan and either cancelled it outright or let it lapse through a failed renewal charge. Neither publisher tracks stores without a subscription mechanism, because there’s no equivalent event for them to capture.

A specific benchmark figure pulled from either source — a monthly logo churn percentage, an annual retention rate — is not something this article can responsibly hand you as a target for a non-subscription store, because it was never measured on a business like yours. Pulling that number and reporting it as your target is the mismatch to avoid: it will look precise and be meaningless.

What those sources are still useful for is understanding the mechanics of churn measurement that carry across models. A meaningful share of subscription churn is involuntary — caused by an expired card or a declined charge rather than a deliberate cancellation, not a customer decision at all. 20-40% of churn is involuntary (Paddle/ProfitWell, vendor-reported), and ~9% of MRR is lost to failed payments (Baremetrics, vendor-reported). Stripe’s own data attributes around 25% of lapsed subscriptions to payment failure. None of these apply directly to a non-subscription store — there’s no recurring charge to fail — but the underlying point holds: some share of any “churn” is really an infrastructure problem, not a satisfaction problem, and a non-subscription brand should ask the equivalent question about expired saved payment methods on one-click reorder flows before assuming every lapse reflects dissatisfaction.

The sourced-figure table keeps this distinction explicit — figures that are safe to reference for a non-subscription business kept apart from figures that describe a mechanism a non-subscription business does not have.

FigureWhat it measuresApplies to non-subscription stores?
~9% of MRR lost to failed payments (Baremetrics, vendor-reported)Subscription MRR lost to declined recurring chargesNo
20-40% of churn is involuntary (Paddle/ProfitWell, vendor-reported)Share of subscription cancellations caused by payment failureNo
25% of lapsed subscriptions trace to payment failure (Stripe, vendor-reported)Subscription renewal failures specificallyNo
Recurly Consumer Goods Churn Benchmark monthly logo churnSubscription-box and replenishment logo churnNo — measured on active subscription contracts; treat as reference only
Recharge DTC panel churn figuresChurn among Shopify stores with subscription enabledNo — self-selected subscriber cohort, not general repeat customers
Your own repeat-window churn rateLapsed customers over your chosen window, from your order historyYes — this is the only figure built for your model

Take one thing from the table: every widely cited churn figure in ecommerce is a subscription figure, which is exactly why a non-subscription brand searching for “what’s a normal churn rate” keeps finding numbers that don’t fit — the fit problem, not a data-quality problem.

What a good number looks like for a non-subscription brand

There is no published, cross-brand benchmark for non-subscription churn at the $3M-$30M revenue tier — that’s a genuine gap in the market’s public data, not an oversight in this article, and any number offered as one should be marked metric to confirm rather than repeated as fact. What’s usable instead is trend, measured against your own baseline: is the churn rate for your chosen window rising, flat, or falling quarter over quarter, on a stable customer ID and a fixed window length.

A brand with a rising churn rate and flat acquisition spend will see blended CAC rise even though nothing changed in the acquisition channel — the maths shifts because more of the customer base needs replacing each period. That’s the financial exposure that matters here, even without a subscription MRR line to point a finance team at directly.

If you want an illustrative, hypothetical example to sanity-check your own arithmetic: a brand with 10,000 active customers in a 120-day window, of whom 7,500 reorder within the next 120-day window, has a churn rate of 25% for that window (2,500 lapsed ÷ 10,000 starting cohort). That’s a worked example only — it uses invented figures to show the calculation, not a target to match, and shouldn’t be repeated elsewhere as if it described a real cohort.

What breaks this calculation at volume

Two things commonly break a non-subscription churn calculation once a brand scales past a few thousand monthly orders. First, multi-channel identity: a customer who buys on Shopify direct and again through a marketplace integration often gets two separate customer records unless identity resolution is explicitly configured to merge them, which inflates the apparent lapsed count. Second, seasonal category mismatch: a gifting or holiday-heavy brand will show enormous apparent churn on a fixed calendar window purely because most customers only buy once a year, by design — for that kind of brand, the window needs to be set to the length of a full buying season, not a generic 90 or 180 days, or the number will always read as bad news regardless of actual retention.

For a brand where every product category has a different natural repurchase cycle — consumables reordering monthly, apparel reordering seasonally — a single blended churn number across the whole customer base hides more than it shows. Calculate it per category or per typical basket type where volume allows, and treat the blended figure as a summary rather than a diagnostic.

Churn measured this way is a subscription-retention problem even without a subscription product: the mechanics of defining a lapse window, separating voluntary from involuntary loss, and building a win-back sequence around it are the same discipline that runs a subscription programme, just applied to a repeat-purchase relationship instead of a recurring charge. If you’re building this measurement for the first time, /services/subscription-retention is where that discipline gets applied to a specific store’s order data rather than a generic template.

Sources

  • Baremetrics, approximately 9% of monthly recurring revenue lost to failed payments — vendor-reported.
  • Paddle / ProfitWell, 20-40% of subscription churn attributed to involuntary (payment-failure) causes rather than voluntary cancellation — vendor-reported.
  • Stripe, approximately 25% of lapsed subscriptions traced to payment failure — vendor-reported.
  • Recurly’s Consumer Goods Churn Benchmark report and Recharge’s DTC panel are referenced by name as the standard subscription-churn sources in this category; no specific figure from either is quoted in this article, since both measure subscription-specific attrition that does not transfer to a non-subscription model.

Frequently asked

What window should I use to define a lapsed customer?

Pick a fixed window — 90, 180 or 365 days, matched to your typical repurchase cycle — then divide the number of customers who bought in the prior window but not the current one by the number active at the start. No cancel button means the window does the defining, and changing it changes the number, so the window has to stay fixed once chosen.

Is churn rate the same as customer attrition for ecommerce?

They describe the same underlying loss, but attrition is usually the broader term and churn implies a rate over a set period. For a non-subscription brand, use whichever term your reporting stack already tracks — Shopify's own cohort exports and most CDPs default to 'repeat purchase rate' inverted, which is functionally the same maths as churn.

What counts as a lapsed customer for a brand with no subscription?

A customer who has not placed an order within a window set to roughly two to three times your median repurchase interval. A brand with a 45-day median reorder gap might set the window at 120 days. Setting it shorter than the natural buying rhythm inflates churn on customers who were simply due to buy next month.

Does the Recurly Consumer Goods Churn Benchmark apply to non-subscription brands?

No. Recurly's benchmark measures logo churn on active subscription contracts — a cancel or non-renewal event that a non-subscription store does not have. Treat it as a reference point for what subscription-model attrition looks like, not a target for a brand selling one-off or repeat orders without a recurring billing relationship.

What's a reasonable churn rate target for a $3M-$30M DTC brand?

There is no published cross-brand figure for this cohort on a non-subscription model — mark it metric to confirm and build your own from twelve months of order history instead. What you can benchmark against is your own trend: falling repeat-purchase rate quarter over quarter is the actionable signal, independent of what any other brand reports.

How is involuntary churn different when there's no subscription to fail?

Involuntary churn is a subscription-specific term for lapses caused by failed payments rather than a deliberate decision to stop buying. A non-subscription brand has no recurring charge to fail, so this category effectively doesn't exist for it — every lapse is a choice not to reorder, which changes what a win-back campaign should say.

Can Recharge's DTC panel data be used for a non-subscription store?

Recharge's DTC panel tracks subscription-enabled Shopify stores specifically, so its figures describe subscribers who opted into recurring billing — a self-selected group with different intent than a general repeat customer. Cite it only when discussing subscription cohorts; label any number pulled from it as vendor-reported and specific to that panel.

What's the difference between churn rate and repeat purchase rate?

Repeat purchase rate counts the share of customers who bought more than once in a period; churn rate counts the share who stopped. They're near-mirror measures of the same behaviour, but repeat purchase rate is forward-looking (has this person bought again) while churn is backward-looking (has this person stopped) — pick one as your primary metric and don't average both together.

How often should a non-subscription brand recalculate churn?

Monthly, using a rolling window rather than a calendar-month snapshot, so a slow December doesn't read as a spike against a strong November. Quarterly reporting is too slow to catch a shift in repurchase behaviour before it compounds across a full cohort.

Why does churn rate matter for a brand with no recurring revenue at risk?

Because acquisition cost keeps rising and a rising churn rate means more of every marketing dollar goes to replacing a customer who already converted once, rather than growing the base. The financial exposure is real even without a subscription MRR line to point at — it shows up as a rising blended CAC instead.

What data do I need before I can trust my own churn number?

At minimum twelve months of order history with a stable customer ID across channels — if guest checkout or a platform migration broke ID continuity partway through the year, the churn number will show a false spike at that break point rather than a real behavioural change.

Next step

Is this your subscription retention problem, or a symptom of another one?

Bring your numbers — the churn split, the decline rate, whatever your flows are earning — and we will tell you which of them is the expensive one.

Book a call →