Your Lead Count Is Lying To You

You're spending $12,000 a month on marketing. Your agency sends a report with impressions, clicks, and 31 leads. The number they skip: how many of those 31 leads turned into booked jobs.

That number is the only one that pays the mortgage. And most HVAC operators in DFW, from McKinney down to Frisco and out to Celina, can't answer it without guessing.

This is the attribution gap. It's costing you real money right now, and closing it is one of the highest-leverage moves a $2M-$7M HVAC shop can make.

What the Attribution Gap Actually Is

The attribution gap is the space between what you spend on marketing and what you can trace to completed, booked jobs.

Here's how it forms. A homeowner in Prosper sees your truck on the road, Googles your name a week later, finds you through your Google Business Profile, and calls. Your CSR books the job. Six weeks later, your agency reports that your Google Ads drove 14 leads and your GBP drove 8 leads. Neither number is right. That homeowner came from a combination of channels. Without call tracking and proper source attribution, every lead gets credited to whatever the homeowner happened to click last.

The result: you make budget decisions based on last-touch data that misrepresents what is actually working.

Why Cost Per Lead Is the Wrong Number

Cost per lead tells you how much you paid to get a phone number or a form submission. That is it.

An Angi lead costs $230 to $400. It is shared with 3 to 8 other contractors at the same moment. About 85% of Angi leads are reported as unqualified or fake by contractors who track them. When you run the math on the ones that do convert, the effective cost per booked job through Angi exceeds $1,400 in most DFW markets.

An organic inbound call from a homeowner in Allen who found you through your Google Business Profile might cost you nothing beyond the time invested in that profile. Or it might trace back to $200 in content work done three months ago.

Same metric. Completely different economics.

The only number that tells the real story is cost per booked job, broken down by channel.

HVAC Cost Per Booked Job: The Formula (and Why Most Agencies Won't Run It)

Cost per booked job = total spend on that channel / number of jobs booked from that channel.

That is the formula. It takes 30 seconds to calculate once you have the data.

The reason most agencies avoid it: the answer exposes what is not working. If you're spending $4,000 a month on Google Ads and booking 3 jobs from it, your cost per booked job is $1,333. If your average replacement job is $9,000 and you're netting 17 to 20 cents on the dollar, that $1,333 is consuming roughly half your margin on every job that channel produces.

That is the conversation most agencies do not want to have, because it leads to the next question: what else could that $4,000 produce if we moved it?

What the Math Looks Like in Practice

Consider a residential shop in McKinney running $3.5M in annual revenue with four active channels: Google Ads, Angi, Google Local Services Ads, and referrals. Total spend: $15,000 a month.

Without attribution, the owner thinks Angi is working because it produces the highest raw lead volume. With attribution, the picture shifts. Angi produces 30 leads a month at $350 each, $10,500 total. Close rate on Angi leads runs around 20% because of price shoppers and tire kickers. That is 6 booked jobs at a cost per booked job of $1,750.

Google LSA produces 8 booked jobs at a cost per booked job of $200 to $400, depending on the job type.

Referrals produce 12 booked jobs at effectively zero acquisition cost.

The channel the owner believes is working hardest is actually the worst performer on a per-booked-job basis.

This is a scenario built from published industry benchmarks, not a specific client engagement. The pattern it illustrates, high lead volume from aggregators masking poor job economics, comes up consistently in conversations with DFW operators.

Why This Hits Harder for Independent Shops

Berkeys, Baker Brothers, and One Hour are operating at a scale where they can absorb an inefficient channel because volume covers the inefficiency. A large operator can run a $1,400 cost per booked job on Angi and still be profitable because they're booking hundreds of those jobs every month.

A $3M shop booking 15 jobs a month cannot absorb that inefficiency. Every marketing dollar has to work harder because there is no volume to hide behind. The margin math is different at your scale, and the stakes of misallocated budget are higher.

That is why cost per booked job matters more for independent DFW operators than it does for the PE-backed roll-ups running Frisco and Plano.

How to Close the Attribution Gap

You do not need a complicated setup. You need three things:

  1. Tracked phone numbers by channel. A different number on your Google Ads campaign than on your GBP, your website, and your Angi profile. Call tracking software provisions these and ties each call to its source. When your CSR books the job, you know which channel generated it.

  2. Conversion tracking on your website. A form submission or click-to-call event that fires when someone takes action. This goes in Google Tag Manager and feeds your reporting dashboard. A one-time setup, usually a few hours of work.

  3. A dashboard that shows cost per call by channel, not cost per click. Clicks are vanity. Calls are the entry point to a booked job. Your report should answer: I spent $X on this channel, got Y calls, booked Z jobs, at a cost per booked job of $W.

Once those three things are in place, you make marketing decisions based on revenue output. You stop debating whether Angi is "worth it" because the number answers the question.

Three Questions to Ask Before Your Next Budget Conversation

  1. What are you spending on each channel this month?

  2. How many jobs did you book from each channel last month?

  3. What is your cost per booked job, by channel?

If you cannot answer question 3, you have an attribution gap. The revenue it is costing you is a known unknown until you close it.

We built a free 30-minute revenue audit for DFW HVAC operators who want to answer these questions about their own numbers. No pitch. Just your data and a clear answer on where your marketing dollars are actually working.

Next
Next

What Missed Calls Are Costing DFW HVAC Companies