HVAC ROAS Calculator
Return on Ad Spend, Including the Part Google Leaves Out.
Your ad platform will happily tell you revenue divided by spend. It will not tell you your break-even, and it does not know your margin. Put in five numbers and get ROAS, gross-profit ROAS, and the line you have to clear before ads make money.
Example numbers loaded. Replace with yours.
Google Ads, LSA, Meta. Media only, not the management fee.
What you pay to have the ads run. Zero if in house.
Calls and forms tracked to paid.
Jobs on the board from those leads.
Blended across repair, maintenance, and replacement.
After labor, parts, and equipment. Before overhead.
ROAS
How to read it.
Break-even ROAS
One divided by your gross margin. At 45% margin you need 2.22x before the media has paid for itself, and that is before the management fee. Most dashboards show a green 3x and never mention this.
Gross-profit ROAS
Gross profit from ad-driven jobs divided by spend plus fee. This is the real return. Above 1.0x you made money. Below it, the rest of the company paid for the ads.
Cost per booked job, all in
Spend plus fee, divided by jobs on the board. The one number to compare across Google, LSA, and Meta, because it ignores how each platform defines a conversion.
What this calculator leaves out.
On purpose, so you know where the number is soft.
- Lifetime value
- A customer won from ads pays you again. Only the first ticket is counted here, which makes replacement-heavy campaigns look better and maintenance campaigns look worse than they are.
- Platform attribution
- Google counts a conversion when a call lasts long enough or a form is submitted. Neither is a booked job. Use your job software’s count, not the platform’s.
- LSA credits and disputes
- Pay-per-lead platforms refund some leads. Net spend after credits is the right input if you have it.
- Season
- One month of ROAS in July tells you little about February. Run three months if you can, or let the audit do it.
The green number in the dashboard
Every owner has seen a 4x ROAS in a report and wondered why the bank account did not agree. The dashboard does not know your margin or your fee, and it counts a two-minute call as a conversion. We report the version that ties to the deposit.
Henry “Hank Hugh” Hernandez, CEO, HVAC Digital Marketing
HVAC Growth Audit. Free.
Want us to run it on your real records?
A calculator works on what you type in. The Growth Audit works on what your call log and job software actually say, by channel, and shows you which of the seven steps between a search and a booked job is leaking.
- Cost per booked job, by channel, from your own numbers
- The step that is leaking, and how many jobs it costs you
- What it takes to move it, in writing if you want it
Start here. Two minutes.
Three questions to start. Your answers stay between us.
Questions owners ask.
What is a good ROAS for HVAC ads?
Above your break-even, with room for the fee and overhead, sustained across a season. That number is different for a shop at 35% margin and a shop at 55%, which is why a single industry benchmark is not useful. Run yours.
Should I count LSA and Google Ads together?
Run them separately. They price differently, they answer different searches, and one of them is usually carrying the other. Then compare on cost per booked job, which is the one figure that ignores how each platform counts.
My agency reports ROAS at 5x. Why am I not seeing it?
Ask three questions: is that media only or media plus fee, is the revenue from booked jobs or from the platform’s conversion value, and what margin did they assume. The answers usually explain it.
What does it cost?
It depends on the market and what is in the way, and fee is always separate from ad spend so you can see what you are paying for. We put the number in the proposal after the call, not before it.
Do you save what I type in here?
No. The math runs in your browser and nothing is sent anywhere unless you tap the text button, which opens a message you can edit or delete before sending.
Can I just text instead?
Yes. Text the question and I will answer it. No call, no charge. The call exists for the questions that need your numbers in front of both of us.
Now run it on your real records.
The calculator uses what you typed. The audit pulls paid out of your call log and job board by campaign, with the leak marked.
