Cold email ROI gets miscalculated two ways almost every time: campaign cost gets undercounted (tool subscriptions get included, but not the time spent writing and managing the campaign), and success gets measured at the wrong stage of the funnel (leads generated, instead of meetings booked or revenue closed). Here's the actual formula, done properly.
Three separate numbers matter, and they answer different questions:
CPL is the easiest to calculate and the least useful on its own — it tells you how cheaply you're generating raw leads, but says nothing about whether those leads ever turn into a conversation. CPM and revenue-based ROI are the numbers that actually connect spend to outcome.
A campaign spends $797 in a month — sending tool subscription, a data/verification tool, and a proportional share of time cost — and books 15 qualified meetings. Cost per meeting comes out to $797 ÷ 15 = $53.13 per meeting, which falls comfortably within the $50-$100 range considered strong for most B2B contexts.
To turn that into full ROI, carry the funnel one stage further: if those 15 meetings convert at a typical 20-30% SQL-to-close-won rate, that's roughly 3-4.5 closed deals from the month's spend. Multiply by average deal value to get total revenue generated, then apply the ROI formula above. This is also where the calculation most often breaks down in practice — most senders stop measuring at "meetings booked" and never close the loop back to revenue, which makes ROI impossible to state with any confidence.
A campaign can have an excellent CPL and a terrible CPM at the same time — a cheap, high-volume list generates leads for pennies but converts almost none of them into a real conversation, because the targeting was too broad to be relevant. CPM forces the full funnel (send → reply → book) into one number, which is a much harder metric to accidentally game by just buying a bigger, cheaper list. See how many cold emails it takes to book one meeting for the send-volume side of this same calculation.
Most under-counted ROI calculations leave out one or more of the following, all of which are real costs:
Practical takeaway: if a cost-per-meeting number looks unusually good, check whether time cost was actually included — it's the single most commonly dropped line item in a cold email ROI calculation.
ROI (%) = [(Total Revenue Generated − Total Campaign Cost) ÷ Total Campaign Cost] × 100. Cost Per Meeting (CPM) = Total Monthly Campaign Cost ÷ Meetings Booked is a useful intermediate metric when revenue isn't yet closed and attributable.
Roughly $50-$100 per meeting is considered strong for most B2B contexts, though this varies with list quality, copywriting, and how thoroughly campaign cost is being tracked. A worked example landing at $53 per meeting off $797 in monthly spend and 15 booked meetings sits at the strong end of that range.
Cost per lead can look excellent on a cheap, poorly-targeted list that generates high lead volume but very few real conversations. Cost per meeting forces the full send-to-reply-to-book funnel into one number, making it much harder to accidentally optimize for the wrong thing.
Copywriting and campaign management time, and reply-handling/meeting-booking time. Both are real costs even when done in-house, and leaving them out is the most common way a cost-per-meeting figure ends up looking artificially good.
Related guides
Written by
Scott Holmes
AI systems consultant based in Barrie, Ontario. Founder of Pinnacle Tech Projects. Has built ROI reporting for cold email campaigns across client accounts of very different sizes and price points.
Answer four quick questions and get a tool recommendation for your setup.