← Index

An engine built so it cannot lie to its owner.

In final-expense insurance the standard unit of growth is a purchased lead: generated by an aggregator, resold to several competing agents, and untraceable after the sale. The buyer cannot answer the only question that matters.

FunnelCRMPaid media
Duration · Ongoing
The live final-expense quote funnel - coverage selection step beside a call path, with licensing and TTY line stated in the header.
- The live final-expense quote funnel - coverage selection step beside a call path, with licensing and TTY line stated in the header.

- The Brief

Leads bought from aggregators arrive in several competitors’ hands at the same moment, priced by the seller, with no visibility into what happened after the invoice. Did the money turn into a policy? Nobody could say.

- Diagnosis

Move the client from renter to owner across the whole chain - a funnel on their own domain producing exclusive leads, a CRM where every lead carries a disposition, and an ads layer whose numbers are checked against sources that cannot be gamed.

- The Build

01 · Compliance is a contract file in the codebase

Telephone-consumer-protection rules govern consent language and form behavior here. Rather than a review step that drifts, the rules live as a written contract in the repository that every change is tested against. The funnel cannot quietly fall out of compliance because the tests fail first.

02 · The headline metric is cost per dispositioned lead

Ad platforms grade their own homework. This system counts a lead only when the client’s own pipeline says what became of it - a metric built so the ads layer cannot declare a success the sales floor does not corroborate.

03 · Trust the interface, tag every claim by source

A probe script proved the ads API is blind to things the account interface shows. So every ledger entry is tagged by which instrument saw it, and the interface is treated as the truth the API only approximates.

04 · Anything that can spend money fails closed

Of fifty-three scripts against the account, the pollers are read-only and every mutating script refuses to run unless explicitly armed. A typo cannot spend the client’s budget.

- Artifacts Delivered

  1. 01Sixty-nine-page consumer funnel on the client’s own domain
  2. 02Django CRM with a disposition on every lead
  3. 03Fifty-three account scripts, read-only by default
  4. 04Fifty-five-entry dated, append-only ads ledger
  5. 05Forty-eight client-facing reports and analyses

- Outcome

A first window of owned demand - and a finding worth more than the leads: the engine was producing faster than the follow-up loop was consuming.

- Receipts

  • 30exclusive leads, owned outright and never resold
  • $193.53per exclusive lead - $5,805.97 of media divided by 30
  • 29 of 30carried no disposition downstream - the finding the system exists to surface

- Not yet known

  • Policies written from these leads
  • Cost per policy issued
  • Whether the 29 were ever worked

Disposition lives in the client’s dialer, and 29 of the first 30 leads carry none - which is the finding, not an excuse. All three become computable the moment lead source is attached to a dial campaign: one configuration change on the client’s side.

"The honest number is harder to look at than cost per click. It is also the only one that pays commissions."