Fintech
Key points

Key points

  1. 1Proration charges or credits a customer for the exact share of a billing period they spent on each plan, and the main decision is whether downgrades take effect now or at renewal.
  2. 2Failed payments split into soft declines worth retrying and hard declines that need a new card, and treating them the same wastes attempts.
  3. 3Dunning is the combination of scheduled retries, customer messages and a grace period that recovers failed renewals before the subscription lapses.
  4. 4Churn has two causes with different fixes: voluntary churn is a product problem, and involuntary churn is a billing problem you can mostly engineer away.

The billing events that cause trouble

A subscription business charges the same customer again and again. Most of those charges are boring. The trouble sits in three kinds of events:

  1. A customer changes their plan in the middle of a period. They upgrade, downgrade, add seats or remove seats. You have to decide what they owe for the partial period.
  2. A renewal payment fails. The card expired, the account ran short or the bank's fraud system blocked the charge. You have to decide how to get paid without losing the customer.
  3. A customer leaves. Either they chose to cancel, or the payment failure ran its course and the subscription ended on its own.

Each event has a billing mechanism attached to it. Proration handles the first. Dunning handles the second. Churn measurement tells you how well you are handling the third. They belong in one article because they share the same data, the same billing system and, often, the same customer on the same day.

Proration: the math

Proration means charging a customer only for the part of a billing period they used each plan. Recurly gives the standard formula:

Prorated amount = (days on the plan / days in the billing period) x full period price

A mid-cycle change produces two lines: a credit for the unused time on the old plan and a charge for the remaining time on the new plan. Using made-up numbers on a 30-day period, a customer on a 90 per month plan who upgrades to a 150 per month plan on day 20 gets:

LineCalculationAmount
Credit for old plan10 / 30 x 90-30
Charge for new plan10 / 30 x 150+50
Net due+20

That pattern follows Recurly's worked example, where the credit for the old plan and the charge for the new plan are calculated separately and then combined.

Billing systems add details that matter in practice. Stripe's documentation notes that it calculates prorations down to the second by default, and that you can change the granularity to days, hours, weeks or months. It also warns that negative prorations are not automatically refunded and positive prorations are not immediately billed: by default, both roll into the next invoice. If your customer expects to pay the difference today, you must invoice it explicitly.

Seat changes are where spreadsheets break. Turnstile describes the common error of collapsing several seat changes into one calculation: a customer who adds five seats on day 10 and three more on day 20 needs two separate proration lines, not one. Let your billing system do this math. Hand calculations drift, and every drift becomes a support ticket.

Proration: the policy decisions

The formula is fixed. The policy is yours. Four decisions shape how customers experience plan changes.

Do upgrades take effect immediately? Almost always yes. PayPro Global recommends prorating upgrades so customers get instant access without paying for two plans at once. Making a customer wait until renewal to get what they want to pay for is leaving money on the table.

Do downgrades take effect immediately? This is a real choice. PayPro Global notes that some businesses do not prorate downgrades and apply them at the end of the paid cycle. End-of-cycle downgrades are simpler and avoid issuing credits. Immediate downgrades feel fairer to the customer. Pick one, state it on the pricing page and apply it the same way every time.

Are credits refunded or carried forward? Turnstile observes that most B2B SaaS companies apply credits to future invoices rather than issuing refunds. Refunds cost you processing time and sometimes fees. Carried credits keep the customer and the cash.

Does the billing date move? Treat an upgrade as a change to the existing subscription, not a cancel-and-restart. Turnstile recommends this to preserve the original billing anniversary date. A moving anniversary confuses customers and complicates your revenue reports.

Write these four answers down in one paragraph of policy. Support, sales and engineering should all be able to point to the same text.

Why renewals fail

Every recurring charge is a new authorization request to the customer's bank, and some fail. The reason for the failure decides what you should do next. Chargebee splits failures into two groups:

Decline typeWhat it meansExamplesRetry?
Soft declineTemporaryInsufficient funds, temporary hold, network timeoutYes, on a schedule
Hard declinePermanentClosed account, expired card, lost or stolen cardNo, ask for a new card

Chargebee warns that retrying a hard decline wastes attempts and risks card-network penalties. Stripe's retry engine follows the same rule: it cannot automatically retry a payment after a hard decline code without a new payment method.

Paddle lists the common causes behind these declines: expired cards, hard declines after fraud, soft declines from maxed-out credit limits, out-of-date billing information and charges not flagged as recurring. The last one is a billing configuration mistake, not a customer problem. If your charges are not marked as recurring, the issuer may treat a monthly charge as unusual and decline it.

Dunning: retries, messages and grace periods

Dunning is the automated process that recovers a failed renewal. Solidgate describes it as a structured sequence of automated retries and customer communication that escalates in urgency over a defined recovery window. A dunning system has three parts.

1. Retries. The system re-attempts the charge on a schedule. Fixed schedules work, but smarter ones time each retry using signals about when that card is most likely to clear. Stripe's Smart Retries setting, as documented on 2026-10-17, lets you choose a policy window and recommends a default of 8 tries within 2 weeks. Whatever tool you use, match the window to your billing cycle: a two-week window fits monthly plans, while annual contracts justify a longer one.

2. Messages. Customers need to know when their action is required. Zuora's example sequence escalates from email to an in-app notification or SMS if the first email goes unopened. Solidgate recommends that every message carry a direct link to update payment details so the fix takes one step. Start polite and specific: "Your card ending 4242 was declined. Update it here." Become more direct as the window closes.

3. A grace period. Keep access live while recovery runs. Solidgate notes that a subscriber whose card clears on the third retry should never lose service. Paddle's example shows why: a marketing tool that locks out a customer the day a charge fails stops their campaigns, and the customer's irate call to support turns an accident into a reason to leave.

A simple dunning plan for a monthly product looks like this:

Day 0   Charge fails. Soft decline: schedule retries. Hard decline: skip retries.
Day 0   Email: "Payment didn't go through" + update link. In-app banner on login.
Day 3   Retry (soft only). Second email if card not updated.
Day 7   Retry. In-app message or SMS.
Day 10  Retry. Email: "Your account will pause on day 14."
Day 14  Final retry. If it fails: suspend, keep data, move to win-back.

When the window closes without payment, suspend rather than delete. A customer who comes back next month should find their work where they left it.

Prevention beats recovery

Zuora puts it plainly: the best dunning email is the one you never have to send. Three prevention tools stop failures before they happen.

Measuring churn by cause

Churn is the share of customers or revenue you lose in a period. A single churn number hides the two causes that need different owners.

Paddle defines them: voluntary churn is when a customer actively decides to end their subscription, and involuntary churn is when they churn because of payment failure, outdated payment information or insufficient funds. Zuora's glossary, read on 2026-10-17, puts involuntary churn at 20% to 40% of all churn in subscription businesses. Treat that range as a reason to measure your own split, not as a benchmark to compare against.

Track these numbers every month, split by cause:

MetricWhat it tells youWho owns it
Voluntary churn rateCustomers who chose to leaveProduct and customer success
Involuntary churn rateCustomers lost to failed paymentsBilling and engineering
Failed renewal rateShare of renewal charges that fail on first attemptBilling
Recovery rateShare of failed renewals recovered before the window closesBilling
Hard decline shareShare of failures that cannot be retriedBilling

Voluntary churn responds to product work: better onboarding, features customers asked for and pricing that matches value. Paddle recommends acting on customer feedback and segmenting customers to understand why each group leaves. Involuntary churn responds to billing work: account updaters, pre-dunning, smart retries and a grace period. Do not send an exit survey to someone whose card expired. They did not leave, and they deserve a link to fix their card, not a question about why they are unhappy.

FAQ

FAQ

Should I prorate downgrades or apply them at renewal?

Either works if you state the policy and apply it consistently. End-of-cycle downgrades are simpler and avoid issuing credits, while immediate downgrades with a credit feel fairer to customers. Many B2B products carry the credit forward to the next invoice rather than refunding it.

How many times should I retry a failed subscription payment?

Retry soft declines several times over a window that fits your billing cycle, and never retry hard declines without a new card. Some billing tools time retries automatically based on signals about when a card is likely to clear. Match the window to your grace period so access and recovery end together.

What is the difference between dunning and debt collection?

Dunning is an automated, early process that keeps the subscription running while it fixes a payment problem. Debt collection is a later, often manual effort to recover money after a contract has ended. Dunning protects the customer relationship. Collection usually ends it.

Should I cut off access as soon as a payment fails?

No. A short grace period keeps customers working while retries and reminders run, and most failures are accidents rather than intent to stop paying. Cutting access immediately turns a billing hiccup into a support complaint and sometimes a cancellation.

How do I know whether churn is voluntary or involuntary?

Record the reason a subscription ended at the moment it ends. A cancellation the customer started is voluntary. A subscription that ended because the recovery window closed after failed payments is involuntary. Report the two rates separately every month.

Sources

Sources

  1. https://recurly.com/blog/prorated-billing-101-what-it-is-and-how-it-works/
  2. https://docs.stripe.com/billing/subscriptions/prorations
  3. https://turnstile.ai/blog/prorated-billing-meaning
  4. https://payproglobal.com/answers/what-is-saas-prorated-billing/
  5. https://www.chargebee.com/blog/dunning-process-best-practices/
  6. https://docs.stripe.com/billing/revenue-recovery/smart-retries
  7. https://www.paddle.com/resources/reduce-voluntary-and-involuntary-churn
  8. https://solidgate.com/blog/dunning-management/
  9. https://www.zuora.com/glossary/dunning-management/
  10. https://www.butterpayments.com/guides/disputes-chargebacks-guides/involuntary-churn/
  11. https://solidgate.com/blog/involuntary-churn/
About the author

About the author

Antonio Evans
Antonio Evans

Antonio Evans is the founder of Quanta Intelligence and a fractional CTO who builds HIPAA-ready AI systems for health and life-science companies. Before that he was technical co-founder of FriendsEAT for twenty years, CEO of Socialdraft, and a data engineer at IBM. Antonio lives with his dog Santino in Lisbon, Portugal.

All articles