Most residential window & door replacement contractors we talk to can quote their average ad spend, their average job size, and their gross margin. Almost none can quote their true cost per acquired customer. Which means almost none actually know whether their marketing engine is making money or losing it, they just know whether the bank account went up or down last quarter.
Here's the actual formula, the costs most contractors forget to include, and the benchmarks that tell you whether your unit economics work.
The metric stack: lead cost vs. CAC vs. true CAC
These three metrics get conflated all the time. They're very different.
1. Cost per lead (CPL)
Total ad spend divided by total form-fills. This is what your ad agency reports in their dashboard. It's the least useful number for your business because it doesn't reflect whether those leads turn into customers. A $40 CPL with a 0.5% close-to-form-fill rate is a worse business than a $200 CPL with a 4% close rate.
2. Cost per signed job (CPSJ, sometimes called CAC)
Total ad spend divided by total signed jobs from that ad spend. Better. But still incomplete, it doesn't count the operational costs of converting form-fills into signed jobs.
3. True CAC (fully loaded customer acquisition cost)
All marketing-and-sales costs in a period divided by all signed jobs in that period. This is the metric that actually tells you whether your customer acquisition machine is profitable.
What to include in the “all costs” numerator
This is where most contractors leak the most accuracy. A complete numerator includes:
- Direct ad spend. What Meta and Google actually charge you. Easy.
- Agency retainer / freelancer fees. Whoever runs your ads, whether internal salary or outside vendor.
- Creative production.Video editor, photographer, ad copywriter, design tools. Often forgotten because it's billed irregularly.
- Lead-management software. CRM seats, SMS platform fees, AI receptionist costs, scheduling software, phone numbers. A2P 10DLC compliance fees, where applicable.
- Internal sales-development time. If your office manager or a dedicated SDR is calling back leads, their fully loaded hourly cost (salary + benefits + overhead) times hours spent on lead qualification.
- In-home consultation cost.Sales-rep time, vehicle, fuel, samples, software. A no-show consultation still costs you the rep's slot and travel.
- Sales commission and bonuses. Whatever portion of rep comp is performance-based on closed jobs.
- Tracking, analytics, and reporting tools. GA4, call tracking, conversion APIs, dashboards.
- Compliance and legal infrastructure. TCPA consent capture, opt-out handling, privacy policy maintenance, occasional legal review of your funnel.
The forgotten cost: bad-fit consultation slots
The denominator: signed jobs, not deposits, not contracts signed-but-canceled
For the denominator, use signed jobs that cleared the cancellation window. A homeowner who signs at 9pm and cancels at 9am the next morning is not a customer, and counting them flatters your CAC number. Most jurisdictions have a 3-day right of rescission for in-home sales; only count jobs past that window.
The benchmark: what good looks like for window and door contractors
Healthy fully-loaded CAC for a residential window & door replacement contractor depends on average job size, but as a rule of thumb:
≤ 15%
Healthy fully-loaded CAC as a percentage of average job revenue for residential window & door replacement contractors. Above 25% and you're losing money on customer acquisition.
For example: if your average signed job is $14,000, a healthy CAC range is roughly $1,400-$2,100. Above $3,500 and you're in trouble, either your funnel is broken or your sales process can't close at the volume your marketing delivers.
These benchmarks vary by market. High-cost-of-living regions with intense ad competition (Northeast, California, Vancouver) will see CAC drift higher; mid-market and Sun Belt geographies often run lower.
The diagnostic: why your CAC is what it is
Once you have a true CAC number, the next question is: what's driving it? The four most common pathologies for contractors with high CAC:
1. Low contact rate on form-fills
You're paying full price for ad traffic but only reaching a third of it. Sub-2-minute response infrastructure typically cuts CAC by 40-60% on its own. See the lead-response math.
2. No pre-qualification before the in-home rep gets involved
Your rep is sitting with leads who can't buy. Each bad-fit consultation has a real opportunity cost. The qualified-vs-raw math is here.
3. Wrong channel mix
You're running Meta when your buyers are on Google, or vice versa. Channel attribution mistakes can hide a 2-3x CAC gap between your channels. A channel-mix breakdown is here.
4. In-home close rate too low for your offer
You're generating qualified appointments but closing at 25% when 35-45% is achievable. This is rarely a marketing problem, it's usually a sales-script, sample-quality, or pricing-presentation problem. Marketing can deliver a well-qualified buyer; the rep still has to do the close.
The simple monthly worksheet
At minimum, every month, your CAC worksheet should produce:
- Total marketing-and-sales spend (numerator).
- Signed jobs past rescission (denominator).
- Fully-loaded CAC.
- CAC as a percentage of average job revenue.
- Trend vs. last 3 months and vs. last year same-month.
- One sentence on what changed (channel mix, response time, sales rep, ad creative).
If you don't produce this monthly, you're managing your largest controllable expense by feel. Even a rough version is dramatically better than nothing.
Ready to talk numbers on your own pipeline?
45-minute strategy call. Live look at your ad accounts. Written diagnosis you keep, whether you sign or not.
Final thought
Cost per lead is not your CAC. Cost per signed job is closer. Fully-loaded CAC including all the operational costs of converting traffic into customers is the number that actually determines whether your marketing engine is making your business money. Most window & door contractors don't track this. The ones that do are dramatically better at deciding what to spend, where to spend it, and when to fire a vendor.
Tagged

