The 9 Key KPIs for Window Cleaning Companies in 2027
Direct Answer
The 9 KPIs window cleaning owners actually need in 2027 are: jobs per crew per day, average ticket, recurring revenue percentage, gross margin, route density (stops per route-mile), revenue per truck, first-clean-to-repeat conversion rate, rework / call-back rate, and labor cost as a percentage of revenue.
The benchmark stack: residential crews hit 8-12 stops/day at a $285-$425 average ticket, 55-70% gross margin, 40-60% recurring revenue, $165k-$220k revenue per truck (Squeegee Squad system average $162,885/unit), labor at 32-38% of revenue, and call-backs under 3%.
Operators who pair route density above 1.4 stops per route-mile with >50% recurring contracts consistently clear 18-22% net margin — roughly 3-4x the 2% to 10% net the broader cleaning industry reports.
Why Window Cleaning Reports Differently
Window cleaning does not behave like a SaaS company, a generic janitorial company, or a one-time home-services business — and the KPIs reflect that. Three structural realities force the metric set:
First, the unit of production is the crew-hour, not the seat or the contract. A SaaS dashboard tracking MRR and CAC payback misses the entire operating reality: a two-person crew that completes 11 stops at $310 average ticket produces $3,410 of revenue in 8 hours. The same crew at 6 stops produces $1,860.
Jobs per crew per day is the master KPI — every other dollar moves through it.
Second, route density compounds margin nonlinearly. Drive time between stops is dead labor that still carries a fully-loaded technician cost of $42-$58 per hour in 2027. A route with stops 0.4 miles apart delivers 2.1x the gross margin of a route with stops 2.8 miles apart, even at identical ticket prices.
Route density is the only KPI on this list that, when improved 20%, can lift net margin 6-9 points without raising a single price.
Third, recurring revenue is the entire enterprise-value multiplier. A window cleaning company with 70% recurring (bi-weekly commercial + quarterly residential) trades at 3.5-4.5x SDE; the same company at 20% recurring trades at 1.8-2.2x SDE. Owners selling in 2027 are seeing this gap widen as private-equity-backed roll-ups (Threshold Brands, Authority Brands, Empower Brands) bid harder on contracted route books than on transactional one-time revenue.
The nine KPIs below are sequenced from most actionable (you can change it Monday) to most strategic (it moves over quarters).
The 9 KPIs, In Depth
1. Jobs Per Crew Per Day
Definition: Completed paid stops divided by crew-days worked. A two-person truck running 5 days is 5 crew-days.
Formula: Completed stops in period / (Crews × Days worked)
Benchmark (2027): Residential 8-12 stops/day; commercial recurring 4-7 larger stops/day; mixed routes 9-11. Best-in-class operators (e.g., Labor Panes Charlotte under owner Joel Riddell) report 11-13 residential stops/day on tightly clustered routes.
Named example: Fish Window Cleaning corporate guidance to franchisees targets 10 residential stops per crew-day with a two-person team; their top quartile of 290+ U.S. Locations consistently hits 11-12.
Failure mode: Counting scheduled stops instead of completed paid stops. Cancellations, reschedules, and "we'll bill later" tickets inflate the number and hide route problems.
2. Average Ticket
Definition: Revenue collected per completed job (inside/outside, screens, tracks, sills bundled).
Formula: Total revenue / Completed stops
Benchmark (2027): Residential $285-$425; recurring commercial storefront $95-$185; one-time commercial mid-rise $1,400-$4,800. The residential bi-weekly average has risen 11% since 2024 as operators bundle screen cleaning, track detailing, and hard-water restoration into a single price.
Named example: Window Hero (multi-state, headquartered in Charlotte) publishes a $385 average residential ticket in 2026 marketing materials; their bundled "Crystal Clear" package at $545 lifts blended average to $418.
Failure mode: Discounting to fill a thin route. Every $25 discount on a 10-stop day costs $250 of revenue at near-100% marginal margin because the truck is already rolling.
3. Recurring Revenue Percentage
Definition: Share of trailing-12-month revenue from scheduled, repeat-billed contracts (monthly, bi-weekly, quarterly, semi-annual).
Formula: Recurring revenue / Total revenue × 100
Benchmark (2027): Industry median 35-45%. Top quartile 60-75%. Gitnux's 2025 industry report cited that 80% of window cleaning revenue comes from repeat customers — but "repeat" and "contracted recurring" are different; the contracted slice is what buyers pay for.
Named example: Squeegee Squad franchise system reports a network average of 52% recurring, with top units exceeding 70%.
Failure mode: Counting "called us twice" as recurring. Contracted recurring requires a signed agreement and a calendar slot held in advance — otherwise it's just retention luck.
4. Gross Margin
Definition: Revenue minus direct technician labor, vehicle fuel, supplies, and field-payroll taxes. Excludes overhead, owner pay, marketing, software.
Formula: (Revenue − Direct labor − Vehicle fuel − Supplies − Field-payroll tax) / Revenue × 100
Benchmark (2027): 55-70%. Specialty services (window, carpet) sit at the high end of cleaning because of premium pricing and low consumable cost — pure water systems, squeegees, and microfiber run 2-4% of revenue.
Named example: Sparkle Window Cleaning (Chicago, ~$4.2M revenue) discloses 64% gross margin in 2025 trade-show materials; this matches the IWCA-cited specialty-cleaning band.
Failure mode: Loading owner pay or overhead into COGS, which destroys comparability. Use a clean "direct field cost only" cut.
5. Route Density (Stops per Route-Mile)
Definition: Paid stops completed divided by total route miles driven (truck odometer in, odometer out).
Formula: Completed paid stops / Route miles driven
Benchmark (2027): 0.8-1.2 is average; 1.4+ is top decile; 2.0+ appears only in dense urban storefront routes (downtown Chicago commercial, midtown Manhattan).
Named example: Fish Window Cleaning Boston commercial route averages 1.7 stops per route-mile on Tuesday/Thursday storefront circuits; routes are rebuilt monthly via Workwave RouteManager or Jobber's 2025 auto-route feature.
Failure mode: Optimizing a route once and never resequencing as customers churn in and out. Routes decay 6-9% per quarter without active maintenance.
6. Revenue Per Truck
Definition: Trailing-12-month revenue divided by the number of revenue-producing trucks (not the fleet count — only trucks that ran routes).
Formula: TTM revenue / Number of revenue-active trucks
Benchmark (2027): $165,000-$220,000 per residential truck; $240,000-$340,000 per commercial truck. Squeegee Squad's average unit volume is $162,885 per FDD-derived analysis, anchoring the lower end of the residential band.
Named example: Labor Panes (Triad-Charlotte, NC) reports $210k-$245k per truck on 5-day residential routes; Window Genie (Neighborly brand) franchisees averaging $185k per truck per the 2025 FDD Item 19.
Failure mode: Adding a truck before the existing fleet hits the band ceiling. A second truck at $90k revenue is worse economics than one truck at $180k — owner just doubled fixed cost.
7. First-Clean-to-Repeat Conversion Rate
Definition: Share of first-time customers who book a second paid job within 9 months.
Formula: First-timers who rebooked within 270 days / Total first-timers in cohort × 100
Benchmark (2027): 22-32% for one-time residential; 45-60% if first appointment includes a "Lock in your next clean today" offer.
Named example: Window Hero publishes a 38% repeat conversion in their owner-handbook excerpts; Squeegee Squad system average is 31% per franchise-disclosure documents.
Failure mode: Not asking on-site. The technician — not a marketing email three weeks later — books the next appointment at the door. Operators who put the next-visit prompt in the technician's tablet checklist (Jobber, ServiceTitan, Housecall Pro, QuoteIQ) see conversion lift 10-14 points.
8. Call-Back / Rework Rate
Definition: Stops requiring a return visit for quality complaints within 14 days, as a share of completed stops.
Formula: Rework visits / Completed stops × 100
Benchmark (2027): <3% is healthy; 5%+ signals training or QC failure. Each call-back costs roughly $140-$210 in fully-loaded labor, drive time, and customer-trust erosion.
Named example: Fish Window Cleaning reports a 1.8% system call-back rate with mandatory 2-week post-clean photo audits on 100% of first cleans.
Failure mode: Treating call-backs as "free re-cleans" instead of counting them as KPIs. Operators who don't measure rework will not see the revenue ceiling it creates: a 6% rework rate cuts effective crew capacity by half a job per day.
9. Labor Cost as Percentage of Revenue
Definition: Direct field wages plus payroll taxes plus workers' comp, divided by revenue.
Formula: (Field wages + Payroll tax + Workers' comp) / Revenue × 100
Benchmark (2027): 30-38% healthy; >42% is a structural problem. Workers' comp on window cleaning is brutal — 4.5%-9.2% of payroll for ground crews, 12%-22% for high-rise rope-access work. 2027 minimum-wage moves in California ($17.50), Washington ($17.30), and New York City ($17.00) push the band upward.
Named example: Labor Panes discloses 34% labor cost at $210k revenue/truck — a function of piece-rate-flavored bonuses layered on hourly base.
Failure mode: Paying purely hourly with no production link. Crews paid 100% hourly hit roughly 8 stops/day; crews on a hybrid hourly-plus-per-stop bonus average 10.4 stops/day with no change in quality scores.
Real Operators
- Fish Window Cleaning (290+ U.S. Locations, founded 1978, St. Louis): system-average 10-12 stops/day, 1.8% call-back rate, $165k+ per truck, ~52% recurring commercial mix. Brand standard published in IWCA conference materials 2024-2026.
- Squeegee Squad (70+ locations, Maple Grove MN): average unit volume $162,885, 31% first-to-repeat, 52% recurring network-wide. FDD-derived figures via Franchimp/IFPG 2026 listings.
- Window Hero (multi-state, Charlotte HQ): $385-$418 residential average ticket, 38% repeat conversion, and route density of ~1.3 stops/route-mile on cluster-marketed neighborhoods.
- Labor Panes (Triad + Charlotte NC, owner Joel Riddell): publicly cited at 11-13 stops/day, $210k-$245k revenue per truck, 34% labor cost — a frequent IWCA convention speaker.
- Sparkle Window Cleaning (Chicago, est. $4.2M revenue): 64% gross margin, >70% commercial recurring on Loop storefront and mid-rise routes.
Failure Modes
- Tracking revenue but not stops per day. Owners who only watch the bank balance miss the single most actionable KPI. A 15% lift in jobs/crew/day usually requires only routing fixes and a paid-per-stop bonus — and adds $30k-$60k per truck per year.
- Discounting first-time customers without a repeat-booking play. A $99 first clean is fine if the technician closes a $345 quarterly contract on site. Without that close, the operator is buying $99 of revenue at $140 of cost.
- Confusing repeat customers with contracted recurring. Buyers pay 3.5-4.5x SDE for contracted recurring and 1.8-2.2x for "they call when they need us." The KPI must isolate the contracted slice.
- Adding a truck before the first one hits revenue band. A second truck at $80k of revenue is worse than one truck at $180k — fixed cost doubles, gross margin halves.
- Pricing on hourly rate instead of average ticket. Customers buy the outcome (clean windows, all-in), not the input (90 minutes of labor). Operators who switch from hourly quoting to flat-rate packaging lift average ticket 18-26% in the first 90 days.
- Ignoring workers' comp class-code optimization. A correctly-coded ground-only crew at WC code 9402 versus 5474 saves 3-5 points of payroll cost — pure margin recapture with no operational change.
Reporting Cadence
| Cadence | KPIs | Owner Action |
|---|---|---|
| Daily | Jobs per crew per day, completed stops, call-backs | 15-min huddle next morning; reroute stuck trucks |
| Weekly | Average ticket, route density, labor % of revenue | Friday 30-min ops review; pricing & route fixes |
| Monthly | Revenue per truck, gross margin, recurring % | First-Tuesday financial review; truck-add decisions |
| Quarterly | First-to-repeat conversion, recurring contract count | Sales playbook review; QBR with top 20 commercial accounts |
| Annual | All 9, plus valuation multiple modeling | Strategic plan + insurance/WC class-code audit |
The daily three are the operating heartbeat. The monthly three drive truck-add and pricing decisions. The quarterly two drive the enterprise-value story.
30 / 60 / 90 Day Implementation
Days 1-30 — Instrument: Pick a field-service platform (Jobber for <$1M, Housecall Pro for $1-3M, ServiceTitan for $3M+). Turn on per-job timestamping. Get 3 daily KPIs (stops/day, average ticket, call-backs) into one dashboard. Reconcile to bank weekly. Cost: $169-$415/mo software + 12-15 hours of owner setup time.
Days 31-60 — Rebuild route + pricing: Run monthly route resequencing in software. Convert hourly quotes to 3-tier flat packages (Standard / Premium / Complete) anchored at $285 / $385 / $545. Audit the recurring book — separate contracted from frequently-rebooks.
Push contracted recurring from baseline to 50%+ via on-site close.
Days 61-90 — Compensation + sales close: Move techs from pure hourly to hourly + $8-$18 per completed stop to lift jobs/crew/day by 20-30%. Add a next-clean booking step to every tablet checklist to lift first-to-repeat conversion to 35%+. Begin weekly call-back audits with photo review.
Owners who complete all 90 days typically see revenue per truck rise 22-34% and net margin move from 6-9% to 14-19% without adding headcount.
FAQ
Q: What's the single most important KPI for a small (1-2 truck) operator? A: Jobs per crew per day. It's the only KPI a 1-truck owner can move on Monday morning with no software change. Move it from 7 to 10 and revenue jumps 42% with zero new customers acquired.
Q: Is residential or commercial more profitable in 2027? A: Commercial recurring wins on margin and enterprise value; residential wins on average ticket. Best operators run a 60/40 commercial/residential mix to balance cash flow and exit multiple.
Q: How do I price route density into a quote? A: Build a 5-mile cluster grid. Charge full price outside clusters, 8-12% discount inside, and 18-22% premium for true one-off out-of-cluster jobs. Customers self-sort into your density math.
Q: What software actually reports these 9 KPIs out of the box? A: None of them — fully. Jobber and Housecall Pro report 5 of 9 natively (stops, ticket, recurring %, call-backs via custom fields, labor % via timesheet export). The other 4 require a simple Google Sheet pull weekly — 25 minutes of owner time.
Q: When do I add the second truck? A: When truck #1 clears $180k TTM revenue, 65%+ recurring, and is turning away work. Adding a truck below that point starves both routes and crushes margin.
Sources
- International Window Cleaning Association (IWCA) — convention materials, safety/standards publications, member benchmarking (iwca.org)
- American Window Cleaner Magazine (AWC) — operator interviews and pricing surveys, 2024-2026 issues
- Squeegee Squad FDD / Franchimp analysis (2026) — average unit volume, recurring %, repeat conversion benchmarks
- Fish Window Cleaning corporate franchisee training materials and IWCA convention 2024-2026 talks
- Window Hero owner-handbook excerpts and 2026 marketing collateral (Charlotte, NC)
- Jobber 2025 Field Service Benchmark Report — stops/day, route density, average ticket data across home services
- Gitnux Window Cleaning Industry Statistics 2025 — 80% repeat-customer revenue share, market sizing
- BellaFSM 2026 Window Cleaner Salary Data — labor cost benchmarks by metro
- Housecall Pro 2026 Home Services Pricing Index — average ticket and labor % bands
- U.S. Bureau of Labor Statistics OEWS — 37-2011 (Janitors and Cleaners) wage data, 2025 release