DEV Community

Axel Freeman
Axel Freeman

Posted on Originally published at axelfreeman.com

Your local B2B market is countable - count it before you buy another list

Every "local B2B" growth plan I get asked to fix starts in the same place: a sequence of emails, a CRM, and a promise to "scale volume". Nobody counted the market first. So here is the counting, in the order that saves money.

1. The buyer pool is finite, and the finite number is the ceiling

Write the segment as a definition you could hand to a stranger: commercial HVAC contractors with 10-200 employees inside the metro - not "small businesses nearby". Then enumerate it. Every company, with a domain and a source URL.

When you do that, a number appears that never appears in a pitch deck. A mid-size metro segment is often 3,000-5,000 companies. At roughly three reachable people per company, the entire market is 9,000-15,000 contacts. That is the total supply for every test you will ever run in this segment.

Now the uncomfortable part. A strict two-variant test - 3% base rate, +20% relative lift, 80% power, alpha 0.05 - needs 13,914 contacts per arm, 27,828 in total. In a single metro, the test is usually bigger than the market. Inside 6 months a readable segment needs 4,638 contacts a month; inside 3 months, 9,276.

Nobody tells you this, because it kills the retainer. It should not kill the work.

2. Stop selling verdicts at volumes that cannot fund one

At local volumes two things are readable:

  • Deliverability and existence. Does the mailbox answer SMTP? Is it a role address? Is the domain catch-all? 300-500 checked sends answer this in three weeks.
  • Which of two angles gets replies. Same 300-500 sends, one variable changed, a stop rule written before the first send.

What is not readable at that volume is which variant wins on a 20% lift. Saying so is the difference between a diagnostic and a story. The rule I put in writing before every engagement: declare the volume, run one variable, stop at the limit. A null result delivered on schedule is a deliverable, not a failure.

3. The asset is the file, not the pipeline

A purchased list at local scale is usually stale on arrival, and it is sold to your competitors in the same postal code. A list you commissioned has three things a database cannot give you:

Column Why it decides the outcome
Domain Anything without one does not enter the list. It is the unit of verification
Named person + role Owner vs operations manager changes the angle completely
Mailbox status + date checked A checked timestamp is what makes a re-check in 90 days meaningful
Source URL You can audit every row instead of trusting a vendor

Stop paying and the file still works. Re-check it in a quarter and it is still right.

4. Fix the sending side before the first email

Half of the "the channel died" stories are a domain that never had SPF, DKIM and DMARC aligned, warmed up over two weeks, with a daily ceiling under the point where complaint rate becomes the metric that matters. Sequences before that ship are noise.

5. Decide the four things in writing

  1. Geography and segment definition - it sets the ceiling.
  2. Who counts as a buyer - it doubles or halves the list.
  3. The unit you will judge - replies per 300 checked contacts is readable in three weeks; revenue per segment is not readable in a quarter.
  4. The stop condition - written before the send, or every null result turns into a request for one more month.

If you want the version with numbers filled in for your segment, the method and the published packages live here: marketing engineer - packages, scope and live artefacts. Send one sentence about the product and the geography you can serve, and the first answer is the countable ceiling of that market - free, before any invoice.

The vertical version of this article (what changes when the market is countable, and what a diagnostic at 300-500 sends actually reads) is written out here: marketing engineer for local B2B.

Top comments (0)