Why Commercial Cleaning Companies Fail: Sell More or Fix Margin?

Diagnose which of four failure modes is draining your janitorial company, then commit to the one fix that matches your size, density and cash position.

CleanTrack360 Team
June 25, 202613 min readUpdated August 1, 2026

When a janitorial company starts to wobble, the owner is usually torn between two moves: go sell more accounts to cover the shortfall, or stop selling and repair the accounts already on the books. Selling feels like the safe answer. It is usually the wrong one.

Adding volume to a book that loses money on labor does not fix anything. It just makes the loss arrive faster, on a bigger payroll, with less of your attention on the buildings you already promised to clean.

Commercial cleaning companies rarely fail from lack of sales. They fail from four measurable causes: accounts priced below loaded labor cost, production rates that drift after the first month, a cash gap between weekly payroll and net-30 invoices, and revenue concentrated in two or three clients. Each has a different fix.

This article gives you the axes that decide which fix is yours, the arithmetic behind each one, and a recommendation for each type of operation. No fence-sitting.


What actually kills commercial cleaning companies?

Business survival in general is not a mystery. Roughly half of new US private-sector establishments are still operating five years after opening, according to the Bureau of Labor Statistics Business Employment Dynamics program. Cleaning is not special in that respect.

What is special is the cost structure. Labor typically dominates the P&L in janitorial work, the barrier to entry is a vacuum and a phone, and buyers compare bids on price per month with no way to see what production rate you assumed. That combination punishes small estimating errors harder than almost any other service trade.

Source: U.S. Bureau of Labor Statistics, Business Employment Dynamics, establishment survival data.

Here are the four failure modes, in the order they usually show up.

  • Mispriced work: The bid used an optimistic production rate, an unloaded wage, or both. The account was unprofitable the day it was signed and nobody noticed for a year.
  • Labor drift: The bid was fine. Then the crew took 17 hours instead of 14, the specialist left, a floor got added without a change order, and nobody compared budgeted hours to actual hours.
  • The cash gap: You pay cleaners weekly or biweekly. Clients pay net 30 and stretch to 45. Growth consumes cash before it produces any, and a profitable company runs out of money.
  • Concentration and churn: Two accounts are 40 percent of revenue. One goes out to bid, you lose it, and the overhead you built to serve it stays.
Key Takeaway: Three of the four failure modes are invisible on a monthly P&L. You only see them per account, per month, with budgeted hours next to actual hours.

The four numbers that tell you which failure mode you have

Before you decide anything, get these four readings. Each takes under an hour for a book of 20 accounts if your timekeeping is in one place.

AxisHow to measure itThe reading that means trouble
Gross margin per accountMonthly revenue minus loaded labor, supplies and equipment allowance, per accountAny recurring account below roughly 25 percent, or a book average below 30 percent
Hours varianceBudgeted cleaner-hours in the bid vs. actual clocked hours, per account, per monthActual hours running more than 10 percent over budget for two months straight
Cash gapDays from the day you pay the labor to the day the client's money clearsOver 45 days, or any client whose average days-to-pay exceeds 60
ConcentrationLargest client as a percentage of trailing 12-month revenueOne client above 25 to 30 percent, or top three above 50 percent

Two secondary readings sharpen the picture: your bid win rate, and your inspection coverage. A win rate above about half of everything you quote usually means you are buying work rather than winning it. Accounts with no documented inspection in the last 60 days are the ones that cancel by email with no warning.

馃挕 Tip: Rank every account by gross profit dollars per month, not by revenue. Owners are consistently surprised by which large account is actually the small one.

What a 42,000 sq ft account really costs: the math most bids skip

Take a single illustrative building. Call it Meridian Office Park: 42,000 cleanable square feet, general office with restrooms, cleaned five nights a week. All figures below are assumptions for the example, not benchmarks. Substitute your own.

The bid assumptions: production rate of 3,000 sq ft per cleaner-hour, base wage $16.00 per hour, loaded labor multiplier of 1.30 to cover FICA, unemployment insurance, workers compensation and paid time off. Supplies and equipment allowance of $350 per month. Price quoted at $8,400 per month.

  • Cleaner-hours per night: 42,000 / 3,000 = 14.0
  • Hours per month: 14.0 x 5 nights x 4.33 weeks = 303 hours
  • Loaded rate: $16.00 x 1.30 = $20.80
  • Monthly labor: 303 x $20.80 = $6,302
  • Gross profit: $8,400 minus $6,302 minus $350 = $1,748, or 20.8 percent

That is already thin, and it is the optimistic version. Now assume the walkthrough undercounted restrooms and the real production rate is 2,400 sq ft per cleaner-hour.

  • Cleaner-hours per night: 42,000 / 2,400 = 17.5
  • Hours per month: 17.5 x 5 x 4.33 = 379 hours
  • Monthly labor: 379 x $20.80 = $7,883
  • Gross profit: $8,400 minus $7,883 minus $350 = $167, or 2.0 percent

A 20 percent miss on production rate erased 90 percent of the gross profit. Raise the base wage to $17.00 to stop turnover at that site and the account goes negative before a single overhead dollar is allocated.

This is why production rates are not a detail. ISSA publishes standardized cleaning times so operators can defend a rate instead of guessing at one, and the difference between a defended rate and a guessed rate is the entire margin on a building like Meridian.

Source: ISSA, Cleaning Times / 612 Cleaning Times production rate reference.

The cash side of the same account

Meridian starts service September 1. You invoice September 30, terms net 30, the client actually pays around November 5. You have paid roughly nine weeks of payroll on that building, about $13,000 at the bid assumptions, before the first dollar arrives.

Sign three Meridians in the same quarter and you need close to $40,000 of working capital to survive winning. That is the mechanism behind the phrase "grew itself out of business."


Which move should you make first? The decision table

You have four realistic moves this quarter, and honestly only the bandwidth for one. Find your readings in the left column and read across.

Deciding axisSell more accountsReprice the bookRebuild the labor modelPrune and densify
Most accounts under 25 percent gross marginMultiplies the lossStart hereDo secondWorst 10 percent only
Margin fine on paper, actual hours over budgetWaitWill not fix itStart hereNo
Crews average over 20 minutes between sitesOnly inside existing zonesPartial helpRe-route before rehiringStart here
Cash gap over 45 daysDangerous, growth burns cashChange terms, not just priceNo effectDrop chronic late payers
Top client over 30 percent of revenueStart here, same geographyLaterNo effectNo
Winning more than half of bidsYou are buying workStart hereNo effectNo
Cancellations for quality, no inspection recordFills a leaking bucketNoStart here, supervision firstUnwinnable sites only
Owner still cleaning 10+ hours a weekNo capacity to deliverFund a supervisor with itStart herePossibly

Notice what the table refuses to do: it never recommends selling your way out of a margin problem, and it never recommends a price increase as the answer to a productivity problem. Those two substitutions are the most common strategic errors in this industry.

馃挕 Tip: If two rows both say "start here," pick the one attached to the larger dollar figure. Repricing a $9,000 per month account beats fixing 20 minutes of drive time on a $1,200 route.

Which fix fits your company right now

Owner-operator, under about $200k, three to six accounts

Your failure mode is almost always pricing, because you bid against your own unpaid labor and never charged for it. Recommendation: reprice, and do it before you hire anyone.

Rebuild every quote at a loaded rate that assumes an employee does the work, not you. If an account cannot carry that number, it is not a business, it is a job you gave yourself. Give the worst one a 90-day price correction letter and be willing to lose it.

$200k to $750k, first supervisor hired, 6 to 15 accounts

This is where labor drift eats companies. You are no longer on site, budgeted hours stopped being enforced, and quality complaints started arriving through the client instead of through your own inspections. Recommendation: rebuild the labor model.

Set a budgeted hours figure per site per week, compare it to clocked hours every Monday, and inspect every account on a fixed frequency with photo evidence. Define the target cleanliness level in writing so "clean" is not a matter of opinion. APPA's five-level scale is the common vocabulary for this.

Source: APPA, Custodial Staffing Guidelines, five levels of clean.

$750k to $3M, multiple crews, more than one city

Your enemy is drive time and supervision span. Margin looks acceptable in aggregate and terrible per route. Recommendation: prune and densify.

Map every account. Any site more than about 20 minutes outside a cluster either gets repriced to cover the windshield time, gets paired with a neighbor within two quarters, or gets released. Then sell only inside the zones you already serve.

Any company where one client is over 30 percent of revenue

Margin is not your problem yet. Survival concentration is. Recommendation: sell, aggressively, but only inside existing geography.

Assume that account goes out to bid the moment its facility manager changes jobs. Your goal is to get it under 20 percent of revenue before that happens, and the fastest safe route is more work in the same buildings and the same block, not a new market.

Fast growth built on subcontracted cleaners

The exposure here is classification, not margin. Worker classification is governed by federal and state tests, and the penalties for getting it wrong land as back taxes and insurance assessments rather than as a bad month. Recommendation: get a written opinion from a CPA and an employment attorney before your next 10 hires, and price in the difference now.

Source: U.S. Department of Labor, Wage and Hour Division guidance on employee vs. independent contractor classification under the FLSA; IRS common-law rules.

The 30-minute account autopsy, run monthly

  • Pull actual clocked hours for the site and compare to budgeted hours from the bid.
  • Recalculate loaded labor cost at current wages, not the wage you bid two years ago.
  • Subtract labor, supplies, equipment allowance and any callback hours from monthly revenue.
  • Divide gross profit by revenue. Write the percentage on the account record.
  • Check days-to-pay on the last three invoices.
  • Confirm at least one documented inspection in the last 30 to 60 days, with photos.
  • Note any scope added since signing that never became a change order.
  • Flag every account under target margin for repricing, re-routing or release within 90 days.

Questions operators actually ask

What gross margin should a commercial cleaning account run at?

Most operators plan recurring janitorial work in the 30 to 40 percent gross margin range after loaded labor and supplies, before overhead and profit. Below 25 percent, a single wage increase or one slow month can push the account negative. Specialty work such as floor care and post-construction usually carries a higher margin because equipment and skill are scarcer.

How do I calculate a loaded labor rate?

Start with the base hourly wage, then add employer FICA at 7.65 percent, federal and state unemployment insurance, workers compensation premium at your class code rate, and any paid time off, uniforms or training hours. Many operators land between 1.25 and 1.40 times base wage. Build your own multiplier from your actual insurance declarations page rather than borrowing someone else's.

How many accounts can one supervisor realistically inspect?

It depends on drive time more than count. A supervisor doing formal scored inspections with photos typically needs 45 to 90 minutes per mid-size site including travel. In a tight urban cluster, one supervisor can cover a large book monthly. Spread across a metro area, the same person covers a fraction of it. Measure inspections completed, not sites assigned.

Should I fire a client that always pays late?

Not automatically, but price the delay. If a client averages 60 days on net-30 terms, you are financing them at your own cost of capital while paying cleaners weekly. Ask for a shorter term or ACH autopay at renewal, and if they refuse, add the carrying cost to the price. Release them if the account is also below target margin.

How long should a commercial cleaning contract term be?

Twelve months with automatic renewal and a 30-day cancellation clause is the common structure in the US market. Longer terms rarely hold, because most janitorial agreements are cancellable anyway. What protects you is not term length but a written scope, a defined cleanliness standard, a change-order clause for added square footage, and an annual price escalator tied to wage increases.


Where CleanTrack360 fits

Every diagnosis above depends on data you either have in one place or you do not: budgeted hours next to actual hours, an inspection record per site, and a quote built on real square footage and loaded labor. CleanTrack360 puts those in one system. Geofenced GPS clock-in and clock-out runs in the crew's phone browser with a default 150 m radius you can set per location, so actual hours are captured at the site. Quality inspections use your own checklists with photo evidence and automatic scoring, and clients can see schedules, inspection reports and service requests in a browser-based dashboard. The quoting calculator prices from square footage, frequency, labor and supplies, and turns into a branded PDF proposal with open tracking.

Plans are Starter at $99 per month for up to 5 team members, Pro at $199 for up to 20, and Business at $249 for up to 50. Pricing is per plan, not per user. There is a 14-day free trial with no credit card, which is roughly the time it takes to run the account autopsy above on your full book and find out which of the four failure modes is actually yours.

Ready to see it in action?

Start your free 14-day trial. No credit card required.