HVAC marketing plan: choose the work, budget and weekly next step

A useful HVAC marketing plan answers three questions: what work do you want, who will handle the inquiries, and what will make you change the plan? Start with one service type and a service area your team can cover. Then connect the marketing budget to qualified opportunities, appointments and jobs customers approve.

Use these three editable CSV files in Excel, Google Sheets or another spreadsheet app. They start blank so your plan uses your own numbers. No sign-up is required to use the files.

The files contain editable fields and instructions. They do not contain preset forecasts or automatic formulas. Read how to use the files before your first review.

Using the files

Open each CSV in a spreadsheet app, or import it with UTF-8 encoding and comma as the delimiter. Save editable copies in your own workspace. CSV carries text and values; it does not preserve colors, frozen panes or automatic calculations.

Fill the plan’s Your entry, Owner and Review date columns. Select the budget activities you will actually use and keep planned cash, actual cash and staff time separate. In the weekly sheet, copy the full metric block for each channel, service type and first-inquiry period you want to review. Fill the same cohort dates, source rule and reviewed-as-of date on every row in that block.

Use YYYY-MM-DD dates, one currency and plain numerical amounts. Leave unknown amounts blank and explain the gap in the notes; enter zero only when you have checked that the value is zero. Keep previous budget periods and cohort snapshots separately. Do not add an all-channel summary to its individual channels or total multiple snapshots of the same inquiries.

1. Pick the work you want your marketing to bring in

Choose a primary service type: residential repair, maintenance or replacement. These jobs have different customer decisions and appointment needs. A maintenance campaign should not be judged against replacement estimates as though they were the same work.

In the plan, write down:

  • Your actual service area and the work you accept.

  • The appointments your team can reasonably handle each week.

  • A recorded baseline period, including the number of qualified opportunities and won jobs.

  • A goal and a deadline chosen by the business owner.

If you do not have a baseline, mark it unknown and start recording. Do not fill the gap with an industry’s average booking rate. Your first useful result may be learning which inquiries fit your business and where the handoff breaks down.

A goal might be to increase accepted maintenance work in an existing service area, improve the handling of replacement inquiries, or fill specific appointment capacity. Put your own target in the plan. A target is a decision about what you want; it is not a prediction of what a channel will produce.

2. Choose one or two HVAC marketing strategies to test

Choose an activity that matches the work, customer decision and capacity you recorded. The following are options, rather than a ranking of channels that work best for every HVAC business.

ActivityWhen to consider itWhat to check before spending more
Business Profile and local service pagesPeople are looking for the work you already perform in your areaAccurate services and hours, clear contact options, and whether incoming requests fit your service area
A bounded paid-search or Local Services Ads testYou can serve the advertised work and have an approved test budgetActual charges, inquiry quality, response coverage and available appointments
Existing-customer communicationCustomers may need maintenance or another service you offerYour approved audience and channel, a relevant offer, and a named reply owner
Referrals and local partnershipsYou have useful relationships with customers or adjacent businessesA clear referral route, actual arrangement costs and a way to record the source
Helpful social contentYou can answer a real homeowner question or explain a service clearlyWhether the content is accurate, relevant to your service area and linked to a useful next step

For local visibility, check your existing Google Business Profile before adding more pages. Google recommends complete, accurate business information, current hours, helpful review responses and relevant photos. Its local results depend on relevance, distance and prominence; completing a profile does not guarantee a particular position. Google Business Profile guidance.

For website content, start with a service you actually provide and a question customers ask. Explain what the service includes, where you offer it and how to request it. A page for a town you cannot serve creates the wrong inquiry even if it gets a click.

For social content, use specific topics your team can explain: what happens during a maintenance visit, which details help the office understand a repair request, or how homeowners can compare written replacement scopes. Use real approved examples. Give readers a next step your office can handle.

Write down the offer, dates, cash limit and staff time limit for each chosen activity. Keep repair, maintenance and replacement results separate where possible. Leave the optional second channel blank if your first test already uses your available time or appointment capacity.

3. Put a response owner beside every contact option

Before increasing traffic, follow the path from an ad or service page to your office. Confirm that the phone number works, the form reaches the intended queue, and someone knows what happens next. Check the same path outside staffed hours.

Name a primary inquiry owner and a backup in the plan. Record your staffed coverage, your chosen response target, and who checks requests that arrive outside coverage. The target should reflect the service and coverage you can actually provide.

The owner needs enough information to decide the next step: service area, requested work, urgency, and available appointment capacity. That next step might be a confirmed appointment, an estimate visit, a request for more detail, or a clear explanation that the work is outside scope.

Count a request as booked only after an appointment is confirmed. A submitted form, unanswered callback or service request waiting for review belongs in a different status. If the owner is absent or a handoff fails, the backup needs an explicit queue and next action.

4. Set a budget using your own economics

Enter a cash spend cap and a staff time cap. In the budget file, planned spend stays separate from actual charges. Profile upkeep and a referral program may use staff time even when no ad invoice arrives.

If you choose to value staff time, enter your own hourly cost assumption and label it as an estimate. Multiply recorded hours by that assumption for an estimated staff cost. Cash variance is actual cash minus planned cash when both are known. Do not add staff time again if it is already included in a contractor or agency charge. Keep advertising costs separate from operational inquiry-response coverage so you can see what each change is intended to improve.

There is no preset marketing percentage in this kit. The right limit depends on the work you want, capacity you can serve, cash available and your own job economics. Revenue is not margin. Use your recorded direct costs or clearly labeled assumptions before deciding that a more expensive source of work is worthwhile.

The existing revenue calculator can help explore a separate scenario. Keep modeled scenarios separate from the actual results in your weekly sheet.

5. Measure five different outcomes

Use a consistent internal ID for each inbound request and its primary job opportunity. Repeat calls or a rescheduled appointment should not create extra leads or bookings. Split unrelated job requests when your records treat them as separate opportunities.

OutcomeCount it whenDo not substitute
InquiryA distinct inbound request first arrivesAd clicks, repeat calls about the same job or spam
Qualified opportunityThe potential job fits your recorded service area, scope and booking rulesEvery caller or form submission
Booked appointmentA qualified opportunity has its first confirmed appointmentA pending service request or another reschedule
Held appointmentThat first appointment actually occursA calendar entry or a cancellation
Won jobThe customer approves the workA held visit, an undecided estimate or collected revenue

Also record whether the customer was reached. A two-way conversation or sufficient intake exchange is different from sending a message that receives no response.

Some repair work is approved before a visit, so won jobs do not always follow held appointments in that order. Use the definitions that match the service, and do not label a held-to-won rate unless the jobs in that calculation actually follow that path.

Keep completed jobs, invoices and collected cash separate from customer-approved work. The weekly file provides optional financial rows for the same completed jobs, with your own direct-cost definition. Those figures can inform a cost discussion without treating an accepted estimate as money in the bank.

Compare requests that started in the same period

The weekly measurement file groups requests by their first-inquiry dates. This group is a cohort. Enter its start and end dates, then a separate reviewed-as-of date. A replacement inquiry from last week can remain open this week and become a won job later.

At each review, update that group’s outcomes rather than mixing this week’s new inquiries with every appointment that happened this week. Otherwise a booking from an older inquiry can inflate the apparent result of a new campaign.

Use a consistent source rule and retain the evidence: a campaign record, a tagged form, a documented referral or the customer’s answer. If you cannot establish the source, keep it unknown. A source label supports a comparison; it does not prove that one marketing activity caused a sale.

Only calculate cost per outcome when you can assign the spend to the same channel and cohort on a stated basis. Divide assigned marketing cash by the selected outcome count. Leave missing costs blank. A measured zero is different from an unknown number. If the outcome count is zero, cost per outcome is unavailable, not zero dollars.

For a fictional arithmetic example only, 600 currency units assigned to a cohort with 10 qualified opportunities gives a cash cost of 60 per qualified opportunity. This is a calculation example, not an HVAC benchmark, forecast or customer result. Keep any optional staff-cost estimate separately labeled.

6. Run a weekly review that ends with an action

Bring the plan, actual budget, inquiry records and appointment outcomes to the review. Check the current cohort and older groups that still have open decisions. Ask whether the records are complete before changing the budget.

What you seeWhat to investigateA possible next action
Inquiries outside the service area or job scopeThe offer, targeting and service-page wordingCorrect the specific mismatch before extending that test
Inquiries without a completed exchangeCoverage, failed handoffs and the owner's queueAssign a backup or repair the contact path
Qualified opportunities without appointmentsAvailability, missing information and booking rulesResolve the outstanding booking step
Confirmed appointments that did not happenCancellations, reschedules and unclear expectationsRecord the reason and clarify the next appointment
Held visits with an undecided estimateScope questions, customer timing and follow-up ownershipAssign the existing estimate's next action
More work than the team can serveCapacity and the offer being advertisedReduce or pause that activity until capacity is available

Write down one action, its owner and the date you will check it. Keep the channels and costs that still fit your goals, repair the specific problem you observed, or stop a test that exceeds its agreed limit. Wait for unresolved cohorts to mature before presenting their results as final.

An optional 90-day cadence is to set up the records first, establish a baseline, run a bounded channel test, and review the same cohorts as jobs progress. Use dates suited to your service mix. The cadence is an operating choice, not a promise of leads or a timetable for SEO results.

Common questions

How much should an HVAC company spend on marketing?

Set a limit from your own cash position, capacity and job economics. Enter actual charges and staff time separately. This kit does not prescribe a revenue percentage or a cost-per-lead benchmark.

What if we do not know which channel generated an inquiry?

Keep its source unknown and record what evidence is missing. Improve the capture process going forward. Do not relabel unknown requests as organic search, direct traffic or a successful campaign.

Can we use the files without buying Breezy AI?

Yes. The plan, budget and measurement sheets are ordinary CSV files. Use them with the inquiry and job records you already maintain.

Where does Breezy AI fit?

If your review identifies call or website-inquiry handling as a problem, Breezy AI helps residential trade businesses answer calls and handle website inquiries. Eligible, configured Housecall Pro workflows can book directly. ServiceTitan service requests can flow through Zapier; that is separate from direct ServiceTitan booking. Discuss your inquiry workflow with Breezy AI.

For a closer look at coverage outside office hours, read the existing after-hours call-answering guide.

Skeptical? Try it on your own business.

Talk to a live AI agent - same technology your customers will use. After your demo, it gets fully set up for your business: your name, your services, yours FAQs, your rules.

frequently asked questions

Still have questions? We have answers.

Still have questions? We have answers.

Still have questions? We have answers.

Search for answers to common questions about Breezy

Search for answers…

Ready to capture more leads and maximize revenue with Breezy?

Ready to capture more leads and maximize revenue with Breezy?

Go live in 1 hour and start capturing every lead

HVAC

Plumbing

Electrical

Pest Control

Appliance repair

Breezy AI helps residential HVAC, plumbing and electrical businesses answer calls, capture website inquiries and handle service requests.

© 2024 Breezy Software Inc | All Rights Reserved

Breezy AI helps residential HVAC, plumbing and electrical businesses answer calls, capture website inquiries and handle service requests.

© 2024 Breezy Software Inc | All Rights Reserved

Breezy AI helps residential HVAC, plumbing and electrical businesses answer calls, capture website inquiries and handle service requests.

© 2024 Breezy Software Inc | All Rights Reserved