A roofing owner posts a sales rep job, gets a stack of resumes, and mentally budgets the salary line as the cost of the hire. That number is real, but it is a fraction of what the hire actually costs by the time you count recruiting, the months of ramp before the rep is productive, and the roughly even odds that this specific person is gone within a year or two.
Outsourced pay-per-appointment setting gets compared against that salary line too, and loses, because a flat rate per booked appointment looks more expensive than a paycheck someone else is already writing into their budget spreadsheet. That comparison is missing most of the real cost of the in-house option.
This post runs the actual numbers: what an in-house roofing sales rep costs in salary, ramp time, and turnover risk, what storm-driven seasonality does to that math, and where a pay-per-appointment model changes the calculation entirely. Every figure below is sourced and linked, not a round number pulled from a sales page.
What an In-House Roofing Sales Rep Actually Costs You
Start with the paycheck, since it is the number every owner already has in mind. As of July 2026, the median annual salary for a roofing sales role in the United States is $95,195, with the middle range running from $83,656 to $104,516 and the full spread stretching from about $73,151 at the entry level to $113,002 for top earners.
| Percentile | Annual pay |
|---|---|
| 10th (entry level) | $73,151 |
| 25th | $83,656 |
| 50th (median) | $95,195 |
| 75th | $104,516 |
| 90th (top earners) | $113,002 |
Source: Salary.com roofing sales salary data, fetched July 2026.
Commission sits on top of that, not instead of it
Most roofing sales compensation blends a base with commission rather than paying a flat salary. Common structures run 5% to 12% of gross sale price, or a profit-share model in the 30% to 50% range. One widely used framework is the "10/50/50" split: 10% of total revenue is set aside to cover overhead, then the remaining profit after materials and labor is split evenly between the rep and the company. That structure rewards a rep for closing well, which is the point, but it also means your real payroll exposure moves with sales volume in a way a flat outsourced rate does not.
Ramp Time: The Months Before a New Hire Pays for Itself
The salary and commission numbers above assume a rep who is already closing at full capacity. New hires are not. Roofing sales organizations generally plan on 90 to 120 days for a new rep to reach full quota, built around a structured milestone plan rather than a hope that things work out.
| Milestone | What "on track" looks like |
|---|---|
| Day 30 | First signed deal, complete shingle-line product training, clean CRM hygiene |
| Day 60 | Running independent appointments, 3 to 5 signed deals total, first install walk-through completed |
| Day 90 | Minimum production threshold hit, self-managing weekly pipeline, or an honest go/no-go conversation |
Source: roofing sales onboarding milestone framework.
During that entire window you are paying salary or a draw against production that has not caught up yet. If the rep hits day 90 and washes out anyway, which happens often enough to be its own line item below, that ramp spend produced nothing you can carry forward except a lesson.
Turnover Is the Line Item Most Budgets Skip
Why roofing reps quit
Roofing sales reps turn over at roughly 50% to 70% a year, more than double the 21.4% annual turnover rate across the broader construction industry as tracked by the Bureau of Labor Statistics. Roofing field crews, by comparison, turn over closer to 40% a year, and top-performing roofing sales organizations with structured training and base-plus-commission pay bring that number down to roughly 20% to 30%. The main drivers cited: commission-only pay that creates income instability, thin training, seasonal income swings, and burnout from constant door-to-door rejection.
What replacing a rep actually costs
The replacement bill runs $57,000 to $120,000 per rep once you count every real cost, not just posting a new job listing.
| Cost component | Range |
|---|---|
| Recruiting | $2,000 to $5,000 |
| Training investment | $5,000 to $15,000 |
| Lost territory production while the seat is empty or a new hire ramps | $50,000 to $100,000 |
| Total cost to replace one rep | $57,000 to $120,000 |
Source: roofing sales turnover cost breakdown.
Run that turnover rate forward and the replacement bill is not a one-time event. At 50% to 70% annual turnover, a rep's average tenure works out to roughly 17 to 24 months, editorial math built directly from the sourced turnover rate above. That means a typical roofing sales team is absorbing a $57,000 to $120,000 replacement cost on a rolling basis, not as a rare exception.
Storm Season Breaks the Fixed-Headcount Model
Everything above assumes steady, year-round demand. Roofing demand is not steady. A typical roofing company sees roughly a 25% increase in demand during storm season by industry estimates, and one documented example saw demand jump 50% during a storm cycle. The flip side is just as sharp: revenue drops of 40% to 60% during slow periods are not uncommon.
An in-house sales headcount is a decision you make months in advance and cannot flex week to week. Staff for storm season and you are carrying full salaries through a slow season where revenue may have fallen by half. Staff for the slow season and you are short-handed exactly when a hail event puts more estimate opportunities on the board than your crew can cover, trying to hire into a national construction labor market that needs an estimated 349,000 net new workers in 2026 alone, with a majority of that demand coming from retirements rather than growth. That is not a market where you post a job the week after a storm and fill it fast. For more on why that hiring squeeze is getting worse, see the roofing sales rep shortage and why more contractors are outsourcing in 2026.
What Pay-Per-Appointment Outsourcing Actually Changes
An outsourced appointment-setting partner does not remove ramp time or turnover from the world, it removes them from your payroll. The vendor has already trained its team and is running campaigns before your first invoice arrives, so you are not carrying a 90 to 120 day ramp on your own books, and if the vendor loses a team member, that is their staffing problem to solve, not a $57,000 to $120,000 hit to your budget.
Published 2026 rate cards from roofing appointment vendors show what that model costs on the open market. Minyona books appointments through its call center at no extra charge on top of its lead price, running $75 to $150 per appointment. The Lead Giants prices confirmed appointments at $175 to $200 each, with no retainers and a 24-hour window to dispute and replace an invalid or no-show appointment for free. Peak Marketing Service prices appointments at $110 to $150 on a prepaid, month-to-month balance, though it explicitly does not guarantee the homeowner will actually be there.
The spread between those three vendors is really a spread in risk transfer. A flat per-appointment rate with a real no-show replacement policy shifts the risk of an empty calendar slot onto the vendor. A cheaper rate with no such guarantee leaves that risk sitting with you, the same place it already sits with an in-house hire who has a slow week. VA Horizon's own roofing appointments are exclusive to one contractor, double-confirmed before the slot, and replaced free if the homeowner does not show, billed with a small one-time setup and then a flat rate per booked appointment, quoted on a call rather than published as a one-size number. See exactly how that billing works on the roofing pricing page.
In-House vs. Outsourced: Side by Side
| Category | In-house sales rep | Pay-per-appointment outsourcing |
|---|---|---|
| Upfront cost | Recruiting: $2,000 to $5,000 | Small one-time setup, quoted on a call |
| Cost before first result | 90 to 120 days of salary or draw while ramping | No ramp time: the vendor's team is already trained and running before your first invoice |
| Turnover exposure | 50% to 70% annual turnover; $57,000 to $120,000 to replace a rep | No employee on your books to lose |
| Storm season scaling | Fixed headcount set months ahead; hiring into a market short roughly 349,000 workers | Appointment volume scales with the campaign, no hire-and-fire cycle |
| Off-season cost | Full salary continues through a season revenue may drop 40% to 60% | You pay per booked appointment, not a standing headcount |
| No-show risk | Sits with the rep's calendar and your training | Vendor-dependent; look for a written free-replacement policy |
What this means for you
- Budget the full in-house number, salary plus recruiting plus training plus a realistic share of the $57,000 to $120,000 replacement cost, not just the posted salary.
- If your pipeline needs to flex with storm season, a fixed headcount decision made months in advance is the wrong tool for a demand curve that can move 25% to 50% in either direction.
- Whichever model you choose, get the no-show and replacement policy in writing before you compare price per appointment or price per hire across options.
