Contractor Lead Costs in Ottawa: Read Your Own Numbers

What a Lead Really Costs an HVAC, Plumbing or Roofing Contractor in Ottawa

What a Lead Really Costs an HVAC, Plumbing or Roofing Contractor in Ottawa

Somebody will always tell you the going rate. A lead should cost you $80. Or $250. Or $40 if you do it properly. The numbers are confident, widely repeated, and almost always American.

Those figures come from US campaigns, in US dollars, in markets where labour rates, permit processes, seasonality and homeowner behaviour all differ from Ottawa and the rest of Eastern Ontario. When a contractor budgets against them, one of two things happens: they conclude paid lead generation does not work when it does, or they chase volume at a cost their actual margins cannot carry.

The alternative is to calculate it yourself. It takes about twenty minutes and it produces a number you can defend.

Two different questions hide inside this search

"What does a contractor lead cost in Ottawa" gets asked for two unrelated reasons, and the answers are not comparable.

  • What does a lead cost to buy? A price per enquiry, per call or per booked estimate, from a marketplace, a directory or a paid channel.
  • What does it cost to acquire a customer? Every dollar spent on marketing — media, agency time, listings, software, the office time spent chasing quotes — divided by the jobs actually won.

The first is a supplier price. The second is a business cost, and it is the only one that belongs in a budget decision. Most of the confusion in this market comes from treating the first as if it were the second. Everything below is about the second number, and it starts with the definition of a lead you are actually buying.

The three problems with borrowed benchmarks

Currency and market. A US dollar cost per lead is not a Canadian dollar cost per lead, and a national Canadian average is not an Ottawa one. Freeze-thaw cycles, a shorter roofing window and a concentrated heating season change demand patterns in ways that change cost.

Trades are not comparable. Published benchmarks commonly blend HVAC, plumbing, roofing, landscaping and cleaning into one home-services figure. These trades have different ticket sizes, different urgency, different seasons and different lead values. A $150 lead is excellent for one of them and impossible for another.

Nobody agrees on what a lead is. A form fill, a phone call, a message, a booked estimate, a qualified opportunity and a sold job all get called a lead in different reports. Comparing your cost per lead to a published figure is meaningless unless the definitions match — and they almost never do.

The four numbers you need

InputWhere it comes fromThe usual mistake
Jobs won from a channel in a periodJob records or CRM, tagged by sourceTagging nothing, then attributing everything to the last call
Total spend on that channel for the periodAd account, plus any agency fee or software costLeaving out call tracking, review tools and the crew time spent quoting
Average job valueRevenue divided by jobs, per trade lineBlending a $400 service call with a $14,000 replacement
Your realistic close rate on leadsJobs won divided by qualified leadsUsing quote-to-win rate without separating unqualified enquiries

The fourth line is where contractors most often mislead themselves. Many "leads" are wrong-service, out-of-area or tire-kicker enquiries. Excluding them first changes the arithmetic considerably, and usually in your favour.

The calculation, worked through

The calculation, worked through

Hypothetical numbers — substitute your own. A company spends $2,500 per month on Google Ads and receives 50 enquiries. Of those, 30 are qualified (right service, in service area, not a competitor or a spam form).

Step 1 — cost per raw enquiry

Step 2 — cost per qualified lead

Step 3 — cost per won job

If one in four qualified leads becomes a job:

Step 4 — compare against job value, not against a competitor's story

At an $1,800 average job value:

Step 5 — test the assumptions that matter. If the close rate falls to one in six, cost per job rises to $500. If average job value is $6,000 rather than $1,800 (a replacement rather than a repair), the return more than triples. Those two variations tell you whether the account is healthy or merely lucky, and they tell you which lever actually moves the number.

Every figure above is illustrative arithmetic, not an Ottawa benchmark.

Why per-trade separation is not optional

Blended lead costs hide the decision you need to make. Consider the same $83 qualified lead against four different jobs:

Job typeTypical urgencyUsual lead sourceWhat the lead is worth
Emergency plumbingHoursSearch, Local Services Ads, Google Business ProfileLow ticket, high urgency — speed wins it
Planned HVAC serviceDays to weeksSearch, email, repeatLow ticket, recurring — volume and retention
HVAC replacementWeeks to monthsSearch, rebate-driven researchHigh ticket, considered — follow-up wins it
Roofing / larger renovationMonthsSearch, referral, sites like this oneHigh ticket, long cycle — proof and process win it

A contractor measuring one blended number will cut the expensive channel that produces replacements and keep the cheap one that produces repairs. That is a margin decision disguised as an efficiency decision.

Seasonality is an Ottawa variable, not noise

Lead costs do not sit still through the year, and in Ottawa the pattern is unusually sharp. Heating season, freeze-thaw damage and a compressed exterior-work window all bunch demand into specific months. Three consequences:

Costs rise when everyone competes for the same search. If your category peaks in the same month as every competitor's, your cost per lead peaks with it. Planning spend against a flat monthly figure guarantees you overspend in the expensive month and underspend in the cheap one.

Capacity should set the ceiling, not the budget. If crews are committed through the peak, buying more leads in that window produces missed calls, slow quotes and worse reviews. Buying demand in your quiet month is usually cheaper per lead and better for the business.

Lead quality changes with the season. An emergency enquiry in January behaves differently from the same service in June. Measure close rates by month before concluding a channel is bad.

The split that matters most: enquiries you never answered

There is one number almost no contractor tracks, and it changes everything: how many enquiries never received a human response.

Audit your own last 30 days. Count enquiries with no reply within 24 hours, calls that rang out during work hours, and form submissions nobody followed up. In many home-service businesses this figure is large enough to explain an apparently poor-performing ad account on its own.

Two things follow from it:

  • A channel can look expensive because its leads were never contacted. Fixing answer rate usually improves return more than any campaign change.
  • If you cannot answer every enquiry, the correct next spend is reception and follow-up, not more advertising.

Google's Canadian Local Services Ads guidance makes the same point from the platform side: an advertiser that repeatedly fails to answer calls or messages may see their ranking affected. The platform is measuring the same thing you should be.

Shared, exclusive, or self-generated: the definition changes the price

Two leads at the same price can be wildly different assets. Before comparing any two suppliers, get these four things in writing, because they change the arithmetic more than the headline price does.

What it meansWhat to check in the contract
Shared leadThe same enquiry is sold to several companiesHow many others receive it, and whether they are named
Exclusive leadSold onceWhether exclusivity is per lead or per campaign, and what happens when the same caller returns through another channel
Billable eventWhat triggers the charge: a form, a connected call, a call over a set duration, or a booked estimateThe exact definition, including wrong numbers, robocalls and out-of-area callers
CreditsWhat happens when a lead is junkThe credit or dispute window, the grounds accepted, and whether credits are automatic or requested

One further check matters more than any of the above: whether the supplier's promise and the contract agree. "Exclusive, high-intent leads in your service area" is a marketing sentence; the billable-event definition is the enforceable one. If a supplier will not put the definition in writing, the price is not the problem.

What a lead is worth to you, before you buy one

Break-even cost per lead is one line of arithmetic, and it stops most bad purchases:

A worked example. A heating job worth $4,800 with a 40% gross margin, on leads you close at 25%:

At that margin and close rate, a $600 lead loses money on average and a $350 lead makes it. Change one input: a 40% close rate instead of 25% lifts break-even to $768, and the same $600 lead becomes profitable. That is the entire argument for fixing answer rates and quote follow-up before negotiating a lead price.

Run it per trade line. A $500 service call and a $14,000 replacement carry different margins and different close rates, and one blended break-even number will point you at the wrong leads.

What to put in a monthly report instead of cost per lead

Replace the single number with four:

  1. Qualified leads by channel — spam and out-of-area removed
  2. Close rate per channel — won jobs divided by qualified leads
  3. Cost per won job — and the same figure split by trade line
  4. Unanswered enquiries — the number that most often explains everything else

Those four numbers make the next decision obvious. A single cost-per-lead figure never does.

When outside help is worth paying for

The calculation is in-house work and most of it needs no agency. What genuinely needs help: attribution that survives a change of platform, separating service calls from replacement enquiries inside the same campaign, call tracking that does not lose numbers, and reallocating budget between trades once seasonality is visible.

That is the work inside marketing for Ottawa home-service companies — visibility, paid campaigns, quote routing and measurement reviewed together, so the lead cost you are reading reflects your business rather than a US benchmark.

Do the arithmetic this week. The number you get will not match anything you have read online, and it will be the only one that applies to you.

Questions contractors ask

What is a good cost per lead for an HVAC, plumbing or roofing company in Ottawa?

There is no single correct figure. Cost per lead depends on trade, service type, season, service area and what counts as a lead, so published US benchmarks cannot be transferred to Ottawa. The useful method is to calculate your own cost per qualified lead and then compare it against your average job value and close rate for that specific trade line.

Why are home-services cost-per-lead benchmarks usually misleading?

Most widely quoted figures come from US campaigns reported in US dollars, and they blend multiple trades with very different ticket sizes and urgency into one average. They also rarely state what counts as a lead. Two numbers produced under different definitions cannot be compared, which is why your own calculation is more useful than any published benchmark.

How do I work out my cost per won job?

Take total spend on the channel, divide by the number of qualified leads it produced, then divide again by your close rate on those leads. Removing unqualified enquiries before that step matters, because out-of-area, wrong-service and spam enquiries inflate both the lead count and the apparent close rate.

Should I increase ad spend during my busiest month?

Usually not past your capacity. Costs per lead typically rise when every competitor is competing for the same searches in the same season, and if crews are already committed, extra leads produce missed calls and slow quotes. Spending in your quiet months is often cheaper per lead and better for the business.

How much do missed calls cost a contractor?

It varies by trade, but the mechanism is consistent: an enquiry that never receives a human response has a near-zero chance of becoming a job while still counting as a paid lead. Auditing unanswered calls, ring-outs and unfollowed form submissions for the last 30 days usually identifies more recoverable revenue than any campaign change.

What should a contractor track instead of cost per lead?

Four measures: qualified leads by channel with spam and out-of-area enquiries removed, close rate per channel, cost per won job split by trade line, and the number of enquiries that never received a human response. Those four make the next decision clear, whereas a single blended cost per lead generally hides it.

Sources

Checked 16 October 2026. The worked example is illustrative arithmetic on round numbers, not a survey of Ottawa jobs; your margins and close rates are the inputs that matter, and they come from your own invoices.