Subscription Payment Processing Guide: Recurring Billing, Dunning, and Real Costs

Subscription businesses fail at payment processing in one of two ways: they overpay on per-transaction rates, or they lose revenue to involuntary churn from failed payments. Both are fixable — but they require different tools than what one-time payment businesses need.

What subscription billing requires that standard processing doesn't

Processing a subscription payment isn't just charging a card on file repeatedly. The technical and operational requirements are genuinely different:

The involuntary churn cost calculation

Involuntary churn — subscribers lost to failed payments, not active cancellations — is consistently underestimated by subscription businesses. The math compounds:

MRR Avg Subscription 1% Involuntary Churn/Month Annual Revenue Lost + CAC to Re-acquire (at $75)
$20,000$405 subscribers$2,400$2,775
$50,000$5010 subscribers$6,000$6,750
$100,000$60~16 subscribers$11,520$12,720
$250,000$75~33 subscribers$29,700$32,175

A dunning system that recovers 50% of would-be involuntary churn cuts those figures in half. At $100K MRR, that's $6,000/month in recovered revenue — $72,000/year. The $9,000/year Recurly fee (at 0.9% of $1.2M annual revenue) pays for itself more than 8x in recovered churn alone, before any other feature is counted.

The silent killer: Most subscription businesses don't measure involuntary churn separately from voluntary churn. They see "churn rate" and assume customers left by choice. Pulling your cancellation reason data and separating "payment failed" from "customer cancelled" is the first step — businesses that do this typically discover involuntary churn is 30%–40% of total churn, not the 5%–10% they assumed.

Dunning management: what good looks like

A basic dunning sequence that materially reduces involuntary churn runs over 7–14 days and includes both automatic retries and customer communication:

  1. Day 0: Charge fails. Immediately retry once (soft declines — "insufficient funds temporarily" — often succeed on same-day retry).
  2. Day 1: Send payment failure email with update card link. Keep tone factual, not alarming.
  3. Day 3: Retry charge. If failed again, send second email with more urgency.
  4. Day 7: Final retry. Send final notice that access will be suspended at day 14.
  5. Day 14: Suspend access (don't delete account). Send win-back email with easy reactivation link.

Recurly's data shows this sequence recovers 12% of churning subscribers who would otherwise be lost. Stripe's Smart Retries (ML-based optimal retry timing) recovers an average 11% of failed charges that would otherwise go unrecovered. Both outperform manual "retry after 3 days" approaches by 2–3x.

Processor comparison for subscription businesses

Platform Processing Rate Billing Platform Fee Dunning Best For
Stripe Billing 2.9%+$0.30 (or negotiated) 0.5% of recurring revenue Smart Retries (ML-based), basic email Early-stage, dev-heavy teams, simple billing
Recurly Stripe/Braintree/Adyen under the hood 0.9%–1.5% of revenue Intelligent dunning engine, A/B tested messaging $50K–$1M MRR, complex billing, churn focus
Chargebee Stripe/Braintree under the hood $249–$599/mo (flat) Smart Dunning, in-app payment update B2B SaaS with complex pricing tiers
Braintree 2.59%+$0.49 (or negotiated IC+) $0 (basic subscription tools included) Basic retry only — no email dunning High volume, PayPal-heavy customer base, international
Paddle 5%+$0.50 (merchant of record) Included in 5% Basic dunning included Global SaaS wanting tax/compliance handling

Recurly's platform fee math: At $100K MRR ($1.2M/year), 0.9% = $10,800/year in platform fees. If Recurly reduces involuntary churn by 12% (the claimed average), and your baseline involuntary churn is 1.5% of MRR, you recover ~$21,600/year in revenue. Net ROI: $10,800 in fees against $21,600 in recovered revenue — 2x return on the platform cost, not counting analytics, proration, or developer time saved.

What Stripe Billing handles vs what it doesn't

Stripe Billing (the subscription layer on top of Stripe Payments) handles more than most people realize, and less than dedicated subscription platforms:

The decision point: if you're spending more than 5 hours/week managing billing edge cases or analyzing subscription metrics in spreadsheets, a dedicated platform (Recurly, Chargebee) is cheaper than the engineering time you're spending on workarounds.


4 subscription billing mistakes that compound over time

1. No card updater = silent churn every renewal cycle

When a subscriber's card expires or is replaced after fraud, the stored card number becomes invalid. Without Visa/Mastercard Account Updater pushing the new card details to your processor automatically, the next billing cycle generates a failed charge. The subscriber may not notice — they're still receiving service if you don't immediately suspend — until you churn them at the end of your grace period. At 1,000 subscribers with average 2-year card replacement cycles, 40 cards go stale per month. Card updater keeps those cards current without subscriber action.

2. Flat retry schedules instead of intelligent timing

Retrying a failed charge at exactly 3-day intervals is a cargo cult. Banks clear more transactions on weekdays than weekends; payday (1st and 15th of month) sees higher success rates for "insufficient funds" declines. Stripe Smart Retries and Recurly's retry engine both use ML to determine optimal retry timing per decline code. The improvement over fixed-interval retry is 20%–35% better recovery rate — meaningful when 6% of your MRR is at risk each month.

3. Not separating involuntary from voluntary churn in reporting

A business reporting "3% monthly churn" might actually have 1% voluntary churn and 2% involuntary churn. Those require completely different interventions. Voluntary churn needs product and value improvements. Involuntary churn needs dunning improvements. Fixing one doesn't fix the other. Pull your cancellation reasons — "payment_failed" or "billing_failure" should be separated in your reporting before you spend a single dollar on product changes to reduce churn.

4. Ignoring the annual plan recovery opportunity

Annual subscribers who fail payment are often the highest-value customers — they committed to a full year. The failed payment might be $480 on a $40/month plan. These subscribers warrant a more persistent recovery effort: personal outreach from customer success, an offer to switch to monthly temporarily while the billing issue is resolved, or a brief pause option. Most businesses treat annual payment failures identically to monthly failures; personalizing recovery for annual subscribers typically improves recovery rate by 15%–25% on the highest-LTV cohort.


Frequently asked questions

What processing rate do subscription businesses pay?

Recurring card-on-file charges process at card-not-present interchange rates: 1.65%–2.2% at interchange. On Stripe flat-rate, that's 2.9%+$0.30 regardless. On interchange-plus, effective rates run 2.2%–2.6% depending on card mix. At $100K+ MRR, negotiating interchange-plus with Stripe typically saves $3,000–$7,000/year versus flat-rate. Recurly and Chargebee add a 0.5%–1.5% platform fee on top of whatever processor rate you negotiate.

What is involuntary churn and how do I measure it?

Involuntary churn is subscribers lost to failed payments rather than active cancellations. Measure it by pulling cancellation reason data from your processor or billing platform and filtering for "payment_failed" or "billing_failure" events. Typical subscription businesses see 30%–40% of total churn is involuntary — most assume it's under 10% until they measure it. A dunning improvement that recovers 50% of involuntary churn can reduce total churn rate by 15%–20%.

Is Recurly worth the cost?

At 0.9%–1.5% of revenue, Recurly costs $10,800–$18,000/year at $1.2M ARR. It pays for itself if it reduces involuntary churn by more than that amount. Recurly's own data claims 12% average churn reduction — at $1.2M ARR with 1.5% baseline involuntary churn rate, that's $21,600/year in recovered revenue. The ROI is typically positive for businesses above $30K MRR that have measurable involuntary churn. Below $30K MRR, Stripe Billing's Smart Retries handle most of the recovery at lower cost.

What is the difference between Stripe Billing and Recurly?

Stripe Billing is Stripe's native subscription layer — tightly integrated with Stripe Payments, developer-friendly, and cheaper at low volumes (0.5% platform fee). Recurly is a subscription management platform that sits on top of Stripe, Braintree, or Adyen and adds intelligent dunning, subscription analytics, revenue recognition, and A/B tested recovery messaging. Stripe Billing handles simple billing well; Recurly adds measurable value when dunning optimization and subscription analytics are the bottleneck.