Back to Blog
Marketing Strategy

How Contractors Should Measure Marketing ROI (And What Numbers Actually Matter)

LocalLift Co. TeamJuly 2026

How Contractors Should Measure Marketing ROI (And What Numbers Actually Matter)

Mike runs a plumbing company in suburban Atlanta. He's been paying a local marketing agency $2,000 a month for six months. Every month, he gets a PDF. It's got graphs. Lots of graphs. Impressions are up. Reach is growing. The agency is "very excited about the trajectory."

Mike has no idea how many jobs came from that $12,000.

No lead count. No cost per lead. No revenue attributed to any campaign. Just a page of charts that look busy and a rep who answers questions with phrases like "these things take time" and "brand building is a long game."

This is not unusual. It's the default. Most contractors are flying completely blind on marketing spend — not because the data doesn't exist, but because the agency they hired has no incentive to show it to them. When you don't know your numbers, you can't push back. You just keep paying.

This post is about changing that. Here are the three metrics that actually tell you whether your marketing is working, the ones that don't, and how to set up tracking so you can never be handed a PDF full of impressions and be expected to feel good about it.


The 3 Metrics That Actually Matter

1. Cost Per Lead (CPL)

This is the number. Everything else is downstream of it.

CPL = Total marketing spend ÷ Number of leads generated

If you spent $3,000 last month and got 30 leads, your CPL is $100. That's it. Simple math. And yet the majority of contractors we talk to cannot tell you their CPL by channel. They might know their total spend. They might know roughly how many calls came in. But "by channel" — meaning Google Ads vs. Google Local Services Ads vs. organic SEO vs. Facebook? Almost nobody has that.

That's a problem, because CPL varies wildly by channel:

ChannelTypical CPL for HVAC/Plumbing
Google Ads (search)$75–200
Google Local Services Ads (LSA)$35–80
Facebook/Meta Ads$40–120
Organic SEO (amortized)$10–30

"Amortized" is important for SEO — you might spend $1,500/month for six months before SEO generates leads, but once it does, the CPL drops fast. A contractor ranking on page one for "emergency HVAC repair [city]" might generate 15–20 leads a month at $0 in additional ad spend. The upfront investment amortizes to $10–30 per lead over 12 months.

A contractor who doesn't know their CPL by channel is at the mercy of every agency they hire. They can't compare. They can't optimize. They just pay and hope.

2. Lead-to-Job Conversion Rate

Marketing gets you leads. Your sales process converts them to booked jobs. These are two different things, and conflating them is one of the most expensive mistakes in contractor marketing.

Conversion rate = Jobs booked ÷ Total leads × 100

The industry average for home services sits between 20–35%. That means if you're getting 100 leads and booking 25 jobs, you're performing normally. If you're booking 10 jobs from 100 leads, something is wrong — but it's probably not the marketing. It's the sales process: slow callbacks, no follow-up on missed calls, estimates that never get followed up on, pricing that's not competitive.

An agency that blames poor results on "lead quality" when the conversion rate is 8% is deflecting. Ask them: what's the average close rate for other clients in our trade? What's ours? If they don't have that data, they're not managing your marketing — they're running your ads and hoping.

This also cuts the other direction. A contractor with a 40% close rate can afford a higher CPL than one closing at 20%. When you know both numbers, you can make decisions.

3. Revenue Per Lead (RPL)

Once you have CPL and conversion rate, you can calculate the most important number: what is each lead actually worth to you?

RPL = Average job value × Lead-to-job conversion rate

Say you're an HVAC contractor. Average job value (installs, service calls, blended): $800. Close rate: 25%. Your RPL is $200.

  • If your CPL from Google Ads is $75, you're generating $200 in revenue for every $75 spent on lead acquisition. That's a 2.7x return per lead — healthy, especially when you factor in repeat customers and referrals.
  • If your CPL has crept up to $250, you're spending more to acquire each lead than the lead is worth. You're underwater, and you might not even know it if nobody's showing you these numbers.

This math isn't complex. But it requires two things: knowing your average job value (check your invoices from the last 90 days) and having someone actually count the leads per channel. Most contractors have the first. Almost nobody has the second, unless they've set up tracking deliberately.


The Metrics Agencies Love to Show (That Don't Tell You If You're Making Money)

Here's what a bad marketing report looks like — and it probably looks familiar.

Impressions and reach. Your ad was shown to 45,000 people. Great. Did any of them call? Unknown. Impressions are a vanity metric when there's no lead count attached to them. They tell you the ad ran, not whether it worked.

"Brand awareness." This is the cop-out metric for when there are no leads. Brand awareness is real — it's why you've heard of Tide detergent — but it's not measurable in the short term and it's not what you're paying a local marketing agency to build. If your agency's primary deliverable is "awareness," ask them: what does that convert to, and when?

Click-through rate (CTR) in isolation. A 3% CTR sounds good until you realize it's on an ad that got 100 impressions, meaning 3 clicks. Three clicks is not a lead. It's barely a visit. CTR only matters in the context of volume — impressions, clicks, and what happened after the click.

Social media followers and engagement. Getting 50 new followers and a post that got 80 likes is not a business outcome for a roofing company. It might contribute to trust when a prospect Googles you and sees an active presence. But "our engagement rate is up 15%" is not a substitute for "we generated 12 leads at $89 CPL this month."

Keyword rankings without traffic data. This one catches contractors off guard because rankings feel concrete. You're on page one! But ranking #3 for "best licensed HVAC company in [city]" when nobody types that phrase into Google generates zero calls. Rankings only matter when paired with search volume and the traffic those rankings actually drive to your site. An agency that shows you a ranking report without traffic numbers is hiding the ball.

How to spot an agency that hides behind these numbers: Ask one question — "What was our cost per lead by channel last month?" If they can't answer in under 60 seconds, they either don't have the tracking set up or they don't want you to know. Either way, that's your answer.


How to Set Up Basic Tracking (So You're Never Guessing)

You don't need an enterprise analytics stack. Here's what actually works for a contractor doing $500K–$3M in annual revenue:

Call tracking. This is the single highest-leverage thing you can do. Set up a unique phone number for each marketing channel — one for Google Ads, one for your website, one for the LSA listing. Tools like CallRail run about $50–75/month and give you an exact count of how many calls each channel drove, with recordings. No more guessing "I think most calls come from Google." You know.

Google Analytics 4 + Google Search Console. Both are free. GA4 tracks what pages visitors view before they call or fill out a contact form. Search Console shows which search terms are driving traffic to your site. Together, they tell you whether your organic content is generating any meaningful activity. Set these up once, check them monthly.

UTM parameters on paid ads. When you run ads — Google, Facebook, any platform — append UTM parameters to your landing page URLs. This tells GA4 exactly which campaign, ad set, and ad drove each website session. Without UTMs, paid traffic is just lumped into "referral" or misattributed. Your agency should be doing this automatically. If they're not, ask why.

A simple tracking spreadsheet. Source / leads / jobs booked / revenue attributed. Update it weekly. It takes 10 minutes. After 60 days, you'll have more useful data than most contractors accumulate in three years. This is also the document you share with your agency each month so they can see downstream outcomes from the leads they generated.

The "ask every new customer" method. Low-tech, still works. When someone books a job, ask: "How did you find us?" Log it. For smaller operations running one or two channels, this is often enough to know what's working. It won't catch every source, but it catches most of them, and it's free.


What Good Reporting From a Marketing Agency Looks Like

If you're paying an agency, here is the minimum acceptable monthly report:

  • Leads per channel — how many calls, form fills, or chat leads came from Google Ads, LSA, organic SEO, Facebook, etc.
  • CPL per channel — cost divided by leads, broken out by source
  • Jobs attributed — either you share this, or they ask for it each month. A good agency wants to know if the leads converted.
  • Revenue attributed — if you track it (you should), share it. The best agencies use this to optimize toward the channels with the lowest CPL on your highest-value jobs.
  • What changed vs. last month and why — not "impressions are up," but "we shifted $500 from Facebook to Google because CPL on Facebook hit $180 and Google is holding at $95. Here's what we're testing next month."

Quarterly, a good agency runs a full channel audit: what's working, what gets cut, what gets more budget, what new channel is worth testing. They bring you a plan, not just a recap.

Any agency that can't or won't provide this isn't managing your marketing — they're billing you for it. There's a difference.

"If your agency can't tell you your CPL, they don't want you to know it."

That's not cynical. It's practical. When you know your CPL, you know whether to keep paying. Some agencies prefer you stay in the dark.


The ROI Math for Hiring a Marketing Agency

When you're evaluating how much a marketing agency costs vs. what it will generate, the math is the same — just apply it to the retainer.

LocalLift Starter tier ($1,500/mo): To break even in a pure lead-acquisition sense, this needs to generate 10–15 leads at a $100–150 CPL. For a focused HVAC or plumbing operation in a mid-size market, that's a realistic target. If those 10 leads close at 25% and average $900 per job, that's $2,250 in revenue from the marketing budget — and that doesn't account for repeat business, which in HVAC and plumbing is real.

Growth tier ($3,000/mo): Needs 15–20 leads per month to generate comparable CPL efficiency. Achievable at scale when SEO and LSA are running together — SEO brings the low-CPL organic leads while LSA captures the high-intent emergency searches. When both channels are producing, $3,000/mo in agency fees can generate $8,000–15,000/mo in attributed revenue depending on trade and market.

The timeline reality. A well-run agency pays for itself in month 2 or 3, not month 1. Month 1 is setup: tracking installed, campaigns structured, baselines established. No meaningful data exists yet. Contractors who quit after 30 days are the ones who never see ROI — not because marketing doesn't work, but because you can't optimize what you haven't measured yet. You need a month of data before optimization even starts.

This isn't an excuse for agencies to coast. It's a structural reality of how tracking, indexing, and campaign learning periods work. If you're with a new agency and haven't seen data-backed reporting by week six, that's the time to push.

For contractors comparing options, choosing a marketing agency based purely on price is how you end up with a $2,000/month PDF that tells you your impressions are up.


The Bottom Line

Marketing ROI for contractors is not complicated. It's three numbers: CPL, conversion rate, and RPL. Everything else — impressions, reach, engagement, keyword rankings — is context at best and noise at worst.

If you know those three numbers, you can evaluate any agency, any channel, and any campaign. If you don't know them, you're in the same position as Mike in Atlanta: $12,000 into a relationship you can't evaluate, hoping the graphs mean something.

They probably don't.


Want to see exactly what marketing ROI looks like for your trade and market? We'll pull the numbers for free — real CPL benchmarks for your area and channel recommendations with projected returns.

Get your free marketing audit →

Ready to get more leads for your business?

We'll audit your online presence for free and show you exactly where you're losing visibility — and how to fix it.

Book Your Free Audit

Not ready yet? See real results from businesses like yours →

    Need a clear plan for more local leads?