Skip to content
HUDDS
Get a free audit

Case study · Home services

3.1× the booked jobs, from the same households

A five-location HVAC group was buying leads from three vendors and could not say which ones turned into work. We rebuilt the demand around households rather than clicks — streaming, mail and search reaching the same addresses — and wired the phone to the CRM so the answer stopped being an argument.

Placeholder case study — figures, quote and creative are illustrative until a signed client release is on file.

What changed
3.1×

booked jobs per month

−38%

cost per booked job

11 days

to the first tracked booking

5

locations on one program

The business, and what was actually wrong

Residential HVAC across two metros: five locations, forty-one trucks, replacement work carrying the year and maintenance plans carrying the shoulder seasons. Healthy business, run by an owner who could tell us his revenue to the dollar and his marketing cost to the nearest shrug.

Three lead vendors were invoicing him every month, and each one claimed the same jobs. Nobody was lying, exactly — they were all counting a call they had touched. What nobody could produce was a number for what a booked job cost, which meant every budget conversation was a negotiation rather than a decision.

  • Three vendors, three sets of numbers, no shared definition of a lead
  • Calls ringing into five different lines with no source attached to any of them
  • Peak-season spend set by last year’s invoice rather than by capacity
  • A brand that looked like five separate companies across trucks, mail and web

At a glance

Sector
Residential HVAC
Footprint
5 locations, 2 metros
Average job
$9,400
Engaged
14 months, ongoing
Channels run
Streaming, mail, search
Team on it
4 people, one lead

What we actually did

In this order, because measuring last would have meant arguing about the results for a year.

01

Measured first

A tracking number per channel and per location, wired into the CRM, before a dollar moved.

02

Picked the household

Postcode-level targeting drawn from where the crews already made margin, not a radius on a map.

03

Shot it once

One day on site produced the television spot, nine social cutdowns and the mail creative.

04

Landed three times

Streaming, mail and search timed to reach the same address inside a fortnight.

05

Sent the truth back

Booked jobs pushed to the platforms, so bidding optimised on work rather than on phone calls.

What came out of one shoot day

Everything below was made in-house, from the same morning on site with their own crews and their own trucks.

Streaming television spot Thirty seconds, cut down to fifteen and six for social placements.
Direct mail Oversized 6×11, with the offer varied by postcode and its own tracked number.
Landing pages One per metro, built for a thumb and for the call that follows it.
Fleet livery Applied across forty-one trucks — the cheapest media they already owned.
Weekly dashboard Cost per booked job by channel and by location, on one screen.

Placeholder frames. The finished creative goes in as the client clears each asset for publication.

“We stopped arguing about which vendor was telling the truth. There is one number now, everybody can see it, and the arguments are about what to do next instead.”
Owner Five-location HVAC group

Placeholder quote — replaced with an approved one when the client signs the release.

How the numbers were measured

A multiplier is only worth reading if you know what it was measured against. Here is the whole basis.

The baseline is the twelve months before we started, taken from their CRM rather than from any platform report: jobs marked completed with a revenue line against them. The comparison period is the twelve months after the first full month of tracking, so the three weeks of setup are excluded from both sides.

A booked job counts once, at the location that ran it, credited to the first channel that touched the household inside a thirty-day window. That is a choice, not a law, and it is generous to the top of the funnel — a last-click model would flatter search and make the mail look worse than it is.

  • Seasonality: both periods cover a full year, so the summer peak sits in each
  • Capacity: they added six trucks in month nine, which raises the ceiling and is not our doing
  • Pricing: their average job rose 7% over the period, which we have not adjusted for

What did not work

The first mail drop went out a fortnight before the call tracking was live. Six weeks of response cannot be attributed to anything, which is our mistake rather than theirs — we should have held the drop and did not.

Programmatic display ran for a quarter and never produced a booked job we could trace to it. We stopped it and moved that budget into a second mail cadence, which is where it should have gone at the start.

The maintenance-plan email sequence took three attempts. The first two read like an agency wrote them, because an agency had; the third was rewritten around what their own dispatchers say on the phone, and it is the one that works.

What we ran, and what each part was for

Six of the eight disciplines. The two we left out were brand strategy and e-commerce, because neither would have moved this business.

More of the work

Roofing

$41 per lead

Storm-season search paired with follow-up that answers in under a minute.

Plumbing

62% more calls

Local SEO plus call tracking that showed which pages actually rang the phone.

Remodeling

2.4× consult rate

A qualifying form and a proof-led landing page that stopped paying for tyre-kickers.

See all our work

Want to know what your version of this costs?

The audit is the same work this engagement started with: read the account, read the tracking, read the follow-up, then say which two or three moves would pay first. Free, and yours whatever you decide.

Get a free audit
Get a free audit See all the work

Get your free audit

We read your account, your tracking and your follow-up, then tell you the three things we would fix first. Yours to keep whether or not you hire us.

One reply from a real person inside one business day. No sequence, no gatekeeper.

or
Call (347) 878-2231

Placeholder: submissions are not delivered until the server route ships with the CMS. The call button reaches us for real right now.