Share:

The money plan — three populations, one engine

The day−5-to-collections ladder we built for the opening instalment, re-cut against what /first-miss-week and /first-miss-week-chats measured this week, and extended to the two populations it never covered. Every figure here is dated and names the measurement behind it.
The single most useful thing the numbers say: these are not three different problems. The decline-reason mix is almost identical in all three — roughly 85% soft (money, limit, issuer said no) in the never-started pile, in the stumblers, and in the zombies alike. They do not differ by why the card failed. They differ by how long ago anybody last asked, and whether anybody asked at all. So the answer is not three collection strategies. It is one contact engine with three entry points and three different economics — and the entry point decides almost everything, because the earlier it fires the more it is worth.

What each population is worth

PopulationAccountsMoney on the floorScaleThe play in one line
1 · New contracts
the opening instalment
5,127 a year$1,136,23246.9% of 10,943 openedPrevent it, then own the first ten days.
2 · Early life
opened 10–60 days ago
849 of 1,599 live$254,18253.1% have missed at least onceFinish what the opening started. Two very different halves.
3 · Zombie
4+ consecutive failed charges
9,801$14,601,6222,867 still being chargedTriage, not chase. Stop the bleed first.
Priority is not the same as size. Population 3 is the biggest number on that table and the worst place to spend the next hour. $6,691,378 of it belongs to 4,687 accounts that never paid a single cent, and 3,936 of the zombie pile last paid us something over 240 days ago. Population 1 is a third the size on paper and worth far more per hour, because an opening instalment caught inside ten days is followed by $922 more per agreement by day 365 — of which we count HALF as ours ($1,165 against $243 — /opening-payment, 16 Sep 2026).

The five things this week changed

What we foundWhat it breaksWhat the plan does about it
Day 0 does not exist. The fastest text all week left 23.2 hours after the charge failed; median 24.4h; nothing inside 12h ever. /first-miss-week, 7–13 Sep The ladder's day-0 +2h step — the one sitting on 48% of everything a miss ever returns — is physically impossible today. The feed into the debt sub-account is a daily Google-Sheet drop. Build item 1. Event-driven feed. Nothing else in this plan reaches its stated value until this is done.
The decline reason never reaches GHL at all. No reason field exists on that sub-account. reference_us_debt_collection_ghl Every outbound text is identical whatever the issuer said — so the four-way routing the ladder is built on cannot happen, and the two codes with a real 30-second customer-side fix are never named. Build item 2. Reason + bucket as custom fields, and route on them.
20% never arrive. 12 of the 60 failures last week had no contact in the sub-account at all — probed on digits, last-ten, email and surname. /first-miss-week A fifth of the queue is invisible to every workflow, every report and every collector. They are not being worked badly; they are not being worked. Build item 3. Reconcile the feed daily and alarm on the gap.
Replying is not the finish line. 16 of the 45 still-unpaid answered our text and no money followed. /first-miss-week-chats The ladder measures contact rate, and contact rate was the right first metric — but nothing owns what happens after someone answers. Two of those 16 were plainly waiting on us. Build item 4. A "replied, unpaid" queue with a named owner and a same-working-day SLA.
An iMessage tapback reads as a reply. Loved "…" arrives as an ordinary inbound SMS. /first-miss-week-chats Reply rate — the number the whole ladder is judged on — is inflated by thumbs-ups on invoice links. Build item 5. Filter them. Already done on the chats page; the trend reports still count them.

The order of work

  1. Plumbing first, and it is not optional. Real-time feed, decline reason into GHL, close the 20% gap, an inbound SLA, tapback filter. Five items. Until they land, every improvement below is capped at what a next-day generic text can do.
  2. Population 1 — spend the money here. Prevention at the till plus the hot ten days. Best return per hour on the book by a wide margin, even after halving the observed LTV gap for selection.
  3. Population 2 — one message, not a programme. The day-21 cliff message in front of the second miss. 353 accounts are sitting at exactly one miss right now and nothing is in front of them.
  4. Population 3 — stop the bleed, then settle the ones with a payment history. Not a calling list. A sweep and a campaign.

1. New contracts — the opening instalment

The customer's first-ever charge on the recurring book. This is where the plan should spend its money, and it is the population the existing ladder already covers — it just cannot run yet.
Openings a year
10,943
last 12 months · measured 17 Sep 2026
Failed at the door
5,127 46.9%
5,127 agreements a year
Missed at the door
$1,136,232
opening instalments only, per year
Last week
60
of 138 opened · $17,054
Worth catching early
$461
HALF the $922 observed gap — the rest is the customer, not the rescue
This is the highest-value hour on the whole book and it is not close. An opening instalment recovered inside ten days is followed by $1,165 by day 365 against $243. Do not read all of that as the value of rescuing somebody. A customer whose payment we can recover in days is, by nature, a better payer than one we cannot, and would have paid more regardless — so most of the gap is selection. This plan counts half of it, $461, as something the rescue creates. Even halved it dwarfs the instalment itself. /opening-payment, 16 Sep 2026; halving is a judgement, agreed 17 Sep

Prevention — the part that is not on the phone

LeverSizeEvidenceStatus
Card quality at the point of sale~33 /wk Early-access neobank cards are 19.0% of first instalments but 32.3% of the misses, failing 81.4% against 39.8% for a traditional card — and they recover worse too. Sutton Bank (Cash App/Chime) 87.1% on 309. Against JPMorgan Chase 6.5%. /first-miss-handoff, 16 Sep 2026 Nothing in place. The lever is at the till — a second card, or a different funding method, taken at signing.
No card on file at all6.5% 714 of 10,973 scheduled invoices hold no card. Square cannot attempt them, so they produce no decline code, land in no bucket and appear on no list — and recover 6.3% next cycle against 28.2%. 86 of the worst 100 were paying normally and their card came off. /first-miss-nocard, 16 Sep 2026 List built, never worked. Never tell them their card was declined — nothing was attempted.
The charge date~11pp The 31st is our most-chosen charge day and the second worst-performing — 38.9% against 49.5% on the 1st. Moving a date is the cheapest fix we own and needs no conversation. reference_crm_paydays Available now. Can be offered at signing and at day 10.
The day-before message~30 /day Nobody sends anything before a first payment — not us, not Square. 600 of 600 recurring invoices are set to EMAIL, exactly 2 in the business are SMS, and 577 of 600 carry no reminder at all. Checked across 439,694 note lines: no proactive pre-payment message exists. /first-miss-handoff, 16 Sep 2026 Drafted, not sent. Hold 10% back as a control — the effect is UNKNOWN and could be negative.
Do not fix the pre-notice by switching Square's own reminders on. Square's template is an "you have an invoice to pay" email. Send that to someone whose stored card fires tomorrow and a proportion pay manually as well — a duplicate charge on a first payment is the fastest route to a chargeback there is. Same reason the drafted message carries no pay-now link.

The ten days that matter — the ladder, with this week's corrections

Unchanged from the handoff except where marked. new is added by this week's evidence; blocked cannot run until the plumbing lands.
−5
Pre-notice — the relationship message. No ask.The only step that reaches someone while nothing has gone wrong, which is the only time a reply costs them nothing.
−1
Card-ready message. Names amount, date, last four.Carries the neobank line. No pay link — the stored card fires tomorrow.
0
The charge fires and fails.Square attempts once and never again — 0.90 failed charges per missed cycle. Everything after this is us or nobody.
0 +2h
Reason-routed text + the pay link.blockedDay 1 is 48% of everything the ten-day window ever returns. Today the fastest this fires is 23.2 hours, so this step does not exist yet.
1
Second touch, different channel (email).A dead phone is not a dead customer. Suppressed instantly if money lands.
2
First call.By day 3 the ten-day window has given up 71% of everything it will return.
3
Second call, different time of day.Right-party contact runs 15–25%, so one attempt reaches about one person in five. Three attempts at different hours is why the ladder budgets three.
5
Third call + text.Day 5 is 84% of the ten-day return. After this the curve flattens hard.
7
The communication ask — Pay · Arrange · Can't this month.No payment demand. "Can't this month" is a success. This week proves people do answer it — 21 of 45 texted replied, and zero opted out. What nobody owns is what happens next.
7+
Replied-but-unpaid queue. Named owner, same-working-day SLA.new this week16 of the 45 still-unpaid had already answered us. Two were plainly waiting: one asking for the payment link and offering Apple Pay, one saying they had already paid. A reply that goes nowhere is worse than no reply — it spends the goodwill and banks nothing.
10
Arrangement offer — move the date, or split it.Not dead, just slow: recovery runs 20.1% at day 10 to 26.4% at day 30.
21
Next-charge warning — the cliff message.The highest-value automated message in the ladder, and it now also serves Population 2. See the next tab.

2. Early life — opened 10 to 60 days ago

1,599 live agreements in that window. 849 of them — 53.1% — have missed at least one charge, and $254,182 has been attempted and refused inside the window. measured 17 Sep 2026
This cohort has one dominant fact and it makes the plan simple: whether the OPENING was paid decides almost everything that follows.

Opening failed72.4% are still on a miss streak today, and they have banked an average of $84.
Opening paid8.1% are still on a streak, average banked $320.

Nine times the failure rate and a quarter of the money. So Population 2 is mostly not its own problem — it is Population 1 arriving late. The right response is to finish the opening job properly, not to build a second programme beside it.

The four groups, and only two of them are work

Where they standAccountsBanked so farWhat it actually is
Clean — never missed750 46.9%$246,943Leave alone. 46.9% of the cohort.
Missed the opening, recovered204 12.8%$56,997Working as intended. This is what the ladder is for.
Paid the opening, missed later110 6.9%$27,978Retention. They have proved they can pay. Smallest group, warmest.
Missed the opening, never paid a cent503 31.5%$0A sale that never began. Biggest group after clean, and the whole problem.
503 accounts — 31.5% of everything opened in the last two months — have never paid us a single cent, and $161,930 has been attempted and refused on them. These are not debtors. They are sales that never started. Treat them as a sale rescue with the studio's own voice, not as a collections case with a collector's — and note that 84.9% of them are soft declines, so the card is not the obstacle.

The intervention point — and there is only one

Sitting at exactly ONE miss
353
right now, in this cohort
At two misses
231
the value has already gone
At three or more
21
on their way to Population 3
Next charge paid after 1 miss
44.0%
measured 17 Sep 2026
After 2 misses
23.5%
it nearly halves
The collapse is between miss one and miss two, and it is the whole argument for this tab. Given one miss the next charge is paid 44.0% of the time; given two, 23.5%; given three, 16.2%; given four, 14.6% — the curve is nearly flat after that. Arguing about a cut-off at four misses is arguing over what is left after the loss has already happened.

Two measurements agree on the shape and differ on the level: charge-attempt-side (above, 17 Sep 2026) reads 44.0% → 23.5%; invoice-side reads 20.8% → 12.9% (/zombie-reasons, 7 Sep 2026). The invoice view is lower because it counts cycles where no charge was ever attempted as unpaid, which the attempts view cannot see. Quote whichever you name — never mix them.

So the plan for Population 2 is one message and one list

  1. The day-21 cliff message, fired at everyone on a streak of one. It already exists in the ladder and it is the only thing that can sit in front of the second miss. 353 accounts qualify today. Name both the arrears and the amount about to be taken.
  2. Split the never-started 503 out into a sale-rescue list, worked by the studio rather than the debt desk, with the studio's voice and the original booker where we still have them. A first-ever customer who has paid nothing has no relationship to collect against — only one to start.
  3. The 110 who paid then stumbled are a retention call, and they are cheap — they are the smallest group, they have proved the card works, and 91.8% of their declines are soft.

3. Zombie — four or more consecutive failed charges

9,801 accounts whose most recent run of charges are all failures. $14,601,622 has been attempted and refused across them. This is the biggest number in the plan and the last place to spend an hour — but two specific things inside it are worth real money. measured 17 Sep 2026
Zombie accounts
9,801
4+ consecutive failed charges
Never paid a cent
4,687 47.8%
$6,691,378 — never customers
Paid before going quiet
5,114 52.2%
banked $3,064,550 first · avg $599 over 3.0 payments
Still being charged
2,867
$611,841 a cycle fired into the void
A deep run is NOT death
19.7%
2,286 of 11,622 came back and paid again
The one genuinely encouraging number in this whole plan. Of the 11,622 accounts that have ever hit a four-or-more run, 2,286 went on to pay us again — 19.7% — and they have paid $1,024,771 after going deep, an average of $448 each over 2.7 payments. One in five comes back. And every single one of those was a person getting hold of them, because nothing on this book charges a card a second time on its own.

First: stop the bleed. This is free and it is not a collections job.

2,867 zombie accounts are still being charged. 3,100 failed charges were fired at them in the last 30 days and $611,841 a cycle is being attempted into the void. The series mints a fresh invoice every cycle forever — failures never feed back into the schedule, and the Square Invoices API cannot end a series, so this has to be a nightly sweep, not a switch. /zombie-reasons, 7 Sep 2026

This costs us three ways: processing on charges that cannot pass, a chargeback surface on cards the issuer has already declared finished (2,052 later charges put $385,210 at cards that could not pass in Jun–Aug), and a book whose reporting is polluted by accounts nobody believes in.

Then: split the pile in two, because it is two different things

GroupAccountsMoneyWhat it is, and what to do
Paid before going quiet
1,469 of them still being charged
5,114 52.2%$3,064,550
already banked
A real customer who stopped. Average $599 over 3.0 payments — though 1,906 of them made exactly one payment and then died, which is a first-cycle failure wearing a zombie's clothes. This is the settlement campaign. They have a payment history, a relationship and a reason to answer.
Never paid a cent4,687 47.8% $6,691,378
never collected
Never a customer. $6,691,378 that has only ever existed as an attempted charge. Chasing these as debt is chasing a sale that never happened. Worth a root-cause afternoon, not a collector's month — 85.6% are soft declines, so something is going wrong at signing, not at the bank.

Settlement — priced off what reductions actually returned

Discount late and shallow, and the evidence is unusually clear about the price. A reduction under 25% of balance returned $0.74 per $1 given away. At 50–75% it returned $0.14. Clearing a balance outright returned −$0.03 — we paid for the privilege. So the settlement ladder opens at day 40, caps at 25% of balance, and anything deeper needs an approver after day 60.

And the trap that makes this rule non-negotiable: 600 of the 945 accounts we have reduced had no failed charge at all — 72% of the money given away went to people who were never fighting a card. The ladder structurally prevents that by making nothing below day 31 discountable. /reductions + /first-miss-handoff, 16 Sep 2026

The plan for Population 3

  1. Nightly sweep to stop charging the 2,867 live zombies. Not a collections decision — an operational one. Do this first and it pays for itself in avoided chargebacks alone.
  2. Settlement campaign on the 1,469 live accounts that have paid before. Capped at 25%. The base rate says one in five of a deep-run account comes back for about $448, and these are the half of the pile with a relationship to restart.
  3. Do not build a calling list for the 4,687 who never paid. Send them the settlement message by text, take what comes, and spend the analyst time instead on why $6,691,378 of agreements were signed by people whose card never once worked.
  4. Expect the ceiling to be low and say so up front. 3,936 of the pile last paid us something over 240 days ago. A campaign that converts 5% of the live ever-paid group is a good campaign, not a disappointing one.

What has to be built, in order

Three of these are blocking: the plan does not reach its stated value without them, and shipping the messages first would produce a next-day generic text and a reply nobody reads. That is measurably worse than the current position, because it spends goodwill it cannot convert.
#ItemPriorityWhy it is there
1Event-driven feed into the debt sub-accountBLOCKINGReplaces the daily Google-Sheet drop. Until this lands the first text cannot leave inside 23 hours, and day 1 is 48% of everything a miss ever returns. Every value in this plan is capped by it.
2Decline reason + bucket as GHL custom fieldsBLOCKINGNo reason field exists on that sub-account today. Without it every message is generic and the four-way routing cannot happen — including the one code a customer can fix in 30 seconds in their banking app.
3Daily feed reconciliation + gap alarmBLOCKING12 of 60 failures last week never reached the sub-account at all. A fifth of the queue is invisible to every workflow and every report.
4Replied-but-unpaid queue, named owner, same-day SLAHIGH16 of 45 still-unpaid had already answered. A reply that goes unread spends the goodwill and banks nothing — and a customer's agreement to pay $885 once sat unread until it was found by accident.
5Tapback filter in the trend reportsHIGHReply rate is the metric the ladder is judged on. Loved "…" arrives as an ordinary inbound SMS. Fixed on /first-miss-week-chats; /debt-trend still counts them, and its cache holds no bodies so it cannot be corrected retrospectively.
6Nightly sweep to stop charging dead seriesHIGH2,867 accounts, 3,100 failed charges in 30 days, $611,841 a cycle. The Invoices API cannot end a series, so it must be a sweep. Pays for itself in avoided chargebacks.
7Apply the /pay portal bonus creditHIGHThe portal promises "+15% credited to your balance" and nothing applies it — no CRM write, no ledger write, no Square credit. Latent rather than live (zero of 83,623 recurring payments in 2026 carry the note), but it must be fixed before any traffic is sent there.
8Repoint notifyGHL off the empty sub-accountHIGHIt reads ghl_config.json, which points at a near-empty "AI Debt Collection" location. Anything it sends goes nowhere anyone is watching.
9Day −5 / −1 pre-notices, with a 10% controlMEDIUMDrafted, never sent. Hold 10% back and send them nothing — the effect is UNKNOWN and could be negative; telling someone a charge is coming also lets them move the money out.
10Sale-rescue list for the never-startedMEDIUM503 accounts in the 10–60 day window have never paid a cent. Studio voice, not collector voice.
11Card quality prompt at the point of saleMEDIUMNeobank cards fail 81.4% against 39.8%. The lever is at the till and no phone call can replace it.
12Settlement campaign, capped at 25%, opening day 40MEDIUM1,469 live zombies with a payment history. Under 25% returns $0.74/$1; deeper collapses to $0.14.
Do not send step one of any ladder until items 3 and 4 are done. A ladder whose replies go unread is worse than silence — this week 16 people answered a text about a missed payment and nothing came back, and two of them were explicitly waiting on us. Scaling the sending without fixing the answering multiplies that.

What it is worth — with the assumption behind each line

LineRange a yearWhat has to be true
Population 1 — lift 30-day recovery on failed openings by 5pp
from 26.4% to 31.4%
$57k – $236k 5,127 failed openings a year × 5pp = 256 more agreements recovered. The low end values each at the opening instalment alone (~$222). The high end values each at $461 — HALF the $922 observed gap, because most of that gap is selection: an account we can recover quickly belongs to a better payer who would have paid more anyway. Halving it is a judgement, not a measurement. Both ends depend entirely on build item 1.
Population 2 — the cliff message in front of the second miss not modelled Deliberately not given a number. 353 accounts sit at one miss today and the hazard drops 44.0% → 23.5% at the second, but we have never run this message, so its conversion is UNKNOWN. Borrowing a rate from the collector data would measure a human conversation, not an automated text. It needs a holdout arm to produce a real figure.
Population 3 — stop charging dead series cost, not revenue 3,100 failed charges in 30 days on cards that cannot pass. Saves processing and, more importantly, chargeback exposure — $385,210 was aimed at already-dead cards in a single quarter.
Population 3 — settlement on the live ever-paid ~$130k at the base rate 1,469 accounts × the measured 19.7% deep-run return rate × $448 average. Read this as the size of the pool, not as incremental revenue — 19.7% is what the book already achieves with the effort it already spends. The incremental question is whether a priced settlement beats that, and nobody has tested it.
Two numbers in this plan are honestly unknown, and they are marked that way on purpose. We have never run an automated pre-notice and we have never run an automated cliff message, so their conversion rates do not exist. Every conversion figure we do have for a second attempt is selected — a collector only puts a card through once the customer has agreed to pay, so of course it converts. Quoting one of those as the expected rate for something automated is the single most misleading thing these reports can do. Both new messages need a no-contact control arm, or they will be judged against a human conversation rate and look like failures however well they do.

How every number here is made

The three populations

All three are cut from the same sourceReports/finance_cohort/square_attempts.jsonl plus the 2023-06 backfill, deduped by payment id, restricted to the six Recurring* locations, grouped by Square customer. Deposits, studio sales and office takings are excluded because they are not instalments. Measured 17 Sep 2026 against data complete to 16 Sep 2026.
Population 1 = the customer's first-ever attempt in that history. A customer with any earlier charge anywhere in it is not an opening, so it cannot pick up a mid-contract miss.
Population 2 = accounts whose first attempt was 10 to 60 days before the data end. "Missed" means at least one non-COMPLETED attempt. "Never paid a cent" means zero COMPLETED attempts, ever.
Population 3 = accounts whose trailing run of attempts are all failures, four or more deep. This is the charge-attempt view. It is not the same population as /zombie-reasons, which counts series still billing from the invoice cache and reported 2,656 on 7 Sep 2026. The attempts view is larger because it includes long-dead accounts nobody is billing any more; the comparable live figure here is the 2,867 still being charged in the last 30 days. Name which one you are quoting.

Where the two hazard curves disagree, and why

Charge-attempt-side (17 Sep 2026): after one miss the next charge is paid 44.0%, after two 23.5%, three 16.2%, four 14.6%. Invoice-side (/zombie-reasons, 7 Sep 2026): 20.8% then 12.9%, 7.9%, 5.0%. The invoice view is lower because it counts cycles where no charge was ever attempted as unpaid — 13.3% of the zombie pile was never attempted at all — and the attempts view cannot see those. Both show the same shape and the same conclusion: the collapse is between miss one and miss two. Never average them and never mix them in one sentence.

What is quoted from elsewhere

/opening-payment (16 Sep 2026) — the $922 LTV difference, the 20.1%/26.4% recovery curve.
/Studio1_First_Miss_Handoff.html (16 Sep 2026) — the ladder, the neobank measurements, the no-card 6.5%, the day-1-is-48% curve, the reduction returns, the Square-sends-nothing finding.
/first-miss-week + /first-miss-week-chats (17 Sep 2026) — the 23.2-hour first text, the 12 who never reached the GHL, the 16 who replied and still owe, the tapback finding.
/zombie-reasons (7 Sep 2026) — the series mechanism, the invoice-side hazard curve, the never-attempted share.
/decline-buckets (1 Sep 2026) — the soft/hard/structural split and the $385,210 put at dead cards.
/reductions — what a discount actually returned per dollar.

What this plan deliberately does not claim

No automated conversion rate. We have never run an automated pre-notice or cliff message, so both are UNKNOWN. A trial needs a control arm or it gets measured against a human conversation rate.
No causal claim about texting. Whether a person was texted is not random — the ones who pay immediately drop out of the chase — so any texted / not-texted comparison is selected at both ends.
Nothing here is automated recovery. No system on this book charges a card a second time on its own. Square attempts once on the due date and never again, measured at 0.90 failed charges per missed cycle. Every second attempt is a person, which is why none of the money in this plan arrives without someone doing something.
Phone calls are invisible. The debt team dials through GoTo, which does not write back into GHL, so any call count from the GHL side is a floor, not a measurement.
Built by scripts/reports/report_money_plan.js at 2026-09-17T22:00:25.537Z.