Ecommerce

Subscription Billing and Failed Payments: The Revenue You Are Already Losing

SKIMBOX Team

A meaningful share of subscription churn is not customers deciding to leave. It is cards expiring, banks declining, and nobody following up. That revenue is recoverable and most businesses never try.

Subscription Billing and Failed Payments: The Revenue You Are Already Losing

Most subscription businesses treat churn as a single number and a product problem. Customers left, so the product must not have been good enough, so the response is more features or a lower price.

A meaningful share of those customers did not leave. Their card expired, or their bank declined a charge on the twenty-eighth of a month when the account was low, and nobody told them clearly enough for them to fix it.

That revenue is recoverable at a cost close to zero, and a great many businesses make no organised attempt to recover it because they have never separated the two causes in their own reporting.

Two kinds of churn, one number

Voluntary churn is a customer deciding your product is not worth the money. It is a real signal, it is worth understanding, and winning that customer back is slow and expensive.

Involuntary churn is a customer who still wants your product and has stopped paying for reasons neither of you intended. Their card expired. It was replaced after a fraud alert. The bank declined for risk reasons. The account was short that day.

They usually have no idea anything has happened.

These respond to completely different remedies, and combining them into a single churn percentage guarantees that any improvement effort is aimed at whichever cause happens to be larger, without anybody knowing which that is.

The first thing to do is separate them. Take last month's ended subscriptions and split them: customers who actively cancelled, and subscriptions that lapsed after a payment failed. Most billing systems can show you both.

That second number is usually larger than people expect. For many businesses it is the moment they realise they have been treating a collections problem as a product problem.

We are deliberately not quoting an industry figure for how much revenue is typically involved. Every published number on this comes from billing providers who sell recovery tooling. Your own number takes an hour to produce and is the only one worth acting on.

Why payments actually fail

Treating all failures as one category is why recovery efforts underperform. There are several distinct causes and they need different responses.

CauseNatureResponse
Card expiredPredictable, datedPrevent: email before expiry, account updater
Card replaced or reissuedCommon, invisible to youPrevent: card account updater
Insufficient fundsTiming problemRetry on a sensible schedule
Bank declined for riskMay resolve on retryLimited retries, then ask the customer
Limit exceededTiming problemRetry after the cycle turns
Card lost, stolen or closedPermanentDo not retry, ask for new details immediately
Technical failureTransientRetry promptly

Read down the response column and the point becomes obvious: the decline reason should route your response, and most businesses ignore the reason entirely and retry everything identically.

Processors return codes distinguishing temporary problems from permanent ones. Using them is the single largest improvement available in most setups, and it costs configuration rather than development.

Retrying a card that has been reported stolen eight times over two weeks achieves nothing except irritating a customer who needs to be asked for new details on day one.

The two mechanisms that prevent failures

Before recovery, prevention. Two things remove entire categories of failure.

The card account updater. The card networks operate services that supply merchants with updated details when a customer's card is replaced or reissued. Visa and Mastercard both run one [3]. Where your processor participates, recurring billing continues working through a card replacement without you or the customer doing anything at all.

Check three things: whether your processor supports it, whether it is enabled on your account, and whether it covers the card types your customers actually use, because coverage varies by network and region. Many businesses have it available and switched off.

Emailing before expiry. The most underused message in subscription billing, and it costs one automated email.

You know the expiry date. Write to the customer a fortnight before, asking them to update. That converts a future failure into routine housekeeping, at a moment when nothing has broken and nobody is annoyed. Compare that to the alternative sequence, where the charge fails, access is threatened, and the customer's first awareness of the problem arrives with a warning attached.

Retries, and getting the schedule right

Retrying a failed charge rather than treating the first decline as final is standard practice, and the schedule matters more than the fact of retrying.

A charge declined for insufficient funds on the twenty-eighth may well succeed on the second of the following month, because salaries arrive. Retrying it four hours later almost certainly fails again.

So retries should be spread across days rather than hours, and shaped around when people are likely to have funds.

Stripe's documentation describes a smart retry approach that uses time-dependent signals, such as how many devices have presented a given payment method recently, to choose retry timing, and notes a recommended default of around eight attempts over two weeks [1][2]. Whether that specific pattern suits you depends on your billing cycle and your customers, and it is a reasonable starting point.

How many is too many? Enough that they stop working or start damaging the relationship. Repeated declines can draw attention from your processor, and a customer receiving eight failure notifications experiences your billing as harassment rather than as help.

The resolution is to separate the two: retry on a schedule that reflects funding cycles, and notify sparingly. Those do not have to happen at the same frequency, and in a well-configured system they do not.

Dunning, without sounding like a debt collector

Dunning is the communication side: reaching customers after a failure to turn it into a successful payment without losing them. It typically combines automated retries, notifications and a grace period, and most billing platforms can send these messages when a payment fails, a card expires, or a method needs updating [1].

What the message should say. That something went wrong with the payment, not that the customer did something wrong. What happens next and when. And a single obvious link to update the card.

The tone difference is not cosmetic. The same underlying facts written as a helpful notification perform better than the same facts written as a demand, and businesses default to the second because whoever wrote the template was thinking about the money rather than the customer.

How many. Three works for most businesses: at first failure, part-way through the retry window, and before access is affected. The last one carries a real consequence and a deadline, which is what actually prompts action. Beyond three it becomes noise.

Where the link goes. This is where most recovery is lost. Send the customer to a single-purpose page that opens from the email, works on a phone, and requires no password if you can do that securely with a signed link.

Sending them to a general login page and expecting them to find the billing section loses customers who fully intended to pay. Every additional step costs you some of them.

Show it in the product too. Email is unreliable. Billing messages land in promotions folders, go to addresses nobody monitors, or reach somebody who left the company. A clear, non-alarming in-product banner with a direct link reaches engaged customers who never opened the email.

For business customers this matters more, because the person using the product is frequently not the person whose card is on file. The user sees the banner and forwards it to whoever handles payments, which is a path email alone never creates.

A worked recovery sequence

Abstract advice about retries and dunning becomes actionable once you see it as a single timeline. Here is one that works for a monthly subscription, with the reasoning attached.

Day minus 14, before anything fails. If the card expires this month, send the expiry reminder. Nothing has gone wrong, nobody is annoyed, and a proportion of customers update straight away. This message alone removes a slice of everything that follows.

Day zero, the charge fails. Do not email immediately for a transient decline. Wait a few hours, retry once, and see. A meaningful share resolve themselves and messaging those customers creates alarm for no reason.

Day one, first notification. Neutral tone, states what happened, one link to update. Full access continues and the email says so, because reassurance on that point prevents support contacts.

Days two to ten, retries continue on a spread schedule shaped around likely funding dates rather than fixed intervals. No further email during this window unless the decline reason changes to something permanent.

Day seven, second notification and in-product banner. The banner matters more than the email, particularly for business customers where the user and the cardholder are different people.

Day twelve, final notification. Names the date access changes. This is the message that actually drives action, because it carries a consequence and a deadline rather than a request.

Day fifteen, access restricted rather than cancelled. The subscription still exists, the data is intact, and one payment restores everything. Say that plainly on the restriction screen.

Day thirty, cancel and archive. Keep the account recoverable for as long as your retention rules allow, because customers do come back weeks later.

Note what the sequence does. It separates retry frequency from message frequency, escalates consequence rather than tone, and never deletes anything until the last moment.

Grace periods and cutting off access

Do not cut access immediately. The customer usually has no idea anything happened, and cutting them off is how a recoverable billing problem becomes an angry cancellation and sometimes a chargeback.

A grace period should cover your retry schedule plus a few days for the customer to act, which for most businesses means two to three weeks. Too short punishes people for their bank's behaviour. Too long teaches customers that payment is effectively optional.

Degrade gradually where you can: full access during the retry window, a visible in-product notice, then restriction. The exception is where continued service creates genuine cost or risk for you, in which case a shorter window is defensible and should be stated clearly at signup.

Annual plans behave differently

Worth a note, because most advice on this subject implicitly assumes monthly billing and annual subscriptions fail in their own way.

The failure is rarer and more expensive. A monthly customer whose card fails costs you one month's revenue while you recover them. An annual customer whose renewal fails costs you a year, and there is no second attempt next month to catch it.

The card is also far more likely to have changed, because twelve months is long enough for an expiry, a replacement, or the cardholder leaving the company entirely. The account updater matters more here than anywhere else.

And the notice period should be longer. Writing to an annual customer a fortnight before renewal, confirming the amount and the date and inviting them to update the card if anything has changed, is both good practice and good manners. It also surfaces the customers who intended to cancel, which is better discovered before the charge than after it as a dispute.

For business customers on annual plans, add one more step: check whether the person whose card is on file still works there. On a twelve-month cycle that assumption fails often enough to be worth testing, and a single email asking whether billing contact details are still correct prevents a renewal failing for a reason nobody could have diagnosed from the decline code.

The call nobody makes

For higher-value subscriptions, a two-minute phone call recovers revenue that three ignored emails did not.

Almost nobody does this, which is why it works. Set a value threshold above which a human follows up on a failed payment. At the top of your customer base the arithmetic is obvious; at the bottom it is not, which is exactly why a threshold rather than a policy.

The same applies to customers on invoice terms rather than cards. The failure mode is a missed invoice rather than a declined charge, the cycle is longer, and the remedy is a structured reminder sequence with a named human at the end. Business customers on invoice are the group most likely to lapse through simple inattention.

Make cancellation easy, genuinely

Businesses that hide the cancel button trade a small short-term retention gain for chargebacks, complaints and reputational damage.

A customer who cannot find how to cancel disputes the charge with their bank instead. That costs you the money, a dispute fee, and a mark against your processing account. It also produces a review that stays online permanently.

A clear billing page reduces support volume more than almost anything else you could build. It should show the current plan, the next charge amount and date, the payment method with its expiry, invoice history, and an obvious route to update payment or cancel.

If you want to retain people at the point of exit, do it with a well-designed offer or a question about why they are leaving, not with a maze.

While you are there: decide your proration rules and make them visible before the customer commits. Whether an upgrade charges immediately or at renewal, and whether a downgrade refunds or credits, matters far less than that it is stated clearly and applied consistently. Proration disputes are a common and entirely avoidable source of support contacts.

Common mistakes, and what they cost

Six patterns that account for most of the avoidable loss.

Treating every decline the same. Retrying a closed card eight times while sending the customer no request for new details. Costs you the recovery and annoys the customer simultaneously.

Emailing at the same frequency as retrying. Eight retries producing eight emails reads as harassment. The two schedules should be independent.

Sending customers to a login page. Every step between the email and the update form loses people. A single-purpose link recovers customers that a general login page does not.

Cutting access on first failure. Converts a bank's decision into your cancellation. Almost never justified and it produces disputes rather than payments.

Never checking what the platform is configured to do. The single most common one. Capability that exists and is switched off recovers nothing at all.

Reporting one churn number. Guarantees that improvement effort is aimed at whichever cause you assumed rather than whichever is larger. Costs you nothing directly and misdirects everything else.

None of these requires development work to fix. All six are configuration, copy and process decisions, which is why this area has an unusually good return relative to effort and an unusually poor rate of anybody actually doing it.

Build or buy

Use a platform.

Recurring billing has an enormous number of edge cases: proration, tax treatment, currency, retries, refunds, partial periods, plan changes mid-cycle, failed payments during a plan change. Building it yourself means discovering each one in production, with a real customer attached and money involved.

This is among the clearest build-versus-buy decisions in software, and our guide on build versus buy covers how to think about the general case.

But do not assume the platform is doing this for you. Retries, the account updater and dunning emails are usually configurable rather than automatic, and that distinction costs businesses real money. Many assume these are on by default and never check.

Log in and confirm what is actually enabled. The gap between what your platform can do and what it is currently doing is where the recoverable revenue sits.

Your UAE payment setup

Which capabilities you have access to depends on your gateway and acquiring arrangements, so this is worth asking about directly rather than assuming.

Ask your provider what retry logic they support, whether card account updater is available and for which networks, and what decline codes they pass through to you. That last one determines whether you can route your response by reason, which is the improvement with the best return.

Our guide on UAE payment gateways covers choosing the underlying acceptance layer.

On local card behaviour: decline patterns, updater coverage and how banks treat recurring charges can differ from other markets. Rather than assuming behaviour you have read about elsewhere transfers, look at your own decline data broken down by card type and issuer. If one issuer declines disproportionately, raise it with your provider rather than absorbing it as background noise.

Offering an alternative payment method at the point of failure, rather than only at signup, converts some failures directly. Keep the choice small, though. A page offering six options to somebody trying to fix a problem performs worse than one offering two.

What to measure

Four numbers, tracked over time:

Failed payment rate. What share of charges fail.

Recovery rate. What share of those are eventually collected.

Time to recovery. How long it takes, because a payment recovered on day three is worth more than one recovered on day twenty.

Involuntary churn as a share of total churn. The number that tells you whether this whole area deserves more attention.

To get the fourth, tag every ending subscription with a reason at the point it ends: cancelled by customer, lapsed after payment failure, or ended for another cause. Without that tag, your churn figure conceals two different problems and any effort to improve it is aimed at whichever one you happened to assume.

Two checks this week

Split last month's cancellations into customers who chose to leave and subscriptions that lapsed after a failed payment.

Log into your billing platform and check whether retries, the card account updater and dunning emails are actually enabled.

Those two take about an hour between them and typically reveal both a number nobody had seen and a switch nobody had turned on. Turning on retries, enabling the updater where supported, and switching on standard dunning emails addresses most of the recoverable loss for well under an hour of work.

It is unusual to find anything in software with that ratio of effort to return, which is the main reason this article exists.

If you want the fuller version, a billing and recovery review covering your current failure and recovery rates, what your platform is configured to do, what it could do, and the customer-facing flows around failure starts from around AED 2,500 with us. Implementation is priced separately by scope. Final pricing depends on scope, and these are our own figures rather than a market survey.

References

  1. Stripe Documentation, revenue recovery
  2. Stripe Documentation, automate payment retries
  3. Stripe, managing expired cards for recurring payments
  4. Stripe Documentation, automatic collection
  5. SKIMBOX, UAE payment gateway comparison
  6. SKIMBOX, build versus buy for UAE businesses
  7. SKIMBOX, checkout optimisation for UAE ecommerce
  8. SKIMBOX, in-app purchases and subscriptions in the UAE
  9. SKIMBOX, SaaS MVP development in Dubai

Product capabilities and default configurations described here are drawn from platform documentation and change over time. No recovery rate statistics are quoted in this article, because the published figures originate from vendors selling recovery tooling. Measure your own.

Frequently asked questions

  • What is involuntary churn?

    Customers who stop paying without deciding to leave. Their card expired, their bank declined the charge, they hit a limit, or a technical problem interrupted the payment. They still want your product and they have no idea anything has gone wrong. It is a fundamentally different problem from customers cancelling deliberately, and it responds to completely different remedies. It is a collections problem wearing a product problem's clothing.

  • Why does it matter more than voluntary churn?

    Because it is recoverable and voluntary churn largely is not. A customer who has decided your product is not worth the money is expensive and slow to win back. A customer whose card expired wants to keep paying and simply needs to be told. The second group is the cheapest revenue in your business and most companies make no organised attempt to reach them. It is the cheapest revenue available in most subscription businesses.

  • How much revenue is typically involved?

    We are not going to quote you a figure, because every published number on this comes from billing providers who sell recovery tooling and therefore have an interest in the answer. What you can do is measure your own, which takes an hour: count failed charges in a month, count how many were eventually recovered, and multiply the gap by your average subscription value. Measure your own rather than trusting anybody selling recovery tooling.

  • How do I measure our own involuntary churn?

    Take last month's cancellations and split them into two groups: customers who actively cancelled, and subscriptions that lapsed after a payment failed. Most billing systems can show you both. The second number is usually larger than people expect, and it is the first time many businesses realise they have been treating a collections problem as a product problem. Most billing systems can show you both splits already.

  • Why do subscription payments fail?

    Several distinct reasons with different fixes. Cards expire on a predictable schedule. Cards get replaced after loss or fraud. Accounts have insufficient funds at that particular moment. Banks decline for risk reasons. Limits are exceeded. And occasionally there is a technical failure at the processor. Treating all of those as one category is why recovery efforts underperform. Each cause has a different remedy, which is why grouping them underperforms.

  • Which failure reason is most common?

    It varies by market and customer base, which is why your own data matters more than any benchmark. What is consistent is that expiry and replacement are highly predictable and therefore preventable, while insufficient funds is essentially a timing problem that responds to retrying. Those two categories together usually account for the majority and both have straightforward remedies. Your own decline data matters more here than any published benchmark.

  • What is a card account updater?

    A service run by the card networks that supplies merchants with updated card details when a customer's card is replaced or reissued. Visa and Mastercard both operate one. Where your processor participates, billing continues working when a card is replaced without you or the customer doing anything, which removes an entire category of failure silently. Check whether yours is available and, separately, whether it is switched on.

  • Should we enable it?

    If your processor offers it and you bill recurring cards, almost certainly yes. It addresses one of the most common and most predictable failure causes automatically. Check whether your processor supports it, whether it is enabled on your account, and whether it covers the card types your customers actually use, because coverage varies by network and region. Coverage varies by network and region, so confirm rather than assume.

  • What are payment retries?

    Automatically attempting a failed charge again rather than treating the first decline as final. The logic matters more than the fact of retrying. A charge declined for insufficient funds on the twenty-eighth may well succeed on the second of the following month. A charge declined because the card is closed will never succeed, and retrying it repeatedly achieves nothing except irritation. The schedule matters considerably more than the fact of retrying at all.

  • How should retries be scheduled?

    Spread across days rather than hours, and shaped around when people are likely to have funds. Stripe's documentation describes a smart retry approach that uses signals such as the number of devices that have presented a payment method recently, and notes that a default recommendation is around eight attempts spread over two weeks. Whether that suits you depends on your billing cycle and your customers.

  • How many retries is too many?

    Enough that they stop working or start harming the relationship. Repeated declines can attract attention from your processor, and a customer receiving eight failure notifications experiences your billing as harassment rather than helpfulness. The practical answer is to retry on a schedule that reflects likely funding cycles, notify sparingly, and stop when the decline reason says it will never succeed. Match the schedule to when your customers are actually likely to have funds.

  • Does the decline reason matter?

    Enormously, and most businesses ignore it entirely. Processors return codes distinguishing a temporary problem from a permanent one. Insufficient funds is worth retrying. A card reported lost or stolen is not, and needs the customer to supply new details. Routing your response by decline reason rather than treating every failure identically is the single biggest improvement available in most setups. Retry frequency and message frequency should be set independently of each other.

  • What is dunning?

    The process of communicating with customers to collect what you are owed after a payment fails. It typically combines automated retries, customer notifications and a grace period, designed to turn a failed charge into a successful one without losing the customer. Most billing platforms can send these messages automatically when a payment fails, a card expires or a method needs updating. Routing by decline reason is the single best return on configuration effort here.

  • What should a dunning email actually say?

    That something went wrong with the payment rather than that the customer did something wrong, what will happen next and when, and a single obvious link to update the card. Keep it short, keep it free of blame, and make the action one click. Emails that read like debt collection perform worse than emails that read like a helpful notification, on the same underlying facts.

  • How many notifications should we send?

    Three is a reasonable pattern for most businesses: one when the payment first fails, one part-way through the retry window, and one before access is affected. More than that becomes noise and starts to feel punitive. The final message is the most important because it carries a real consequence and a deadline, which is what actually prompts action. Most billing platforms can send these automatically once configured.

  • Should we email before the card expires?

    Yes, and it is the most underused message in subscription billing. You know the expiry date, so you can write to the customer a fortnight beforehand asking them to update it. That converts a future failure into a routine housekeeping task, at a moment when the customer is not annoyed and nothing has broken. It costs one automated email. Tone changes results on identical underlying facts.

  • What is a grace period and how long should it be?

    The window during which a customer keeps access despite a failed payment, so that a temporary problem does not immediately cut off a paying customer. Long enough to cover your retry schedule plus a few days for the customer to act, which for most businesses means around two to three weeks. Too short punishes people for bank problems; too long trains customers that payment is optional.

  • Should we cut off access immediately when payment fails?

    Almost never. The customer usually has no idea anything happened, and cutting access is how a recoverable billing problem becomes an angry cancellation. Degrade gradually if you must: full access during the retry window, a visible in-product notice, then restriction. The one exception is where continued service creates real cost or risk for you. The final message is the one that actually drives action. Annual plans fail more rarely and more expensively than monthly ones.

  • Where should we ask them to update the card?

    A single-purpose page that opens from the email and works on a phone, requiring no password if you can do that securely with a signed link. Every additional step loses people. Sending a customer to a general login page and expecting them to find the billing section is the most common way businesses lose customers who fully intended to pay. It converts a future failure into routine housekeeping nobody resents.

  • Should we show the failure inside the product too?

    Yes, because email is unreliable and the product is where engaged customers actually are. A clear but non-alarming banner with a direct link to update payment reaches people who never opened your email. For business customers this matters even more, since the person using the product is frequently not the person whose card is on file. Match the window to your retry schedule plus a few days of slack.

  • What about customers who never see the email?

    Assume a substantial share will not, because billing emails land in promotions folders, go to addresses nobody monitors, or reach a person who left the company. That assumption should shape your design: in-product notices, a longer grace period, and where the value justifies it, a phone call for higher-value accounts. Email alone is a weak channel for something this consequential. Cutting access early produces disputes rather than payments.

  • Is it worth calling customers about failed payments?

    For higher-value subscriptions, frequently yes, and almost nobody does it. A two-minute call to a business customer whose card expired recovers revenue that three ignored emails did not. Set a value threshold above which a human follows up, because at the top of your customer base the arithmetic is obvious and at the bottom it is not. Every additional step between email and form costs you customers who intended to pay.

  • How does this interact with our UAE payment setup?

    Your gateway and acquiring arrangements determine which retry and updater capabilities you have access to, so the answer depends on your specific setup. Ask your provider directly what retry logic they support, whether account updater is available, and what decline codes they pass through. Our UAE payment gateway guide covers choosing the underlying acceptance layer. It reaches engaged customers who never opened the email at all.

  • Do local cards behave differently?

    They can, in terms of decline patterns, updater coverage and how banks treat recurring charges. Rather than assuming behaviour observed in another market transfers, look at your own decline data broken down by card type and issuer. If one issuer declines disproportionately, that is worth raising with your provider rather than absorbing as background noise. Design for the assumption that a large share never see the message.

  • What about customers who pay by bank transfer or invoice?

    The same principles apply with different mechanics and usually a longer cycle. The failure mode is a missed invoice rather than a declined card, and the remedy is a structured reminder sequence with a named human at the end of it. Business customers on invoice terms are the group most likely to lapse through inattention rather than intent. Set a value threshold rather than a blanket policy either way.

  • Should we offer alternative payment methods?

    It helps, because a customer whose card keeps failing may have another route available. Offering a second method at the point of failure, rather than only at signup, converts some failures directly. Keep the choice small, because a page presenting six options at the moment somebody is trying to fix a problem performs worse than one presenting two. Ask your provider directly rather than assuming capability you may not have.

  • How do we handle proration and mid-cycle changes?

    Decide the rule and make it visible before the customer commits, because proration disputes are a common and entirely avoidable source of support contacts. Whether an upgrade is charged immediately or at renewal, and whether a downgrade refunds or credits, matters less than that it is stated clearly and applied consistently every time. Look at your own decline data broken down by issuer before concluding anything.

  • What should our billing page show?

    The current plan, the next charge amount and date, the payment method on file with its expiry, the invoice history, and an obvious route to update payment or cancel. Hiding cancellation increases complaints and disputes without meaningfully reducing churn. A clear billing page reduces support volume more than almost anything else you could build. Business customers on invoice terms lapse through inattention more than intent.

  • Should we make cancellation easy?

    Yes, and businesses that make it deliberately hard trade a small short-term retention gain for chargebacks, complaints and reputational damage. A customer who cannot find the cancel button disputes the charge with their bank instead, which costs you the money, a fee, and a mark against your account. Easy cancellation with a well-designed offer at the point of exit performs better. Offer it at the point of failure, not only at signup.

  • How do we tell involuntary churn from voluntary in our numbers?

    Tag every subscription ending with a reason at the point it ends: customer cancelled, payment failed and never recovered, or ended for another cause. Without that tag your churn number is a single figure that conceals two entirely different problems, and any effort to improve it will be aimed at the wrong one. Consistency matters more than which rule you choose. Confirm the configuration rather than trusting the default.

  • What should we measure?

    Failed payment rate, recovery rate, time to recovery, and involuntary churn as a share of total churn. Those four tell you whether the problem is getting better. If you track only overall churn you will see the symptom without ever seeing which of the two underlying causes moved, which makes improvement essentially accidental. A clear billing page reduces support volume more than almost anything else.

  • Is a billing platform worth it or should we build?

    Use a platform. Recurring billing has an enormous number of edge cases around proration, tax, retries, currency, refunds and failure handling, and building it yourself means discovering each one in production with a customer attached. This is one of the clearest build-versus-buy decisions in software, and our build-versus-buy guide covers how to think about the general case. Hiding cancellation buys chargebacks rather than retention. Both checks take under an hour between them.

  • How much of this is automatic in a billing platform?

    The retries, the updater where supported, and basic dunning emails are usually configurable rather than automatic, which is an important distinction. Many businesses assume these are on by default and never check. Log into your billing platform and confirm what is actually enabled, because the gap between available and enabled is where the lost revenue sits. Without the tag, your churn number conceals two different problems.

  • What is the quickest win?

    Check what your billing platform is currently doing about failed payments, because the answer is frequently very little. Turning on retries, enabling the card account updater if supported, and switching on the standard dunning emails takes under an hour and addresses most of the recoverable loss. It is unusual to find work with that ratio of effort to return. Track all four over time rather than looking at churn alone.

  • Can you help with this?

    We can. A billing and recovery review covering your current failure and recovery rates, what your platform is configured to do, what it could do, and the customer-facing flows around failure starts from around AED 2,500 with us. Implementation work is priced separately by scope. Final pricing depends on scope, and these are our own figures rather than a market survey. It is among the clearest build-versus-buy decisions in software.

  • What should we do this week?

    Split last month's cancellations into customers who chose to leave and subscriptions that lapsed after a failed payment. Then log into your billing platform and check whether retries, the account updater and dunning emails are actually enabled. Those two checks take an hour and usually reveal both a number nobody had seen and a switch nobody had turned on. The gap between available and enabled is where the lost revenue sits.

SKIMBOX Team

Tech Consultancy

Get fresh writing in your inbox

One email a fortnight. No filler.

By subscribing, you agree to our privacy policy.

Want us to build something?

We work with teams across MENA, UK, USA, and India to build products, run programs, and grow.

Get in touch

Continue reading