What Is Dunning? A Practical Guide for SaaS Founders
Dunning is how subscription businesses recover failed payments. Learn what causes payment failures, why they matter, and how to automate recovery without losing customers.
Every SaaS founder will deal with failed payments
It doesn’t matter how good your product is. Between 5% and 18% of subscription payments fail every month. Cards expire, bank accounts run dry, fraud systems overreact. The result is the same: revenue disappears without the customer ever deciding to leave.
This is involuntary churn, and it accounts for 20–40% of all SaaS churn. The customer didn’t cancel. Their payment just didn’t go through.
What dunning actually means
Dunning is the process of recovering those failed payments. The term comes from the 17th-century English word “dun”, meaning to make persistent demands for payment. In modern SaaS, it means automated systems that detect a payment failure, notify the customer, and prompt them to update their payment method.
A typical dunning flow looks like this:
- Payment fails: your processor attempts to charge the card and it’s declined
- Notification sent: the customer receives an email explaining the issue
- Retry scheduled: the payment is retried after a configurable delay
- Escalation: if the first attempt doesn’t work, follow-up emails increase urgency
- Resolution: either the payment succeeds or the subscription is eventually cancelled
The goal is to recover the payment before the customer churns, without being so aggressive that you annoy them.
Why most founders ignore it
If you’re a solo founder or running a small team, dunning probably isn’t at the top of your priority list. You’re building features, talking to customers, and trying to grow. Payment recovery feels like an operational detail you’ll deal with “later”.
The problem is that “later” compounds. If 10% of your payments fail each month and you recover none of them, you’re losing roughly half your annual revenue growth to a problem you’re not even tracking.
What your payment processor does (and doesn’t do)
Every processor has some built-in retry logic. Stripe, for example, will retry failed payments on a fixed schedule, typically three attempts over about a week. But that’s it. No customer notification. No customisation. No insight into why it failed.
For many bootstrapped SaaS products, this basic retry recovers some revenue. But the recovery rate is much lower than what a dedicated dunning tool achieves, because:
- No customer communication: the customer doesn’t know their payment failed
- Fixed timing: retries happen on a schedule that might not match when the customer’s account has funds
- No pre-dunning: no warning before a card expires
- No escalation: same approach for every failure, regardless of the reason
What good dunning looks like
Effective dunning combines several strategies:
- Pre-dunning alerts: notify customers when their card is about to expire, before the payment even fails
- Smart retry logic: additional retry attempts that run upfront on a separate schedule, giving failed payments more chances to succeed before emails are sent
- Automated email flows: send branded, friendly emails that make it easy for the customer to update their payment method
- Escalation paths: start friendly, get more direct if the issue isn’t resolved
- Automatic resolution: stop the flow immediately when the payment succeeds
The best dunning systems are invisible to founders. You set them up once, and they quietly recover revenue in the background.
The cost of doing nothing
Here’s the maths for a SaaS product with $10,000 MRR:
- Monthly failed payments (at 9% failure rate): $900
- Annual revenue at risk: $10,800
- With no dunning: most of that revenue is lost
- With dedicated dunning (at ~60% recovery rate): $6,480 recovered annually
For $29/month, that’s a significant return. Dunning management delivers an average 5x return on investment. It’s one of the highest-impact, lowest-effort improvements a SaaS founder can make.
Getting started
If you’re currently relying on your processor’s native retry logic, you’re likely leaving revenue on the table. The first step is understanding your failure rate. Check your Stripe dashboard for the percentage of payments that fail each month.
Once you know the number, the decision usually makes itself.
ChurnWard is building automated dunning recovery for bootstrapped SaaS founders. Get started today.