Start with the baseline.ActiveRetry proves every recovery step.

ActiveRetry turns failed recurring invoices into auditable Recovery Episodes, then helps you change customer treatment and measure what improved beyond Stripe alone.

Recovery baselineExample data · 30-day cohort · EUR
Example Ltd (EUR)Test mode

Example Ltd (EUR)

What failed automatic collection, and what Stripe reported paid afterwards.

Observation window7-day14-day30-dayCurrencyEURUSD

Where the money went

€19,000 of failed invoices went unrecovered in the 30-day window — €16,000 of it behind causes a payment-update message can act on.

Insufficient fundsA message can act on this€8,400.00

20 invoices unrecovered · 54.3% of this cause came back

Expired cardA message can act on this€3,400.00

9 invoices unrecovered · 72.6% of this cause came back

Authentication requiredA message can act on this€2,500.00

6 invoices unrecovered · 65.3% of this cause came back

FraudNo message helps€2,400.00

6 invoices unrecovered · treat this money as gone

The figures behind it

At risk now€12,500open across 42 unresolved invoices
Paid after failing€29,00078 of 120 failed, 30-day window
Invoice recovery rate65%78 of 120 failed invoices
Amount recovery rate60.4%paid ÷ €48,000 failed

Evidence before
automation

01Observed recovery

Keep Stripe's native collection unchanged while you measure who pays, when, and why.

02Deliberate treatment

Change communication or lifecycle actions by cohort, with the baseline beside every result.

Built around evidence

A recovery record you can audit. A treatment you can defend.

Follow each invoice from first failure through a fixed observation window. Segment the causes, choose what the customer experiences, and separate natural recovery from the value your change created.

Free forever

See where the money stops arriving

Every failed invoice becomes a Recovery Episode you can follow. Read the rate by cohort, the amount still at risk, the failure categories doing the damage, and the decay curve showing how long recovery really takes.

  • Cohort rates that never divide by an immature denominator
  • Failure category, tenure and value segments
  • Ninety days of history the moment you connect
paid
Included at $49.99

Give each customer the right next move

Write the email in your own voice, in your own framework, and send it around Stripe’s attempts rather than on top of them. Different words for an expired card than for a bank that said no.

  • Versioned templates, previewed exactly as sent
  • Branching workflows with waits and guardrails
  • Pause or cancel only when you say so
holdoutvariant+8.2 pts
Coming soon

Know what actually moved revenue

A click followed by a payment is attribution, not proof. Randomized treatments and a real holdout tell you what recovery you would not have had otherwise.

  • Immutable variants, frozen eligibility
  • Holdouts and incremental lift
  • No extra charge when it ships
What $49.99 buys

The part that does the recovering

Analytics tell you where the money stopped. This is where you change it: a graph you draw, and an email you write, both aimed around Stripe’s retry schedule.

Workflows
Failed payment recoveryDraft
Send first-reminderWait 3 daysFailure reason is Insufficient funds
YesWait 2 daysSend top-up-nudgeMRR ≥ €100.00
YesSend final-noticePause subscription
NoStop
NoSend update-cardWait 5 daysCancel subscription
Drag the steps in. Branch on failure reason, MRR or attempt, and every graph starts as a draft that sends nothing until you activate it.
First reminderPublished
FrameworkHTMLSubjectYour payment did not go through, {{ customer.name }}
1<style>
2  .card{border-radius:12px;padding:28px;
3    background:#fff;font-family:Geist}
4  .btn{background:#5b53d9;color:#fff;
5    padding:12px 20px;border-radius:8px}
6</style>
7<div class="card">
8  <h1>Your card was declined</h1>
9  <p>Hi {{ customer.name }}, we could not
10    collect {{ invoice.amount }}.</p>
11  <a class="btn" href="{{ links.updatePayment }}">
12    Update payment method</a>
13</div>
DesktopPhone
NorthstarYour card was declined

Hi Ada Lovelace, we could not collect £49.00 for invoice INV-0042.

Update payment methodNothing else is needed — your subscription stays active while you sort this out.
customer.nameinvoice.amountlinks.updatePayment
Send the published version toyou@example.comSend a test

Editing appends a version. What already went out still says what it said, so a sent email and an experiment stay reproducible.

Your words, your framework, your brand. The preview compiles through the same sidecar the send does, so what you approve is what arrives.
How it works

Establish the control before changing the outcome.

Connect for a no-effect baseline. When the data is mature, introduce a deliberate treatment without changing how Stripe collects payment.

  1. 01

    Connect Stripe

    Begin with observation only. Ninety days of failed recurring invoices become one auditable baseline.

  2. 02

    Read your baseline

    Recovery rate by cohort, amount still at risk, failure category, tenure, and how long recovery actually takes.

  3. 03

    Choose a treatment

    Use failure-aware communication and explicit lifecycle actions without taking over payment collection.

  4. 04

    Prove the liftsoon

    Compare randomized treatments with a holdout, so the result is incremental recovery rather than coincidence.

Built to be trusted

Payments stay in Stripe. Evidence stays visible.

Stripe remains the system of record for payment. ActiveRetry never holds funds or hides a rate's denominator, and no treatment changes charge timing.

  • Smart Retries stay exactly as they are
  • Every rate is reported beside its cohort
  • Customer treatment is explicit and reversible
  • Flat price, so the numbers stay honest

Stripe keeps

  • The card and the money
  • When a payment is retried
  • Whether an invoice is paid

ActiveRetry keeps

  • The record of what failed
  • What the customer is told
  • What the change was worth
Pricing

Build the baseline for free.
Act on it for $49.99.

One free measurement layer. One flat price for customer treatment and orchestration.

Free

Establish what recovers, what does not, and how long it takes.

$0forever
Connect Stripe

One-click OAuth, no card. Your billing keeps running on Stripe exactly as it does today. How the connection works.

Free includes
  • Recovery analytics dashboard
  • Recovery Episode explorer
  • Failure category and segment breakdowns
  • 7-, 14- and 30-day cohorts
  • Recovery decay curve
Recovery orchestration
Recovery

Turn evidence into merchant-chosen customer treatment.

$49.99/ month
Build a treatment

Every workflow starts as a draft that sends nothing. You decide when it goes live, and Stripe keeps deciding when the card is retried.

Everything in Free, plus
  • Merchant-authored email templates
  • Branching recovery workflows
  • Customer segmentation and targeting
  • Guardrailed lifecycle actions
  • Experiments and A/B testing soon
Good questions

The straight answers.

ActiveRetry is the recovery layer around Stripe. It is not another processor.

Does this replace Stripe Smart Retries?

No. ActiveRetry leaves charge timing to Stripe. It records the resulting Recovery Episodes, gives you control of customer treatment, and is being built to compare treatments with randomized holdouts.

What do I actually get for free?

The entire analytics side. Your recovery baseline, every Recovery Episode, failure categories, segment and tenure breakdowns, and 7-, 14- and 30-day cohort reporting. No card, no trial clock.

What is in the $49.99 plan?

Everything in Free, plus merchant-authored email templates, recovery workflows, customer segmentation, and guardrailed lifecycle actions. Experiments and A/B testing join this tier when they ship, at no extra cost.

Will my customers get two emails?

Only if you leave Stripe’s failed-payment emails switched on. Turn those off, keep Smart Retries on, and ActiveRetry becomes the single voice your customer hears.

Do you take a cut of recovered revenue?

Never. One flat price. Recovering more money does not make your bill go up, which is exactly why the measurement can stay honest.

Measure before you claim

Start with what would recover anyway.

Build the baseline free. Pay only when you are ready to change the treatment.

Measure my baseline No card required · Stripe stays in control