Skip to Content
CoursesGTM Engineering08 Unit economics

Unit Economics: Cost per Contactable Lead

Outcome: two numbers computed from your own run — cost per contactable lead and cost per meeting — plus the sensitivity analysis that shows which lever is worth pulling.

Surface
App and MCP server
Level
Beginner
Uses
check_credits
Credits
0 beyond the run you already did
Prerequisite
One completed run, however small

The only two numbers

Cost per contactable lead (CPCL) = total credits spent on a run ÷ rows that ended with a verified contact path and passed the gate.

Cost per meeting = CPCL ÷ (reply rate × meeting rate).

Everything else — cost per row, cost per enrichment, credits per month — is bookkeeping. These two are what a budget conversation is actually about.

Note what the CPCL denominator excludes. Rows that were sourced but gated out, rows with no email, rows suppressed — none count. That is deliberate: you paid for them, and they produced nothing. A number that counts them is flattering and useless.


Worked example

A run of 2,000 sourced companies, gated to 400, three contacts each.

StepRowsCredits eachCredits
Source companies2,0000.1200
Enrich company2,0000.51,000
Tech stack2,0000.51,000
Job listings2,0000.3600
Score and gate00
Find people (400 × 3)1,2000.3360
Find work email1,2001.01,200
Verify email1,2000.1120
AI opening line9001.0900
Total5,380

Of the 1,200 people, 900 ended with a verified address — a 75% hit rate.

  • CPCL = 5,380 ÷ 900 ≈ 6.0 credits
  • At a 4% reply rate and 40% of replies becoming meetings, that is 14.4 contactable leads per meeting → ~86 credits per meeting

Now it is a business number. Compare it to a list vendor’s price, an SDR hour, or a paid channel’s CAC and the conversation stops being about tooling.


Which lever actually moves it

Run the sensitivity analysis once and the priorities become obvious.

ChangeNew CPCLChange
Baseline6.0
Waterfall hit rate 75% → 85%5.4−10%
Drop the AI opening line5.0−17%
Gate to 200 companies instead of 4005.9 per lead, half the spendsee below
Source 1,000 companies instead of 2,000, same gate rate4.6−23%

Two lessons hide in that table.

Tightening the gate barely changes CPCL but halves total spend. Cost per lead stays flat because you are cutting cost and output together — but you spend half as much and your reps work a better list. When capacity is the constraint, this is always the right move.

Sourcing fewer, better companies is the biggest CPCL lever. The top-of-funnel steps run against every row, so waste there is multiplied by four columns. A sharper ICP is worth more than any provider optimization.


The trap: optimizing the wrong end

Count where the credits actually went

In the example, 2,800 of 5,380 credits — over half — were spent on companies that never made it past the gate. That is not waste, it is the cost of qualification, but it is where the money is.

Ask whether a cheaper qualifier exists

Could one cheap column have removed half those companies before three more ran against them? Usually yes. Order your qualification columns cheapest-first and gate between them, not just after all of them.

Only then look at the expensive columns

The AI opening line at 900 credits looks like the biggest single line item. It is 17% of the run. The four columns at the top are 52%.


Presenting it

Whoever owns the budget wants three lines, not a spreadsheet:

  1. “A contactable, qualified lead costs us X credits — Y dollars.”
  2. “At current conversion, a meeting costs Z dollars.”
  3. “The comparable number for [SDR hours / list vendor / paid channel] is W.”

Then one sentence on the lever: what you would change and what it would do to Z. That is the whole conversation.


Do this now

  1. Open check_credits before and after a run, or read the run’s consumption in Credits. Get the real total.
  2. Count rows that ended with a verified contact path and passed the gate.
  3. Compute CPCL. Convert to your currency using your plan’s rate.
  4. Get reply rate and meeting rate from your sequencer. If you have no data yet, use 4% and 40% and mark them as assumptions.
  5. Compute cost per meeting.
  6. Build the sensitivity table: recompute CPCL for a tighter gate, a smaller source list, and a 10-point better hit rate.
  7. Write the three presentation lines.

Check your work

  • Your credit total came from actual consumption, not an estimate
  • Your denominator excludes gated-out, unverified and suppressed rows
  • You have a cost per meeting, with the conversion assumptions labelled as assumptions
  • You know which single change would move the number most

Where this breaks

Counting every enriched row as a lead is the number that gets a program cancelled. It produces a flattering CPCL, so the team scales volume, spend rises in line with rows rather than with results, and six months later the actual cost per meeting surfaces during a budget review. Compute the honest denominator from the first run, even when the honest number is uncomfortable — it is the one that tells you where to optimize.


Further automation

Log credits consumed and contactable rows produced on every scheduled run, into the same sheet. CPCL over time is the single best health metric a GTM pipeline has: it drifts up long before anyone notices reply rates falling, because targeting decay shows in hit rate first. Google Sheets or a webhook is enough to capture it.


Next lesson

09 — Build, buy, or leave it manual, a decision rule for every step you have just costed.

Reference for this lesson: Credits, check_credits, Export, Payment.