Show HN: Client-side audit of wasted Stripe payment retries

BruceM20071 pts0 comments

How many of your Stripe retries are wasted? | Free calculator

Free tool

How many of your Stripe retries were never going to work?

The short version<br>Every failed payment tool on the market sells you more retries. Some of your declines cannot succeed on any attempt, ever, because the card is gone rather than temporarily short.

This tells you how much of your failed revenue is in that group. It reads your own Stripe export, in your own browser. Nothing is uploaded.

Drop in your Stripe export

Stripe Dashboard &rarr; Payments &rarr; filter Status is Failed &rarr; Export . Ninety days is plenty. The only column that actually matters is the decline code.

Choose your CSV

or drag it anywhere onto this box

This file never leaves your computer. The parsing and the arithmetic run<br>in this page's JavaScript. There is no upload, no server involved and no account to make.<br>You can confirm it: open your browser's developer tools, switch to the Network tab, and<br>run the audit. The audit itself sends nothing. The only requests on this page are the<br>same analytics tags the rest of the site loads, and they never see your file. You can<br>even load the page, go offline, and run the audit disconnected.

No export handy? Enter the counts by hand

Counts from your Stripe Dashboard. Leave anything at zero if you did not see it. The export above is better, because it uses your real amounts rather than one average.

Average failed invoice amount

Work it out

Why this is the number that matters

Failed payments split into two groups that need opposite fixes, and almost every tool in this category treats them the same.

One group is temporary. The bank balance was short, the processor glitched, the issuer was cautious. Waiting and trying again genuinely works, and Stripe's own free Smart Retries already do this well.

The other group is a card that is gone. Reported lost or stolen, reissued, expired, revoked, or blocked for this merchant. No retry schedule can collect from a card that no longer exists. Stripe will not even send nine of those codes to the network. It keeps incrementing the attempt counter while nothing is attempted.

If most of your failed revenue is in the second group, buying a tool that retries harder is buying a solution to the wrong half of your problem. That is worth knowing before you spend anything, including with us.

One thing this report will not do is inflate the number. Because Stripe does not reattempt those nine codes without a new payment method, there is no second charge to pay a fee on. Anyone selling you a big dollar figure for "wasted retries" is selling you an invoice that was never issued. The money in this report is revenue at risk from the declines themselves, which is real but which a retry schedule was never going to collect either. The thing the wasted retries genuinely cost you is time: days your customer sits on a dead card while a scheduler works through attempts that cannot land. That is why the report leads with elapsed days and affected customers, and puts the money second.

There is also a ceiling you may be hitting

Visa's Excessive Reattempts Rule caps reattempts at 15 in a rolling 30 day window. Stripe cites that rule, and says it will automatically block subsequent retry attempts, but only where it determines there is a low chance of a successful authorisation. That is Stripe using its judgement, not Stripe promising to keep you inside Visa's limit. Stripe does not say it enforces the rule on your behalf.

Which is the actual reason to count it yourself. This report counts attempts per card , while Visa states the rule per payment, so treat the number as a conservative upper bound on your exposure rather than a compliance verdict. A third-party recovery tool retrying on top of Stripe's own retries draws down the same budget, and neither system can see the other's count.

Got a number you did not expect?

Send me the percentage and I will tell you what I would do about it, including when the answer is nothing. You do not need to send the file, the data, or your company name. The number on its own is enough to have a useful conversation.

If it came out low, that is a real result and worth keeping. Stripe's free Smart Retries handle the ordinary retryable declines well, and most of the tools in this category, including mine, would be selling you a fix for a problem you do not have.

Written by a person, not a sequence. There is no call to book.

Send me your number

Common questions

What counts as a wasted retry?An attempt against a decline code that cannot succeed no matter how many times you try. Nine codes block execution at Stripe entirely until a new card is attached, and four more (expired card, incorrect CVC, invalid expiry) do get retried but cannot succeed until the customer replaces the card. Attempts against those are spent, not invested.

How do I get the export?Stripe Dashboard, Payments, filter Status is Failed, set a date range, then Export. In the column picker...

stripe retries card failed export number

Related Articles