If you run a SaaS business, you will eventually encounter the term "dunning." It sounds old-fashioned because it is. But the problem it solves is one of the most expensive leaks in modern subscription businesses.
This guide covers what dunning means, why SaaS businesses need it, how the process works, and what to look for in a dunning tool.
What Does Dunning Mean?
Dunning refers to the process of communicating with customers to collect payment for overdue invoices or failed subscription charges. The term comes from the 17th-century English word "dun," meaning to make persistent demands for payment.
In the context of SaaS and subscription businesses, dunning specifically means recovering failed recurring payments. When a customer's credit card is declined, expires, or hits its limit, the dunning process kicks in to recover that payment before the subscription is canceled.
Unlike debt collection, SaaS dunning is not adversarial. The customer usually wants to keep their subscription. They just have a payment method issue they may not even know about.
Why SaaS Businesses Need Dunning
Subscription payment failures are not edge cases. They happen constantly, across every SaaS business, at every stage.
On average, about 9% of subscription payments fail every month. The most common reasons are expired credit cards, insufficient funds, and bank-initiated declines. These customers did not choose to cancel. Their payment simply did not go through.
This is called involuntary churn, and it accounts for 20-40% of total churn in a typical SaaS business. Many founders look at their overall churn rate and assume it is all voluntary, meaning customers who decided to leave. In reality, a large portion of churn is a payment mechanics problem, not a product problem.
How the Dunning Process Works
Whether done manually or through an automated tool, the dunning process follows the same basic steps:
- Detect: A subscription payment attempt fails. The payment processor (e.g., Stripe) returns a decline code explaining why.
- Classify: The failure is categorized by type. Is it a soft decline (temporary, like insufficient funds) or a hard decline (permanent, like an expired card)? The classification determines the recovery strategy.
- Retry: For soft declines, the payment is retried at an optimal time. Insufficient funds? Retry near common pay dates (1st, 15th). Processing error? Retry within hours.
- Notify: The customer is contacted and asked to update their payment method. This can happen via email, WhatsApp, SMS, or in-app notifications.
- Recover: The customer updates their payment method or the retry succeeds, and the subscription continues without interruption.
The key insight is that different failure types require different strategies. Retrying an expired card is pointless. Emailing a customer about a temporary processing error is premature. An effective dunning system matches the right action to the right failure type.
Manual vs. Automated Dunning
Some founders handle dunning manually, especially in the early days. Here is how the two approaches compare:
| Factor | Manual Dunning | Automated Dunning |
|---|---|---|
| Setup time | None | 5-30 minutes |
| Ongoing time | 1-3 hours/week | Near zero |
| Retry timing | Inconsistent | Optimized by decline code |
| Customer outreach | Manual emails | Multi-channel (email, WhatsApp) |
| Decline code analysis | Manual lookup | Automatic classification |
| Recovery rate | 40-50% | 60-80% |
| Scales with growth | No | Yes |
Manual dunning works when you have a handful of customers and can personally email each one. But it breaks down quickly. At 100+ subscribers, you are spending hours per week checking failed payments, writing emails, and tracking who responded. Automated dunning handles all of this in the background, consistently and without your time.
What to Look for in a Dunning Tool
Not all dunning tools are equal. Here are the features that actually matter for recovery rates:
Decline code classification. The tool should automatically categorize failures by their decline code and apply different strategies for soft vs. hard declines. A tool that treats all failures the same is leaving recoveries on the table.
Smart retry timing. Retries should be scheduled based on the failure type, not on a fixed schedule. Insufficient funds should be retried near pay dates. Processing errors should be retried within hours. Expired cards should not be retried at all.
Multi-channel outreach. Email is the standard, but email dunning messages see only 20-30% open rates. Tools that add WhatsApp (90%+ open rates) or SMS give you a significantly better chance of reaching the customer.
Self-service payment update page. Customers need a simple, branded page where they can update their credit card without logging in. The fewer steps between the notification and the card update, the higher the recovery rate.
Analytics and reporting. You should be able to see how much revenue is at risk, how much has been recovered, and which strategies are working best.
Getting Started with Dunning
If you are on Stripe, you already have basic dunning through Stripe Smart Retries. This recovers about 38% of failed payments automatically. That is a starting point, but it leaves a lot of money on the table.
For most SaaS businesses, the next step is a dedicated dunning tool. The price range varies widely, from $3.50/month (Rebounce Starter) to $249+/month for enterprise tools like Churn Buster. For small SaaS, an affordable tool that adds smart retries, email sequences, and WhatsApp recovery will pay for itself with a single recovered payment.
The first step, regardless of which tool you choose, is to understand the scope of the problem. Check your failed payments in Stripe and see how much revenue is at risk. Most founders are surprised by the number.