How do you price a commercial cleaning contract?
Build the bid from production rates, not from a price per square foot. Walk the building, split it into areas with different cleaning speeds, estimate the cleanable square feet each worker covers per hour in each area, and total the hours for one visit. Multiply the hours by your fully loaded labor cost, add supplies, equipment, and travel, then apply your margin. Convert the result into a monthly price using the real visit count for that month. The per square foot number is an output you check afterward, never the input you start from.
Commercial cleaning is one of the few trades where a bad bid does not hurt right away. You win the account, the first month feels fine, and eleven months later you are still cleaning a building at a price you set from a number someone quoted in a forum. Contracts lock in the mistake, which is exactly why the bid deserves an hour of arithmetic.
Start with cleanable square feet, not gross square feet
Gross area includes walls, elevator shafts, stairwells you do not service, and space nobody cleans. Cleanable area is what your crew actually touches. Bidding against gross area inflates the building and makes your per foot rate look competitive while your hours quietly run over.
Split the cleanable area into zones that clean at different speeds. Open office carpet, private offices, corridors, restrooms, break rooms, lobbies, and hard floor all move at genuinely different rates, and restrooms are the zone that decides whether the account is pleasant or painful.
Use production rates to turn area into hours
A production rate is how many cleanable square feet one person covers in an hour at a defined scope. Industry tables exist and are a reasonable starting point, but the rate that matters is the one your own crews hit in a building like this one. Time two visits and your table beats anyone else's.
- Open areas with light traffic clean fastest and set the ceiling for your rate
- Private offices slow down with door handling, trash cans, and desks
- Restrooms are fixture-driven, so count fixtures instead of measuring area
- Break rooms and kitchens carry the surprises: dishes, spills, and appliance grime
- Hard floor care, stripping, waxing, and carpet extraction are separate line items, never folded into the nightly rate
Add fixed time that no rate table captures: entry and alarm, gathering and staging equipment, walking between floors, trash haul to the dumpster, and lockup. On a small building that overhead can be a quarter of the visit.
Cost the hour properly before you multiply
The wage is the smallest part of the number. A fully loaded hour includes payroll taxes, workers compensation at the janitorial rate, general liability, uniforms, training time, supervision, and the paid time that turnover costs you. Cleaning companies that bid against the raw wage usually discover the gap in the first quarter, after the account is signed.
- Wage plus payroll burden, including taxes and comp at your real rate
- Supervision and quality inspections, prorated across the accounts they cover
- Consumables you supply: liners, paper, soap, chemicals, and pads
- Equipment cost per hour, including vacuum replacement and floor machine maintenance
- Travel between accounts, which is real cost even when nobody bills it
- General and administrative overhead, allocated across billable hours rather than ignored
Convert the visit into a monthly price the right way
Multiply the loaded hourly cost by the hours per visit, add supplies and equipment, apply your margin, and then multiply by the actual number of service days in each month. Averaging four weeks per month understates the year by roughly a month of service, and five-week months are where thin bids stop covering payroll.
Present the monthly figure with the scope attached: what is included nightly, what is weekly, what is monthly, what is quarterly, and what is quoted separately. Every profitable janitorial account has that list written down. Every unprofitable one relies on someone remembering.
The walkthrough questions that change the price
- How many people work in the building, and how many use the restrooms daily?
- Are consumables supplied by you or by the client, and who restocks them?
- What is the service window, and can the crew work while staff are present?
- Is there a freight elevator, a janitorial closet, and a water source on each floor?
- Who handles trash haul, and how far is the dumpster from the dock?
- What is the floor type inventory, and when was the hard floor last stripped?
- Are background checks, badging, or union labor required?
- What are the payment terms, and who signs off on extra work?
"The building we lost money on was the one we bid from the plan set without walking. Everything else we walked, and everything else made money."
Protect the margin after the contract starts
A janitorial contract erodes quietly. Scope creeps one request at a time, the client adds a floor, headcount grows, and the hours drift while the invoice stays flat. The accounts that stay profitable are the ones where actual clocked hours per visit are compared against the bid every month, and where an escalation clause tied to wage increases is written into the agreement from the start.
- Track clocked hours per visit against the bid hours for that building
- Log added requests as change orders, even when you decide to absorb them
- Review supply consumption quarterly, because paper and liners drift with headcount
- Include an annual escalation clause tied to wage cost, not to a vague index
- Re-walk the building once a year and re-time the zones that changed
Bid from your own production rates, cost the hour honestly, count the real service days, and then measure what actually happened. That is the whole discipline, and it is the difference between an account you keep for five years and one you are relieved to lose.
Common questions
- How much should I charge per square foot for commercial cleaning?
- Treat per square foot as a check, not a starting point. Build the bid from production rates and loaded labor cost, then divide the resulting price by cleanable square feet to see where you landed. If that output is far from what similar buildings in your market carry, look for a wrong production rate or a missed zone rather than adjusting the price to match.
- What is a production rate in janitorial bidding?
- It is the cleanable square footage one worker covers in an hour at a defined scope. Different zones have different rates, so a building is bid zone by zone and totaled. Published tables are a starting point, but rates timed from your own crews in similar buildings are far more accurate.
- Should the price include supplies?
- Decide explicitly and write it down. Supplying consumables such as liners, paper, and soap is a real monthly cost that moves with the building's headcount, so if you supply them, either price a supply allowance with a stated cap or bill them separately at cost plus a handling margin.
- How do I handle a five-week month?
- Bill by the actual service days each month or set a flat monthly price calculated from the annual number of visits divided by twelve. Averaging four weeks per month is the most common bidding error in janitorial work and it costs roughly a month of service every year.
- How often should I re-price a cleaning contract?
- Review annually and include an escalation clause tied to wage cost when you sign. Also re-price whenever the scope changes materially, such as added floors, higher occupancy, or a new floor type, and treat those as change orders rather than absorbing them silently.