Database Reactivation

How Much Revenue Is Sitting in Your Dead Database?

Four numbers, three of which you already have. The fourth is the one that changes the answer most.

Colton JenkinsCo-founder and CEO, Agency Logics

8+ years building growth systems for service businesses. Leads strategy, media buying, offer design, sales conversion, and CRM architecture at Agency Logics.

Published

The four steps

  1. Count usable contacts, not total contacts

    Start from your CRM export, then subtract duplicates, invalid numbers and emails, prior opt-outs, your internal do-not-contact list, and any group whose consent origin does not permit what you intend to send. What remains is the real denominator, and it is usually well below the headline number.

  2. Apply a conservative reply rate

    Published figures for well-run campaigns on cleaned lists commonly sit between 2% and 8%. Model the low end. Under-promising here costs nothing and over-promising wrecks capacity planning.

  3. Apply your appointment-to-job close rate

    Your own number, from your own pipeline. Not the industry average and not your best month. A reply is not an appointment and an appointment is not a job, so this step is where optimistic estimates usually get corrected.

  4. Multiply by average job value

    Top-line revenue per completed job. If you sell several service lines at very different values, run the calculation per segment rather than blending them, because a blended average hides which segment is actually worth working first.

The diagnostic on the homepage runs this calculation for you from database size and average job value if you would rather not do it by hand.

A worked example

An HVAC business with 6,000 CRM records, a 35% appointment-to-job close rate, and a $9,000 average replacement ticket. Watch what the usable step does.

Illustrative calculation. Figures are an example to show the method, not a projection for any business.
StepCalculationResult
Total CRM recordsStarting point6,000
Less duplicates and dead contactsTypically a meaningful share4,900
Less prior opt-outs and do-not-contact4,700
Less contacts with unusable consent originThird-party and undocumented sources3,100 usable
Reply rate at 3%3,100 x 0.0393 replies
Appointments from replies, say 45%93 x 0.4542 appointments
Jobs at a 35% close rate42 x 0.3515 jobs
Revenue at $9,000 average15 x $9,000$135,000
Illustrative calculation. Figures are an example to show the method, not a projection for any business.

Two things worth noticing. The database halved before a single message was written, which is normal and is exactly why the audit comes first. And the final number is still large relative to the cost of running the campaign, because the acquisition cost of those 3,100 contacts was already paid years ago.

The three places estimates go wrong

  • Using total rather than usable contacts. The single biggest source of error, and it can overstate the answer by a factor of two.
  • Using a lead-to-job close rate instead of appointment-to-job. These are very different numbers, and mixing them double-counts the drop-off.
  • Blending service lines. A business selling $400 tune-ups and $12,000 replacements has two databases, not one. Blending them hides which segment carries the value and leads to working the wrong one first.

And one thing people forget entirely

Capacity. An estimate that says 15 jobs is only useful if you can deliver 15 additional jobs in the window. Generating more booked work than a business can service is a genuinely worse outcome than generating none, because it damages the customers you already had.

Set the estimate against what it costs

The contacts are free. The campaign is not. Against the example above, the run cost is the fixed setup, A2P registration, per-segment messaging, and the time to handle the replies. Detail in what A2P 10DLC actually costs.

For most service businesses at a meaningful average ticket, the arithmetic is not close, which is the real argument for doing this before buying more traffic. But it stops being true below roughly 1,000 usable contacts or at a low average ticket, and in those cases the honest recommendation is to spend the money elsewhere. See reactivation versus new leads.

Common questions

How do I estimate what my dormant database is worth?
Count the usable contacts, apply a conservative reply rate, apply your own appointment-to-job close rate, then multiply by your average job value. Four numbers, three of which you already know. The most common error is skipping the usable step and running the estimate on the whole database, which inflates the answer substantially.
What reply rate should I assume?
Published figures for well-run campaigns on cleaned lists commonly fall in the 2% to 8% range. Plan on the low end. If you model at 8% and get 3% the campaign feels like a failure even though 3% of a large database can be a very good outcome, and planning capacity against an inflated number is worse than planning against a modest one.
Why does the estimate come out lower than I expected?
Almost always the usable contact count. Duplicates, dead numbers, prior opt-outs, and contacts whose consent origin does not permit automated marketing texts routinely remove a large share of a raw database. The number that matters is contactable contacts, not rows in the CRM.
Should I use my normal close rate?
Use your appointment-to-job rate, not your lead-to-job rate, because the reply is not the appointment. And use your real number rather than the one you would like. If you do not know it, that itself is the more urgent finding and it is a reporting problem before it is a marketing one.
Is a big database always worth more?
No. A database of 2,000 first-party contacts who filled in your own form usually outperforms 20,000 acquired from a lead seller, because most of the second group cannot lawfully receive an automated marketing text at all. Consent quality beats size, consistently.

Get the real number instead of the estimate

The audit counts what is genuinely usable in your database, segmented by how consent was captured, and gives you a figure based on your close rate rather than an assumed one. If it comes back too small to be worth running, that is a useful answer.

Apply For a Growth Partnership