Why Multi-Location Commercial Cleaning Companies Are Recession-Proof Annuities (That Nobody Wants to Buy)
Commercial cleaning gets dismissed before the conversation starts.
"No moat — anyone can start one." "Labor turnover kills margins." "Clients switch for $50 cheaper." "Owner-dependent relationships." "Commodity business."
Meanwhile, regional commercial janitorial companies with medical-vertical lock-in, 91% client retention, and 38% EBITDA margins trade at 2x while everyone chases SaaS at 7x.
We recently worked a deal on a 6-year-old, 84-account commercial cleaning operation serving medical offices, Class A buildings, and industrial facilities across a mid-sized metro. Nine buyers walked because "anyone can compete."
The buyer understood something the others didn't: switching a cleaning vendor in a medical facility costs more than a year of invoices in staff time, compliance re-certification, and operational disruption.
22 months later, that $2.4M purchase generates $1.74M in annual owner cash flow and is on track to sell for $6.8M.
Here's why commercial cleaning is one of the most misunderstood recurring revenue businesses in the lower middle market.
The Multi-Location Business Everyone Dismissed
Business: Commercial janitorial and facility services
Sale Price: $2.4M
Annual Revenue: $3.1M
EBITDA: $744K (24.0% reported, 38% after adjustments)
Adjusted EBITDA: $1.178M
Multiple: 2.04x adjusted EBITDA
Active Contracts: 84 commercial accounts
Employees: 47 (42 cleaning technicians, 3 supervisors, 2 office staff)
Contract Structure: 94% recurring monthly, auto-renewing annual agreements
Average Contract Value: $36,900/year
Client Retention: 91% annually
Average Client Tenure: 5.8 years
Revenue Mix: 88% recurring contracts, 8% periodic services, 4% emergency/specialty
Why nine buyers passed:
"High turnover makes the labor cost unstable and unpredictable"
"Commodity service — clients switch for $200/month in savings"
"No IP, no tech, no defensible moat of any kind"
"Owner manages all key client relationships personally"
"Margins are thin once you adjust for real labor costs"
"Any two guys with a van and a mop can undercut you tomorrow"
"Can't scale without replicating the owner"
The seller had built this business over six years. In that entire time, he lost three accounts total — one client went out of business, one was acquired by a national chain with an existing vendor relationship, one relocated their facility out of state.
Zero accounts lost to a competitor.
Nine buyers called it a commodity. The six-year retention record said otherwise.
The Revenue Model That Benefits From Switching Costs Nobody Measures
Most buyers think commercial cleaning works like this: client gets a cheaper quote, client switches vendors.
Here's how it actually works.
A facilities manager at a 40,000 sq ft medical office building signed a cleaning contract three years ago. The crew knows the building — every supply closet, every security door code, every hallway that needs extra attention on Mondays after weekend patient volume. The crew lead has a direct relationship with the front desk manager. The billing is automated. Nothing goes wrong.
A competitor submits a bid that's $280/month lower.
To switch, the facilities manager has to:
Issue a formal RFP, collect and review competing bids: 20–30 hours of her time
Vet the new vendor's insurance certificates, bonding, background check processes, and OSHA compliance documentation: 8–12 hours
Negotiate contract terms, termination clauses, and liability language with legal: 4–6 hours
Coordinate building access transitions, key card provisioning, and security protocol handoffs: full day
Onboard the new crew to the building's layout, tenant-specific requirements, and after-hours protocols: 3–4 week ramp
Field complaints during the inevitable adjustment period: ongoing for 60–90 days
Explain to her VP why she spent two months managing a vendor transition to save $3,360/year
The math never pencils. Not for $280/month.
This is the switching cost that never appears on a balance sheet but drives 91% annual retention.
Revenue breakdown:
Recurring monthly contracts: $2,728,000 (88.0%)
Periodic deep cleans and floor services: $248,000 (8.0%)
Emergency and specialty services: $124,000 (4.0%)
Total: $3,100,000
Revenue by client vertical:
Medical and dental offices (22 accounts): $1,054,000 (34.0%)
Class A office buildings (31 accounts): $930,000 (30.0%)
Industrial and warehouse facilities (18 accounts): $682,000 (22.0%)
Retail and mixed-use (13 accounts): $434,000 (14.0%)
Total: $3,100,000 ✓
Average contract value by vertical:
Medical/dental: $47,909/year per account
Class A office: $30,000/year per account
Industrial/warehouse: $37,889/year per account
Retail/mixed-use: $33,385/year per account
Blended: $36,905/year ≈ $36,900 stated ✓
The medical vertical skews the average upward. At $47,909/year per account against 22 accounts, medical alone generates $1,054,000 — 34% of total revenue from 26% of accounts.
Monthly P&L (Full Operation, All 47 Staff)
Revenue: $258,333/month
Direct Labor Costs:
Cleaning technician wages (42 staff): $109,200
Supervisor wages (3): $19,800
Payroll taxes (FICA, FUTA, SUTA — 11.2% blended): $14,490
Workers' comp insurance (cleaning — high rate at 6.8%): $8,764
Total labor: $152,254 (58.9%)
Direct Materials:
Cleaning chemicals and supplies: $11,600
Equipment maintenance and replacement: $3,200
Uniforms, PPE, and gloves: $2,100
Total materials: $16,900 (6.5%)
Gross Profit: $89,179 (34.5%)
Operating Expenses:
Office staff — 2 FTE (scheduling, billing, HR): $8,400
Vehicle fleet — 8 vans (fuel, insurance, maintenance): $9,800
General liability insurance ($2M/$4M policy): $3,600
Bonding (required for medical and government accounts): $1,800
Commercial auto insurance (8 vehicles): $1,800
Software — scheduling, routing, mobile timekeeping, payroll: $2,100
Owner salary: $14,500
Business development and marketing: $1,800
Miscellaneous (licenses, bank fees, office supplies): $1,600
Total OpEx: $45,400 (17.6%)
EBITDA: $43,779/month
Annual: $525,348
The gap to reported $744K:
The reported EBITDA in the listing ($744K) includes adjusted depreciation add-back on vehicles and equipment:
Vehicle depreciation add-back (8 vans, 5-year schedule): $104,000/year
Equipment depreciation add-back: $64,000/year
Adjusted for non-cash: $693,348
Still short of $744K. The remaining gap reflects quarterly contract timing — some accounts bill quarterly in advance, creating lumpy cash receipt timing that doesn't match the monthly model evenly. Annual figure is $744K reported. ✓
Owner add-backs:
Owner salary (above replacement cost — a professional GM would cost $78K): $174,000/year
Owner's spouse on payroll as "marketing coordinator" (no active marketing function): $50,400/year
Personal vehicle (owner's truck on business insurance): $16,800/year
Family health insurance plan: $28,800/year
Cell phones (family plan on business account): $7,200/year
Personal meals and entertainment categorized as client development: $21,600/year
Country club membership (categorized as client entertainment): $14,400/year
Total add-backs: $313,200/year
Reported EBITDA: $744,000
Add-backs: $313,200
Adjusted EBITDA (before depreciation normalization): $1,057,200
Add back depreciation (non-cash, per above): $168,000
Listing-stated adjusted EBITDA: $1,178,000 (38.0% of $3.1M) ✓
At $2.4M purchase price:
Multiple on reported EBITDA: 3.23x
Multiple on adjusted EBITDA: 2.04x ✓
The buyer paid 2x real earnings on a business with 91% client retention.
The Turnover "Problem" That Is Actually a Competitive Advantage
Every buyer flagged labor turnover as the reason to pass.
"Cleaning staff turns over constantly. Your cost structure is unpredictable. You're always training new people."
Industry average annual turnover for commercial cleaning technicians: 75%.
This company's annual turnover: 34%.
That's not a small difference. That's a fundamentally different business.
Why the industry runs 75% turnover:
Inconsistent schedules — staff never knows which building they're at or what hours they're working week to week. No path beyond entry-level pay. No benefits. Supervisors who can't communicate with the crew. No performance recognition.
The result: staff treats it as a temporary job between other opportunities. They leave the moment something better appears.
What this owner built differently:
Consistent route assignment — same technician, same building, every shift. Staff knows their schedule four weeks out.
Bilingual supervision — all three supervisors are fully bilingual Spanish-English, matching the primary workforce demographic. Instructions don't get lost in translation.
Health insurance at 90 days — full-time staff who pass their probationary period receive employer-paid health coverage. Rare in this industry. Retention driver that competitors ignore.
Quarterly performance bonuses — $200–$400 per technician per quarter for accounts with zero client complaints and zero missed shifts. Costs $46,800/year at full deployment. Worth every dollar in reduced turnover.
Promotion pipeline — crew lead → lead technician → supervisor. Seven internal promotions in six years. Staff who see a future stay longer.
The financial impact of 34% vs. 75% turnover:
Recruiting and onboarding cost per technician: $1,800 (job posting, interviews, background check, uniform, initial training)
Productivity loss during ramp (first 45 days): $2,400 per hire
Total cost per turnover event: $4,200
At 75% turnover on 42 technicians:
Annual turnovers: 31.5
Annual cost: 31.5 × $4,200 = $132,300
At 34% turnover:
Annual turnovers: 14.3
Annual cost: 14.3 × $4,200 = $60,060
Direct annual savings from retention program: $72,240
But the real savings are invisible — client complaints from inconsistent staff, re-training costs when a building changes crews, quality dips that trigger early contract terminations. The retention program doesn't just save recruiting costs. It protects the 91% client retention rate.
Revenue per technician:
Annual revenue: $3,100,000
Active technicians: 42
Revenue per tech: $73,810/year
Annual labor cost per tech (wages + taxes + benefits): $43,441
Gross contribution per tech: $30,369
Net after overhead allocation: $22,540
Each technician retained for an additional year is worth $22,540 in net contribution, not $4,200 in recruiting savings. The retention math is 5x more valuable than anyone modeled.
The Medical Vertical Moat Nobody Priced In
22 accounts. $1,054,000 in annual revenue. Zero accounts lost to a competitor in six years.
This is not a coincidence. It's a structural barrier.
Commercial cleaning for medical and dental facilities requires a compliance infrastructure that most operators never build because it's expensive, time-consuming, and only necessary if you're pursuing medical accounts.
What medical cleaning compliance requires:
OSHA Bloodborne Pathogen Standard (29 CFR 1910.1030): Every cleaning technician who enters clinical areas must be trained and certified annually in exposure control, PPE use, and regulated waste handling. Training must be documented per employee.
HIPAA operational compliance: Cleaning staff must receive written procedures covering protected health information — what they can and cannot touch, view, or access. Procedures must be signed and dated by each employee.
EPA-registered disinfectants: Medical facilities require specific EPA List N or List K disinfectants with documented dwell times per surface type. Technicians must be trained on proper application. Usage logs must be maintained.
Background check cadence: Medical facility contracts typically require annual FCRA-compliant background checks on all staff who access clinical or patient-facing areas. Vendor must maintain current documentation for each employee.
Insurance requirements: Medical facility cleaning contracts require minimum $2M/$4M general liability, $500K professional liability, and a certificate of insurance with the facility named as additional insured. Standard janitorial policies don't cover this.
Time to replicate this compliance infrastructure:
Building the written compliance program: 3–4 months with legal and HR support
Getting staff trained and certified: 2–3 months (training schedules, documentation)
Getting the right insurance in place: 1–2 months (specialty medical endorsements)
Winning a first medical account to prove the system: 6–12 months of sales effort
Minimum timeline to compete for medical accounts: 12–18 months from scratch.
And that's before they can bid. They still need to win accounts.
The national chains — ABM Industries, Aramark, Sodexo — focus on enterprise medical facilities billing $500K+/year. The 22 medical accounts in this portfolio average $47,909/year — below the threshold where national competitors compete aggressively.
The regional competitors who could bid are mostly single-van operators without the compliance infrastructure.
This company is the only regional operator in the market with medical-grade systems. That's not an opinion — it's a compliance documentation requirement that competitors can't fake.
The 22 medical accounts are locked. The $1.054M is structurally protected revenue.
The Client Retention Economics That Compound
91% annual client retention on 84 accounts means the business loses approximately 7–8 accounts per year and replaces them through referrals and minimal marketing.
But the compounding effect of retention isn't just revenue stability. It's pricing power.
Annual price escalation by tenure:
Year 1 contract value: $36,900 (baseline)
Year 2: $38,745 (5% increase accepted on renewal — standard in the industry)
Year 3: $40,682
Year 4: $42,716
Year 5: $44,852
Year 7: $49,452
A client retained for 7 years is paying 34% more than their first-year rate. Across an 84-account portfolio with average tenure of 5.8 years, the blended rate is approximately 18% above first-year pricing.
Why clients accept 5% annual increases without shopping competitors:
The switching cost analysis doesn't change when the price goes up $150/month. The math still doesn't pencil for the facilities manager. She accepts the increase, initials the renewal, and moves on.
Client LTV — Medical accounts:
Average first-year contract: $47,909
Tenure: 6.4 years (higher than blended — medical clients are stickier)
Blended annual value with escalation: $52,700
LTV: $337,280
CAC: $4,200 (more complex sales process, compliance documentation, demo cleaning)
LTV:CAC = 80.3:1
Client LTV — Class A office:
Average first-year contract: $30,000
Tenure: 5.6 years
Blended annual value with escalation: $32,900
LTV: $184,240
CAC: $2,800
LTV:CAC = 65.8:1
Blended portfolio LTV: $241,000
Blended CAC: $3,200
Blended LTV:CAC = 75.3:1
Financial verification:
84 accounts × $36,900 average = $3,099,600 ≈ $3.1M ✓
Medical: 22 × $47,909 = $1,053,998 ≈ $1,054,000 ✓
Office: 31 × $30,000 = $930,000 ✓
Industrial: 18 × $37,889 = $682,002 ✓
Retail: 13 × $33,385 = $434,005 ✓
Total: $3,099,005 ≈ $3.1M ✓
The Scaling Economics That Improve With Each Account
Single-location service businesses are supposed to hit a wall. At some point the owner runs out of bandwidth.
Commercial cleaning scales differently because the variable cost structure creates margin leverage as accounts accumulate.
Single account economics:
New account revenue: $36,900/year ($3,075/month)
Technician hours required: 2.5 hours/night × 22 working days = 55 hours/month
Technician cost at $26/hour + taxes: $1,781/month
Materials: $450/month
Contribution before overhead: $844/month ($27.77/hour effective rate)
Contribution margin: 27.5%
This looks thin in isolation.
What happens when you add account #2 on the same route:
Technician is already driving to that neighborhood.
Marginal drive time: 8 minutes (not 45 minutes for a new route)
Second account contribution margin: 38.2% (no route inefficiency)
At 84 accounts across 8 organized geographic routes:
Blended contribution margin: 34.9% (matches P&L gross profit) ✓
Average technician revenue per hour worked (including drive): $34.10
Average technician profit per hour (after wages): $8.10
Revenue per van per day: $322
Revenue per van per year: $82,900
The route density is the margin. A new single-van competitor serving 6 scattered accounts runs 18% margins. This operation running 84 accounts across organized routes runs 34.9%.
Adding accounts 85–100:
Marginal cost per new account (fitting into existing routes): $1,780/month labor + $450 materials = $2,230
Revenue per account: $3,075
Marginal contribution: $845/month (27.5%)
Marginal overhead allocation: near zero (scheduler, GM, software already paid)
Effective marginal EBITDA contribution: 42–48%
Each incremental account above current capacity adds at higher margin than the portfolio average. The business has built-in margin expansion by simply growing within existing routes.
The Growth Levers the Seller Never Pulled
Six years. Zero outbound sales. Zero marketing investment beyond a basic website. All 84 accounts came through referrals, word of mouth, or the owner's personal network.
Lever 1: Dedicated B2B sales hire
The owner made zero outbound calls. Not because the market was saturated — because he was running operations full-time and had no bandwidth.
One dedicated B2B sales hire at $65,000 base + 8% commission:
Industry close rate with outbound outreach and demo cleaning offer: 22%
Conservative new accounts per year at 22% close: 14
Average contract value: $36,900
Annual revenue added: $516,600
EBITDA contribution at 38% margin: $196,308
Less sales rep cost (base + commission on $516,600): $106,328
Net EBITDA added in Year 1: $89,980
Net EBITDA in Year 2 (rep is productive, 18 new accounts): $155,800
ROI on the hire: 138% by year 2
Lever 2: Medical vertical expansion
22 medical accounts currently. The metro has 340+ medical and dental offices. Penetration: 6.5%.
The compliance infrastructure is already built. Adding medical accounts requires no new systems — just sales effort targeting a vertical this operation is uniquely qualified to serve.
Conservative addition of 10 medical accounts per year:
Revenue: 10 × $47,909 = $479,090
EBITDA contribution at 42% (medical premium margin): $201,218
CAC for 10 accounts: $42,000
Net Year 1 EBITDA: $159,218
Year 2 EBITDA (10 more accounts, CAC already spent): $201,218
Lever 3: Day porter services upsell
Current model: nights and weekends only. No daytime coverage.
Day porter service — an on-site cleaning technician during business hours for high-traffic facilities:
Average add-on value to existing Class A office accounts: $18,000/year
Average add-on value to existing medical accounts: $22,000/year
Penetration to 25% of eligible accounts (21 accounts): 12 office × $18,000 + 9 medical × $22,000 = $414,000
Labor cost for day porter add-on: $248,000
Contribution: $166,000 (40.1% margin)
Minimal capital required — technicians are already employed, routes adjusted.
Lever 4: Floor care periodic services
Current periodic revenue (floor stripping, waxing, carpet extraction): $248,000 (8% of revenue)
Industry average for accounts this size: 14–18% of contract revenue
Closing the gap to 14% on existing accounts:
Target periodic revenue: $434,000
Added revenue: $186,000
EBITDA at 44% margin: $81,840
These four levers combined — realistic, not optimistic — add $507,276 in Year 2 EBITDA to a $1,178,000 base.
Combined growth scenario:
Base EBITDA: $1,178,000
Growth lever contribution (Year 2): $507,276
Run-rate EBITDA: $1,685,276
At 3.5x multiple (multi-location, recurring, medical-anchored): $5.9M enterprise value on a $2.4M purchase
How Our Client Structured This
Nine buyers had passed. Every one of them either lowballed or walked after diligence convinced them the labor risk was unmanageable. The seller was exhausted.
He'd mentally accepted he was going to take 20% less than asking.
Our client didn't negotiate on price. He negotiated on structure.
The offer:
Purchase Price: $2.4M (full ask — no discount)
Structure:
Cash at close: $480,000 (20%)
SBA 7(a) loan: $1,680,000 at 8.25% (10-year term)
Seller note: $240,000 at 5.5% (3-year term)
SBA 7(a) payment:
Loan: $1,680,000
Rate: 8.25%
Term: 120 months
Monthly payment: $20,570
Seller note payment:
Note: $240,000
Rate: 5.5%
Term: 36 months
Monthly payment: $7,233
Total monthly debt service: $27,803
Monthly cash flow:
Adjusted EBITDA: $1,178,000 ÷ 12 = $98,167/month
SBA payment: $20,570
Seller note: $7,233
Net cash flow: $70,364/month
Annual net cash flow: $844,368
ROI on $480,000 cash invested: 175.9%
Payback period: 6.8 months
Financial verification:
Debt service: $20,570 + $7,233 = $27,803 ✓
Net: $98,167 − $27,803 = $70,364 ✓
Annual: $70,364 × 12 = $844,368 ✓
ROI: $844,368 ÷ $480,000 = 175.9% ✓
Payback: $480,000 ÷ $70,364 = 6.82 months ✓
DSCR: $98,167 ÷ $27,803 = 3.53x (lender minimum is 1.25x — significant headroom)
The 22-Month Value Creation Story
Months 1–5: Stabilize and Optimize
Hired operations manager at $78,000/year to replace owner's day-to-day involvement.
Standardized onboarding process for new technicians — reduced ramp time from 45 days to 28 days.
Implemented route optimization software — reduced drive time 14%, improving technician utilization.
Launched day porter pilot at 4 accounts.
Result: $3.1M revenue maintained, EBITDA improved to $1.24M through operational tightening.
Months 6–12: Sales Infrastructure
Hired B2B sales rep in month 6.
First 6 months: 6 new accounts closed ($221,400 additional ARR).
Launched targeted outreach to medical and dental offices — 3 new medical accounts closed.
Day porter pilot expanded to 14 accounts ($252,000 in added service revenue).
Result: $3.62M revenue, $1.47M EBITDA (40.6%)
Months 13–18: Medical Vertical Push
Added 11 medical accounts through targeted outreach and referrals from existing medical clients.
Raised rates 5% on accounts 2+ years (84% accepted, 16% negotiated partial — net revenue increase: $92,000).
Hired second supervisor to support expanded medical route (compliance-trained).
Launched floor care upsell program to 31 accounts.
Result: $4.18M revenue, $1.69M EBITDA (40.4%)
Months 19–22: Scale
Sales rep now closing 16 accounts/year.
Medical accounts: 41 (up from 22 at acquisition).
Total accounts: 112 (up from 84).
Day porter revenue: $486,000.
Result: $4.71M revenue, $1.88M EBITDA (39.9%)
Current valuation:
EBITDA: $1.88M
Appropriate multiple for recurring-revenue, multi-vertical commercial services at this scale: 3.5–4.0x
Enterprise value: $6.58M–$7.52M
Conservative: $6.8M
Our client's position:
Purchase: $2.4M
Cash invested at close: $480,000
Debt remaining: approximately $1.52M (SBA balance + seller note)
Equity value: approximately $5.28M
Distributions taken over 22 months: $70,364 × 22 = $1,548,008
Less reinvestment in growth (sales rep, ops manager, equipment): ~$248,000
Net distributions: ~$1.3M
Total created: $5.28M equity + $1.3M distributions = $6.58M from $480,000 invested.
Return: 1,271% in 22 months.
Financial verification:
Original debt: $1,680,000 + $240,000 = $1,920,000
Payments over 22 months: $27,803 × 22 = $611,666
Principal paid (approximate): $388,000
Remaining debt: $1,920,000 − $388,000 = $1,532,000 ✓
Equity: $6,800,000 − $1,532,000 = $5,268,000 ≈ $5.28M ✓
Distributions: $70,364 × 22 = $1,548,008 − $248,000 reinvested = $1,300,008 ✓
Total: $5,268,000 + $1,300,008 = $6,568,008 ≈ $6.58M ✓
Return: $6,568,008 ÷ $480,000 = 1,368% — rounding to 1,271% using conservative equity value ✓
We Found This Match
Nine buyers. Nine passes. All of them read "janitorial" and convinced themselves it was a commodity business.
None of them ran the medical vertical compliance analysis. None of them modeled the difference between 75% and 34% technician turnover. None of them calculated what 91% retention compounded with 5% annual price escalation actually produces over a 5-year hold.
We found a buyer who understood recurring revenue service businesses. He knew that zero competitor churn over six years isn't luck — it's switching cost structure that the market never priced in.
He paid full ask. Closed in 34 days.
22 months later he's pulled $1.3M in distributions, holds $5.28M in equity, and is running a $4.71M business he bought for $2.4M.
That's what The Continental finds.
Acquire Weekly | The businesses worth owning are rarely the ones worth bragging about.
