Most commercial cleaning bids are lost, or worse, won, on arithmetic done in a car park after the walkthrough. Somebody multiplies the square footage by a “going rate” they heard at a trade show, rounds it to something that feels competitive, and sends it. If the number is too high, the contract goes elsewhere. If it is too low, they get the job and spend the next three years cleaning the building at a loss.

There is a better way, and it is not complicated. Every reliable janitorial bid is built the same way: measure the work, convert it to hours, cost the hours, then price the cost. This guide walks through each step with a worked example you can check against your own numbers.

Step 1: Get what you need from the walkthrough

You cannot price what you did not see. A walkthrough is not a courtesy visit; it is data collection. Bring a measuring wheel or a laser measure, the floor plan if the client has one, and a list. At a minimum you want:

  • Square footage by area type. Not one number for the whole building. Offices, restrooms, break rooms, lobbies, corridors, stairwells and storage all clean at very different speeds, so record them separately.
  • Floor types. Carpet, vinyl composition tile, sealed concrete, stone, wood. Floor type drives both the daily time and the periodic work (stripping, refinishing, extraction).
  • Fixture counts in restrooms. Toilets, urinals, sinks and dispensers. Restrooms are often better estimated per fixture than per square foot.
  • Headcount and traffic. A 10,000 sq ft office with 40 people and one with 120 people are different jobs, especially in the restrooms and kitchen.
  • Access window. When can your crew be in the building? Four hours of work in a two-hour window means two cleaners, not one.
  • Frequencies the client expects. Nightly, three times a week, weekly. Ask about each area, because “five nights a week” rarely applies to every room.
  • Periodic work. Carpet extraction, floor refinishing, interior windows, high dusting. Ask how often, and whether it is in the contract or billed as extra.
  • Consumables. Who supplies paper towel, toilet tissue, hand soap and can liners? This alone can swing a bid by hundreds of dollars a month.
  • Security and compliance requirements. Keys, alarm codes, background checks, site inductions, union labour, specific chemicals or green-cleaning certification.

Write all of it into a scope of work before you price anything. If the client gave you one, check it against what you saw. If they did not, write one. We have a separate guide on what a commercial cleaning scope of work should include.

Step 2: Convert square feet into labour hours

This is the step most bids skip, and it is the one that matters most. The method is called workloading, and it rests on one formula:

Hours per visit = square feet ÷ production rate (square feet per hour)

A production rate is how many square feet one cleaner can service in an hour for a given type of space and level of cleaning. A general office might be 3,000 to 4,000 sq ft per hour. A restroom is closer to 1,000. We go into where those numbers come from, and how to measure your own, in janitorial production rates explained.

Here is a worked example for a 12,000 sq ft office cleaned five nights a week:

AreaSq ftRate (sq ft/hr)Hours per visit
Offices and workstations9,0003,5002.57
Restrooms6001,0000.60
Lobby and corridors, hard floor2,4004,0000.60
Total12,0003.77

At five visits a week that is about 18.9 hours a week. A month averages 52 ÷ 12, or about 4.33 weeks, so routine cleaning comes to roughly 81.7 hours a month.

Then add periodic work, spread across the year:

  • Carpet extraction on 6,000 sq ft, twice a year, at 800 sq ft per hour: 15 hours a year.
  • Strip and refinish 2,400 sq ft of hard floor once a year at 300 sq ft per hour: 8 hours a year.

That is 23 hours a year, or about 1.9 hours a month. Total: about 83.6 labour hours a month.

Notice how much the periodic work matters in a different building. A school or a clinic with large areas of resilient flooring can carry dozens of hours of floor care a year that a quick per-square-foot estimate never sees.

Step 3: Cost the labour properly

Labour is usually the largest cost in a janitorial contract by a wide margin, so this is where precision pays off.

Start with the hourly wage you will actually pay on this account, not your company average. Then add labour burden: employer payroll taxes, workers’ compensation, paid leave, and any benefits or union contributions. Burden varies a lot by jurisdiction and by how you employ people; plenty of contractors land somewhere between 15 and 30 percent of wages, but you should calculate your own from last year’s payroll rather than borrow a figure.

In our example, at $18.00 an hour with 25 percent burden, a labour hour costs $22.50.

83.6 hours × $22.50 = $1,881 a month in labour.

Two things that often get forgotten here:

  • Supervision. If a supervisor spends two hours a week visiting this site, inspecting and dealing with the client, those hours belong in this bid.
  • Travel between sites. If one cleaner covers three small buildings in a night, the drive time is paid time.

Step 4: Add supplies, overhead and margin

Supplies and equipment. Chemicals, pads, mop heads, liners if you supply them, and wear on vacuums and machines. Many contractors estimate this as a percentage of labour; 3 to 7 percent is a common starting point when the client supplies paper and soap. If you supply consumables, cost them separately from usage, because they scale with headcount, not with labour hours. In our example, 5 percent of labour is about $94.

Overhead. Insurance, office staff, software, vehicles, uniforms, training, the cost of bidding work you do not win. Divide last year’s overhead by last year’s direct costs to get your own percentage. At 10 percent, our example adds about $198.

That brings the cost of doing the work to about $2,173 a month.

Margin. Decide the profit you need, and apply it as a margin on the price, not a markup on the cost. They are not the same thing:

  • A 15 percent markup: $2,173 × 1.15 = $2,499.
  • A 15 percent margin: $2,173 ÷ 0.85 = $2,557.

That $58 a month gap is $2,088 over a three-year contract, from one misunderstanding. Our example bid comes out at roughly $2,560 a month.

If you want to skip the arithmetic, our free janitorial workload and bid calculator runs this exact method: areas, square feet, production rates, frequencies, periodic work, wage, burden, supplies, overhead and margin, through to hours and a monthly price.

Step 5: Sanity-check the number

Before you send it, look at the bid from two other angles.

  • Price per square foot per month. $2,560 ÷ 12,000 sq ft is about $0.21. Compare it with what you know about your market for similar buildings and frequencies. If you are wildly off, check your production rates and frequencies before you touch the margin.
  • Effective billed rate per hour. $2,560 ÷ 83.6 hours is about $30.60 an hour. Is that a rate you would be comfortable defending if the client did the same division?

If the number is above what the client is used to paying, resist the urge to cut the margin first. Look at the scope instead. Can the break room go to three nights instead of five? Can the corridors be vacuumed twice a week? A bid that reduces the work honestly is better than one that promises the same work for less money and then quietly skips it.

Step 6: Write a proposal that answers the real question

Price gets you onto the shortlist. What gets you chosen, particularly on larger commercial and public-sector bids, is confidence that the work will actually get done. A strong proposal covers:

  • The scope, in a table. Areas, tasks and frequencies, so the client can see exactly what they are buying.
  • Staffing. How many cleaners, which hours, who supervises, how you cover absences.
  • Quality control. How often you inspect, how you score, what happens when something fails. Many tenders ask you to describe your quality control and inspection practices in so many words. Our guide to the janitorial inspection checklist covers what a credible answer looks like.
  • Proof of service. How the client will know the cleaning happened. Timestamped records tied to each area are a far stronger answer than a promise.
  • Communication. Who the client calls, and how quickly you respond to a complaint or an urgent request.
  • Commercial terms. Contract length, how the price adjusts if minimum wage rises, how extra work is priced, and insurance and bonding.

Common mistakes in janitorial bids

  • Pricing from a per-square-foot “going rate”. It ignores frequency, floor type, traffic and access, which is everything that makes one building different from another.
  • Forgetting the first clean. A building that has been poorly maintained may need a deep clean before routine cleaning can hold the standard. Price it as a separate start-up line.
  • Ignoring wage changes. If minimum wage is scheduled to rise during the term, either price it in or include an escalation clause.
  • Leaving consumables vague. “Supplies included” can mean chemicals only, or every roll of paper in the building. Spell it out.
  • Underestimating restrooms. They take longer per square foot than any other space, and they are where complaints start.

The short version

Measure each area, convert square feet to hours with realistic production rates, cost those hours with real burden, add supplies, overhead and a true margin, then check the result against the market. Write a proposal that shows the client how the work will be done and how they will know it was done.

Do that consistently and your bids stop being guesses. You will lose some work to contractors who have not done the arithmetic, and that is fine. Those are usually the contracts you would not have wanted at that price.