What is an HVAC lead generation system?
An HVAC lead generation system is the full chain from an ad a homeowner sees to a quote booked in your diary. It covers the offer, the page, the filter, the first reply, the booking and the follow-up. Most installers own one or two of those links. The gaps in between are where the money leaks.
We built ours around one unit. A booked quote is a qualified homeowner booked in for an in-home quote, in your diary, with a time. Not a form fill. Not a phone number in a spreadsheet. Every step below exists to turn more strangers into that one thing, and to stop you driving to jobs that were never going to happen.
We call it the HVAC Profit Machine. The whole thing is eight steps.
How does the HVAC Profit Machine work, step by step?
Meta and Google Search ads send a homeowner to a page for their suburb. Six tap-to-answer questions sort them. Qualified homeowners get an SMS and a call inside 60 seconds and are booked into your diary. We follow up the quote on days 1, 3 and 7 and report the numbers every Friday.
1. Meta and Google ads built around a real offer
What happens: we run two channels from your own ad accounts. On Facebook and Instagram, ads target a radius around the suburbs you actually service and reach homeowners thinking about ducted before they search. On Google Search, tight ducted, replacement and repair ad groups catch people searching right now, especially when a system breaks in a heatwave. Each ad carries one offer you can honour: the NSW Energy Savings Scheme discount taken off the quote, a free in-home heat-load assessment, or an install-by date that comes from your real diary. Ads lead with ducted, replacement and whole-home systems. We never advertise single-room splits.
What you see: your vans, your crew and your installs in the Meta ads, and your suburbs and offer in the Google ads. We do not use stock photos or AI imagery.
Why it exists: "Ducted air con, call now" gives a homeowner no reason to act this week. A dated, specific offer does. The budget moves between the two channels with the season, as our Google Ads for HVAC page explains.
2. A landing page matched to the suburb
What happens: the ad click lands on a page that names the homeowner's suburb in the headline, shows your "from" prices, explains the visit and repeats the offer.
What you see: a page on your domain or a subdomain, one per suburb cluster, all built from one template.
Why it exists: a homeowner in Castle Hill trusts a page that says Castle Hill. The page also sets price expectations before you ever pull up in the driveway. The full anatomy is on our HVAC landing page breakdown.
3. The six-question qualifier
What happens: the homeowner answers six questions with a tap each: property type, current system, install or repair, urgency, budget and ownership. Name and mobile come last.
What you see: nothing yet. That is the point.
Why it exists: the qualifier sorts enquiries into priority, standard, nurture, disqualified, commercial and repair before a human spends a minute on them. We wrote up the logic in how to qualify air conditioning leads.
4. Only qualified enquiries reach the CRM pipeline
What happens: every enquiry is saved in GoHighLevel, but only qualified ones move into the active pipeline. Renters, sub-$3,000 single splits and out-of-area enquiries get a polite automated reply instead. A split-system enquiry never routes to priority.
What you see: a pipeline card with all six answers on it, and an SMS alert on your phone for each qualified enquiry.
Why it exists: your phone should ring for jobs worth quoting. A tyre-kicker costs you an hour of driving and a quote you will never win.
5. SMS and call inside 60 seconds
What happens: the homeowner gets a text in your business name within a minute of submitting. A call follows straight away, handled by an AI receptionist with a VA behind it, working to your script and your booking rules.
What you see: the SMS thread and call notes on the contact card.
Why it exists: the homeowner is still holding their phone. An hour later they have filled in two other forms.
6. The site visit goes straight into your diary
What happens: the visit is booked into your calendar with the address, the six answers and the offer they responded to. Confirmation and reminder texts go out automatically. If you use ServiceM8 or simPRO, the job is created there as a quote.
What you see: "BOOKED: Sarah, Thursday 10am, Kellyville" on your phone, and the job in your diary.
Why it exists: you walk in knowing it is a four-bedroom house, an old gas heater, an owner who wants it done before summer.
7. Quote follow-up on days 1, 3 and 7
What happens: after the visit, the homeowner gets short SMS follow-ups on day 1, day 3 and day 7, in your name. They stop the moment you mark the job won or lost.
What you see: replies land in the same thread, and you get a task to call on day 10 if nothing has moved. Once the job is installed, an automated review request goes out the next day, pointing to the Google Business Profile we manage for you.
Why it exists: a lot of installers quote and wait. A written quote with no follow-up is a quote for the next installer. Our quote follow-up sequence has the full wording.
8. The Friday report
What happens: every Friday you get one email: booked quotes by channel, cost per booked quote and jobs won, with two lines written by Sam about what changed and why.
What you see: the numbers below, in plain English.
Why it exists: if you cannot see cost per booked quote, you cannot tell whether your marketing is working. Cost per booked quote is your ad spend for the period divided by the number of booked quotes in the same period.
What does the Friday report show?
The Friday report shows what you paid Meta and Google, how many enquiries each channel brought in, how many passed the qualifier, how many quotes were booked, what each booked quote cost, and how many jobs you won. It arrives Friday afternoon and takes two minutes to read.
Here is the layout. Every figure below is an example made up from our planning assumptions so you can see how the table reads. They are not client results. We have no clients yet.
| Week (example figures) | Meta spend | Google spend | Enquiries (Meta / Google) | Qualified | Booked quotes | Cost per booked quote | Jobs won | Won value | Counts towards 3 jobs |
|---|---|---|---|---|---|---|---|---|---|
| Week 1 (example) | $580 | $350 | 5 / 3 | 5 | 3 | $310 | 0 | $0 | 0 |
| Week 2 (example) | $580 | $350 | 4 / 4 | 5 | 3 | $310 | 1 | $12,800 | 1 |
| Week 3 (example) | $580 | $350 | 5 / 3 | 5 | 3 | $310 | 1 | $3,900 | 0 (under $5,000) |
| Week 4 (example) | $580 | $350 | 4 / 4 | 5 | 4 | $233 | 1 | $14,600 | 1 |
Under the table: booked quotes split by channel, quotes still awaiting your decision (so you can mark them), a 90-day running total, and progress towards the 3 won jobs that trigger the second payment of the first 90 days. Only jobs quoted at $5,000 or more, excluding GST, count. The pricing page explains that in full.
Worked example: reading the planning numbers
$4,000 a month of combined ad spend (default split: Meta $2,500, Google $1,500)
$4,000 / $100 to $130 assumed blended cost per enquiry = about 35 enquiries
35 enquiries x 60% assumed qualifier pass rate = about 21 qualified
21 x 60% booking rate = about 12 to 13 booked quotes
$4,000 / 12.5 booked quotes = about $320 ad cost per booked quote
($4,000 ad spend + $3,000 fee) / 12.5 = about $550 all-in per booked quote
12.5 x 30% close = about 3 to 4 won jobs a month
All of these are planning assumptions. Your first four Friday reports replace them with real numbers.
What is the Off-Peak Fill module?
Off-Peak Fill is the part of the system built for winter and the shoulder months, when cooling enquiries dry up. It switches the ads to reverse cycle heating, gas heater replacement, service and maintenance offers, and pre-summer install slots, so your techs have booked work when the phone goes quiet.
During Off-Peak Fill the budget leans to Meta, because few homeowners search for cooling in June. In the peak cooling months, December to February, it flips the other way: Google Search gets $2,500 of the $4,000 minimum and Meta $1,500, because people search when systems break.
It follows a Sydney calendar, not a guess. In April and May the ads push reverse cycle heating, especially west of Parramatta and in the Hills where winter nights are colder. In June and July we arm a cold-snap variant that switches on when the overnight forecast drops. In August the creative moves to "installed before summer" with a real September date.
The same logic runs the other way. When your install lead time passes three weeks in November or December, spend comes down, because more enquiries you cannot install are just more people to disappoint. Spend follows your diary, not the month. The month-by-month version is in our Sydney HVAC marketing calendar.
Off-Peak Fill is included in the monthly fee. It is not an upsell. A system that only works in January is not much of a system.
Where do Google Business Profile and reviews fit?
Both are included. We manage your Google Business Profile so services, photos and categories match the jobs you want, and the CRM sends an automated review request the day after every install. Homeowners who see your ads on either channel can check those reviews before they book.
A Google Business Profile is the free listing that shows your business on Google Maps and in local search results. It is where your reviews live. Keeping it current and collecting reviews after every install means the ad spend lands on a profile that backs up the ad, rather than one that talks people out of it. The review message and timing are on our HVAC CRM automation page.
Who owns the ad account, the CRM and the leads?
You own both ad accounts, the Facebook page, your Google Business Profile, the pixel and conversion data and every enquiry. Ads run in your Meta Business Manager and your Google Ads account, paid on your card. If you leave, all of it stays with you, and we export your pipeline and messages.
Here is exactly how it splits:
| Asset | Who owns it | What happens if you leave |
|---|---|---|
| Meta ad account and page | You | Stays with you. We remove our access. |
| Google Ads account | You | Stays with you. We remove our access. |
| Google Business Profile | You | Stays with you. We remove our manager access. |
| Pixel, conversion data and ad history | You | Stays in your accounts |
| Contacts, pipeline and SMS history | You | Exported to you, or the CRM sub-account moved to your own subscription |
| Landing pages on your domain | You | Stay live on your domain |
| Our templates, workflows and qualifier logic | Us | You stop using them at the end of the term |
We think this is the only fair way to do it. If an agency owns your ad account, it owns your history, and you start from zero the day you leave.
Who is the HVAC Profit Machine built for?
It is built for residential and light commercial air conditioning installers running 3 to 12 vans, with ducted or multi-head at least 40% of revenue, 30 or more Google reviews at 4.5 stars or better, and turnover of roughly $100k or more a month.
It is not for single-split installers, one-van operators, builder subbies or anyone who wants to buy leads by the unit. The maths only works when the average job is worth the chase. A 3 to 4 bedroom ducted install in Sydney is $10,500 to $16,500 in our planning range, with roughly $2,300 to $4,800 gross profit per job. A single split does not carry the same cost per booked quote.
On the audit call we ask your average job value, margin and ducted share. We do not sign if break-even needs more than about 2 ducted jobs a month, if ducted is under 40% of the work, or if you cannot take on 2 or more extra ducted installs a month. The pricing page shows the maths.
We take one HVAC client per service line per area. If you are in Sydney, see our Sydney HVAC marketing page for which areas are still open.