The MRR You Never Counted: Failed Payment Revenue Loss

mrr lost to failed payments saas

The MRR You Never Counted: Failed Payment Revenue Loss

6 min readApril 9, 2026

The Revenue You Never See Leave

You check your churn dashboard every Monday morning. You know your numbers: 3.2% monthly churn, right where you want it. But there's another number you probably don't know, one that doesn't show up in your churn metrics at all.

It's the MRR that was supposed to arrive but didn't. The charges that failed silently while your customer stayed technically "active" in your system. The revenue that never made it to your bank account but also never triggered your churn alerts.

This isn't churn. Churn happens when someone makes a decision to leave. Failed payments happen when their card expires, their bank flags a legitimate charge, or they switched to a new card and forgot to update it. The customer often doesn't even know there's a problem. They're still using your product, still consider themselves a customer, but you're not getting paid.

Most founders dramatically underestimate this number because they're looking at the wrong metric.

Why Churn Metrics Hide Failed Payment Revenue

Your churn dashboard shows you when customers leave. It counts the subscriptions that end, the accounts that close, the people who click "cancel." It's a clean, decisive metric.

Failed payments don't work that way. When a payment fails, the subscription doesn't end immediately. Stripe retries the charge automatically. Your system might wait days or weeks before marking the account as delinquent. The customer stays in your "active" count while you're not collecting revenue.

Here's what actually happens: a $200/month customer's card fails on renewal day. Stripe retries three times over two weeks. All three attempts fail. Your dunning system sends emails. The customer never opens them. Finally, after 30 days, you cancel the subscription. Your churn metric counts one lost customer in that month.

But you didn't just lose one month of revenue. You lost $200 that should have been collected 30 days ago, plus another $200 that should have been collected today. If the card had an insufficient_funds error and the customer got paid two days later, you lost revenue you could have recovered with better timing. If the card was expired and the customer had already updated it at Netflix and Spotify, you lost revenue because nobody told them you needed the new number.

The churn metric shows one customer lost. The revenue impact is invisible.

Calculating Your Real Failed Payment Revenue Loss

Here's how to find your actual number. You need to look at charges, not subscriptions.

Pull your Stripe data for the last 90 days. Count every charge marked as "failed." Not subscriptions that eventually churned—actual failed charge attempts. Multiply the number of failures by your average charge amount. That's your failed payment volume.

Now separate those failures into two categories: temporary problems and permanent problems. Insufficient funds, generic declines, do_not_honor errors—these are timing issues. The card works, the customer has money, the timing was wrong. These charges could have been recovered with better retry logic or faster customer communication.

Expired cards, incorrect card numbers, fraudulent card flags—these are communication problems. No retry will ever work. Only the customer can fix these, and only if someone tells them there's a problem.

For most SaaS businesses, the split is roughly 60% timing problems and 40% communication problems. Let's work through a real example.

A Real SaaS Example

You run a SaaS business with 1,200 customers and $180,000 in MRR. Average plan is $150/month. Over 90 days, you see 420 failed charges. That's 14% of your renewal attempts failing.

420 failures × $150 average = $63,000 in failed charges per quarter.

Of those 420 failures, you eventually recover 180 of them. Customers update their cards, retry logic catches them on a better day, or your dunning emails work. You collect $27,000 of that $63,000.

The remaining 240 charges never get collected. Some customers eventually churn. Others stay but you never recover that specific missed payment. That's $36,000 per quarter in revenue you attempted to collect but never received.

Annualized, that's $144,000. Nearly 10% of your annual revenue just disappeared.

Your churn dashboard shows 3.5% monthly churn, which feels manageable. But you're losing an additional 8% of your revenue to failed payments that your churn metric doesn't capture. The real revenue retention problem is twice as large as your churn number suggests.

The Two Types of Lost Revenue

Not all of that $144,000 is created equal. About $86,400 of it came from timing problems—insufficient funds errors that could have succeeded if you'd retried at a different time of day, or generic declines that would have worked three days later. This is recoverable revenue. Stripe's automated retry logic helps, but it's not optimized for your specific customer base or payment patterns.

The other $57,600 came from communication problems. Expired cards, changed card numbers, fraud blocks. No amount of retry optimization will fix these. You need to reach the customer, tell them there's a problem, and get them to update their payment method. If your dunning emails have a 15% open rate, you're not reaching 85% of these customers until it's too late.

This distinction matters because the solutions are completely different. For timing problems, you need better retry intelligence—understanding when your customers get paid, what time of day transactions succeed, which banks approve charges faster in the evening. For communication problems, you need to reach the customer before they stop thinking of themselves as your customer.

What This Means for Your Business

Start tracking failed charge volume separately from churn. They're related but distinct problems. A customer who churns after a failed payment shows up in both metrics. A customer whose payment fails but eventually updates their card shows up only in your failed payment data.

Most founders discover they're losing 5-10% of their MRR annually to failed payments. For a $2M ARR business, that's $100,000-$200,000 that should have been collected but wasn't. It's not counted in your churn rate because many of these customers never technically churned. They just stopped paying for a while, or you never collected that particular charge.

The real cost isn't just the lost revenue. It's the compounding effect on growth. Every dollar you fail to collect is a dollar you can't invest in acquisition, product, or team. It's growth that never happened because revenue that should have arrived didn't.

Find your number. Separate timing problems from communication problems. Then you can actually fix it. Stripe handles the retries. You need to handle the conversations. That's where the real recovery happens.

Free diagnostic

See exactly what's happening in your Stripe account

Connect your Stripe account and get a breakdown of every failed payment — which ones can be retried, which ones need customer outreach, and how much is recoverable. Takes 5 minutes. No credit card required until we recover $49.

Run free diagnostic