
Good ROAS for Contractors: Breakeven by Gross Margin
A good ROAS for contractors starts above breakeven, and breakeven comes from gross margin. If your gross margin equals 30%, your first-pass breakeven ROAS equals 3.33. If your gross margin equals 40%, your first-pass breakeven ROAS equals 2.50. A 30% margin job needs $3.33 in booked revenue for each $1 in ad spend before the ad dollars cover themselves. A 40% margin job needs $2.50 in booked revenue for each $1 in ad spend before the ad dollars cover themselves.
ROAS means return on ad spend. You calculate ROAS as revenue from ads divided by ad spend. If you spend $10,000 on ads and book $40,000 in sold work from those ads, ROAS equals 4.00.
Breakeven ROAS answers a tighter owner question. It tells you how much revenue you need from ads so gross profit covers ad spend. The base formula uses 1 divided by gross profit margin [1]. That formula gives you a first-pass floor. Labor burden, financing fees, sales commissions, permit costs, rebates, discounts, and callbacks may raise that floor.
This math sits in the Attract stage of the A.C.E. Method because it governs paid traffic. Attract brings the right buyers into your pipeline. Convert turns inquiries into booked revenue. Expand increases revenue per customer. If paid traffic cannot clear breakeven after direct costs, run Attract math before you raise spend.
The Definition of ROAS That Owners Need
ROAS equals ad revenue divided by ad spend.
ROAS = Revenue from ads ÷ Ad spend
If you spend $25,000 on ads and produce $100,000 in sold revenue from those ads, ROAS equals 4.00. A 4.00 ROAS tells you revenue per $1 in spend, but it does not tell you if gross profit dollars cover the ad bill.
The same revenue produces different gross profit at different margins. At 25% gross margin, $100,000 in sold work creates $25,000 in gross profit. At 45% gross margin, $100,000 creates $45,000 in gross profit. The owner makes different choices at those levels.
Run ROAS by job type. A service campaign, replacement campaign, drain campaign, electrical panel campaign, or bath remodel campaign may each carry a different margin. Match ad spend and targets to the margin of the work that campaign sells.
HVAC install work often carries 35% to 45% gross margin, with a national average near 40% [2]. Service and repair work often runs 50% to 65% gross margin [2]. Benchmarks help, but job-costing gives the number you can use for payroll and targets.
Breakeven ROAS Uses Gross Margin
Breakeven ROAS equals 1 divided by gross margin as a decimal [1].
Breakeven ROAS = 1 ÷ Gross margin
Gross margin equals revenue minus cost of goods sold, divided by revenue. For contractors, cost of goods sold usually includes direct labor, materials, equipment, subcontractor cost, and job-specific direct cost. Your bookkeeper or controller defines the exact accounts and keeps them consistent.
The formula works because gross margin tells you how many cents of gross profit you keep from each $1 of revenue before ad spend and overhead. If you keep 40 cents of gross profit from each $1 of revenue, you need $2.50 of revenue to create $1 of gross profit. The math says 1 ÷ 0.40 = 2.50.
This first-pass number does not pay fixed overhead. It does not cover rent, manager salaries, office staff, trucks sitting idle, software, insurance, debt service, or taxes. It tells you the point where gross profit from ad-driven revenue covers the ad spend tied to that revenue [1].
Owners in the $3M to $10M range carry payroll, fleet cost, call center labor, installers, service techs, sales staff, and managers. A campaign at first-pass breakeven may keep crews moving and cover ad spend. Company profit still depends on close rate, average ticket, capacity, collection timing, and overhead load.
Breakeven ROAS by Gross Margin
Use this table as the fast check before you judge a campaign. The lower your gross margin, the higher your breakeven ROAS. The higher your gross margin, the lower your breakeven ROAS.
| Gross Margin | Gross Margin Decimal | First-Pass Breakeven ROAS | Revenue Needed per $1,000 Ad Spend |
|---|---|---|---|
| 20% | 0.20 | 5.00 | $5,000 |
| 25% | 0.25 | 4.00 | $4,000 |
| 30% | 0.30 | 3.33 | $3,330 |
| 35% | 0.35 | 2.86 | $2,860 |
| 40% | 0.40 | 2.50 | $2,500 |
| 45% | 0.45 | 2.22 | $2,220 |
| 50% | 0.50 | 2.00 | $2,000 |

A contractor at 20% gross margin needs a 5.00 ROAS before the gross profit covers ad spend. That leaves little room for overhead.
A contractor at 50% gross margin needs a 2.00 ROAS before the gross profit covers ad spend. That leaves room for sales labor, callbacks, financing fees, and owner profit.
This table shows why one contractor may like a 3.00 ROAS while another loses cash at the same number. A 3.00 ROAS clears first-pass breakeven at 40% gross margin because 3.00 sits above 2.50. A 3.00 ROAS falls short at 30% gross margin because 3.00 sits below 3.33.
Worked Example: $1,000 in Ad Spend at 30% and 40% Gross Margin
Use round numbers so you can check the arithmetic on a phone.
Input set one
- Ad spend: $1,000
- Gross margin: 30%
- Breakeven ROAS: 1 ÷ 0.30 = 3.33
- Revenue needed: $1,000 × 3.33 = $3,330
- Gross profit: $3,330 × 0.30 = $999
The $999 gross profit nearly covers the $1,000 ad spend. Rounding creates the $1 gap. You need about $3,333 in revenue to cover the full $1,000 exactly at 30% gross margin.
Input set two
- Ad spend: $1,000
- Gross margin: 40%
- Breakeven ROAS: 1 ÷ 0.40 = 2.50
- Revenue needed: $1,000 × 2.50 = $2,500
- Gross profit: $2,500 × 0.40 = $1,000
The $1,000 gross profit covers the $1,000 ad spend at first-pass breakeven.
This example shows why 40% margin gives the paid-ads program more room than 30% margin. The 30% margin campaign needs $3,330 from each $1,000 in ad spend. The 40% margin campaign needs $2,500 from each $1,000 in ad spend. That $830 gap matters when you spend $30,000 per month.
At $30,000 in ad spend, a 30% margin operation needs about $99,900 in revenue to reach first-pass breakeven. A 40% margin operation needs $75,000. The margin gap creates a $24,900 revenue gap before the ads cover themselves.
Add Extra Variable Costs Before You Call ROAS Good
First-pass breakeven ROAS uses gross margin only. Contractor economics often need a second pass because some costs rise with each ad-driven sale and sit outside basic job cost.
Extra variable costs may include sales commission, financing merchant fees, permit fees, rebate handling, credit card fees, call center cost tied to lead volume, warranty allowance, discounting, appointment setter pay, and lead vendor fees. Use your chart of accounts and separate fixed cost from per-sale cost.
The second-pass formula uses contribution margin after extra variable costs.
Adjusted margin = Gross margin minus extra variable cost rate
Adjusted breakeven ROAS = 1 ÷ Adjusted margin
Example
A replacement campaign sells at 40% gross margin. The company also pays 6% sales commission and carries 2% financing cost on the average financed job mix. Extra variable cost equals 8% of revenue.
Adjusted margin equals 40% − 8% = 32%.
Adjusted breakeven ROAS equals 1 ÷ 0.32 = 3.13.
The first-pass breakeven ROAS at 40% margin equals 2.50. The adjusted breakeven ROAS equals 3.13 after commission and financing cost. A campaign at 2.80 ROAS clears the first-pass floor and misses the adjusted floor in this example.
This second-pass math protects cash. A media buyer may report a 2.80 ROAS. A platform may show a sound cost per lead. Your P&L may still feel tight because the campaign sells financed work with commissions and discounts attached.
Set ROAS Targets by Job Type
A good ROAS for contractors depends on job type, gross margin, average ticket, and capacity. Set separate ROAS targets for each campaign.
A maintenance plan campaign may create low front-end revenue and higher future revenue per customer. A replacement campaign may create a large ticket and a lower repeat rate. A repair campaign may create higher margin and feed future replacement. A bathroom remodel campaign may carry longer sales cycle, design time, and deposit timing. Each campaign needs its own margin and adjusted floor.
For HVAC replacement campaigns, pair margin math with lead fit and sales process math. This page on HVAC replacement leads fits that use because replacement work carries larger tickets and demands tighter tracking from click to sold job: https://scaleyouroffers.com/blog/hvac-replacement-leads
Track booked revenue, not quoted revenue. A quote does not pay the ad bill until the customer signs and pays according to your terms. Track the full path:
- Spend to leads
- Leads to booked calls
- Booked calls to estimates
- Estimates to sold work
- Sold work to collected revenue
This tracking shows where to focus each week. Marketing owns qualified inquiry cost. Dispatch or call center owns booking rate. Sales owns close rate and average ticket. Operations owns delivered gross margin. Finance owns cash collection and job-cost truth.
Why Platform ROAS Often Misleads Contractors
Ad platforms count the events you feed them. Many contractor accounts feed form fills, calls, booked appointments, or estimated revenue into the platform. Those signals help bidding, but they do not equal collected gross profit.
A form fill may come from a renter. A call may come from outside the service area. A booked appointment may cancel. An estimate may lose to a lower bid. A sold job may finish below estimated margin after labor overrun.
You need a source-of-truth report that connects ad spend to sold revenue and gross margin. Your CRM, call tracking, booking records, estimate software, and accounting records should use the same campaign naming. A $3M to $10M contractor cannot run ad spend on lead counts alone.
Build a five-line view for each campaign:
- Ad spend
- Qualified leads
- Sold revenue
- Gross margin dollars
- ROAS and adjusted breakeven ROAS
This view shows the first weak link. Low qualified lead volume points to Attract. Strong leads with poor booking points to Convert. Good sold jobs with low repeat revenue point to Expand.
The A.C.E. Read on ROAS
ROAS begins in Attract because ads create the first economic pressure. Attract brings the right buyers. Convert turns inquiries into booked revenue. Expand increases revenue per customer.

Fix the earliest weak stage first. If Attract misses, the business pays for the wrong clicks or pays too much for the right clicks. If Convert misses after Attract works, the business wastes good demand through slow response, weak qualification, or poor follow-up. If Expand misses after Convert works, the business leaves repeat work, add-ons, maintenance, and referrals underused.
For this article, the primary stage is Attract. Breakeven ROAS sets the paid-traffic floor. It shows the lowest revenue multiple you need before ads cover direct cost and ad spend.
Convert still affects ROAS. A better booking rate and close rate can raise revenue from the same ad spend. If you spend $10,000 and sell $30,000, ROAS equals 3.00. If the same leads sell $45,000 through faster response and tight follow-up, ROAS rises to 4.50 without higher ad spend.
Expand also changes the owner view. If a campaign brings customers who later buy maintenance, repairs, IAQ, upgrades, or second projects, first-sale ROAS understates customer revenue. You still need first-sale breakeven discipline because payroll needs cash now.
If you want a quick diagnostic before a full audit, the Lead Flow Score page gives a 12-question, 90-second score and names the one leak holding lead flow back: https://scaleyouroffers.com/ace-assessment
How to Use Breakeven ROAS in Weekly Ad Decisions
Start each campaign review with margin. Put the gross margin beside each campaign before you look at ROAS. A campaign with 35% gross margin needs 2.86 first-pass ROAS. A campaign with 45% gross margin needs 2.22 first-pass ROAS.
Next, add extra variable costs. If the campaign has 7% commission and 3% financing cost, subtract 10 points from gross margin. A 40% gross margin becomes a 30% adjusted margin. The adjusted breakeven ROAS moves from 2.50 to 3.33.
Then review trend by sold revenue, not lead volume alone. Lead volume helps diagnose Attract, but sold revenue pays the ad bill. A lower lead count can beat a higher lead count when close rate, average ticket, and margin run stronger.
Keep a separate column for capacity. A campaign can clear breakeven and still cause trouble if it fills the board with work your crews cannot deliver on time. A $5M contractor with tight install capacity may need more service demand, higher-ticket replacements, or better scheduling before adding spend.
Keep a separate column for cash timing. A remodel or replacement job may sell this week and collect over milestones. Breakeven ROAS tells you gross profit math. Cash timing tells you whether the business can fund production and payroll while work moves through the board.
The Booked-Out Contractor, a $2.95 book, covers the offer, ads, funnel, tracking, and follow-up behind a paid-ads machine for contractors. You can get it here: The Booked-Out Contractor: https://scaleyouroffers.com/boc
A Practical Owner Standard for Good ROAS
A good ROAS for contractors sits above the adjusted breakeven ROAS for that campaign and leaves enough gross profit dollars to fund overhead and owner profit. The exact number depends on gross margin and extra variable cost.
Here is a practical standard. If your adjusted breakeven ROAS equals 3.13, a 3.20 ROAS gives a thin margin of safety. A 4.00 ROAS gives more operating room. A 5.00 ROAS gives even more room, assuming lead volume and job quality stay steady.
Judge ROAS together with gross profit dollars. A campaign that spends $2,000 and returns $12,000 at 4.00 adjusted breakeven creates a useful result, but it may not move a $7M company. A campaign that spends $40,000 and returns $160,000 at the same margin carries far more weight.
Scale spend after the campaign clears the adjusted floor and operations can deliver. Raise spend in controlled steps. Watch cost per qualified lead, booking rate, close rate, average ticket, gross margin, and cash collection. A rising ROAS with tiny volume may look nice and still fail to fill crews. A lower ROAS with strong gross profit dollars may fit the weekly board better.
FAQ
What is a good ROAS for contractors?
A good ROAS for contractors sits above adjusted breakeven ROAS. First-pass breakeven ROAS equals 1 divided by gross margin. A contractor at 40% gross margin needs 2.50 ROAS before gross profit covers ad spend. Extra variable costs raise that floor.
What ROAS breaks even at 30% gross margin?
A 30% gross margin breaks even at 3.33 ROAS on a first-pass basis. The math is 1 divided by 0.30, which equals 3.33. A $1,000 ad spend needs about $3,330 in revenue before gross profit covers ad spend.
What ROAS breaks even at 40% gross margin?
A 40% gross margin breaks even at 2.50 ROAS on a first-pass basis. The math is 1 divided by 0.40, which equals 2.50. A $1,000 ad spend needs $2,500 in revenue before gross profit covers ad spend.
Should contractors include sales commissions in breakeven ROAS?
Yes, contractors should add sales commissions and other per-sale costs in a second-pass calculation. Subtract those costs from gross margin to get adjusted margin. Then divide 1 by adjusted margin to get adjusted breakeven ROAS.
If you want Scale Your Offers to audit your paid ads, margin math, tracking, and A.C.E. order, book an A.C.E. Audit: https://scaleyouroffers.com/ace-audit. We will start with Attract, calculate your breakeven ROAS by job type, check Convert only after the traffic math makes sense, and show you the earliest constraint that limits booked revenue.
References
[1] Skup.net, “How to Calculate Break Even ROAS for Profitability,” https://skup.net/blog/how-to-calculate-break-even-roas/
[2] ProfitabilityPartners.io, “HVAC Profit Margins: 2026 Averages From Real P&Ls,” https://profitabilitypartners.io/hvac-profit-margins/
