How to write a cleaning RFP.
We read real janitorial RFPs from cities, a township and federal agencies in Canada and the U.S. Here is how long they take, what they ask for, how they score the bids, and what to watch for.
How long it takes.
One real 2024 janitorial RFP, from Intercity Transit in Washington State, drawn to scale: 115 days from release to the first night of cleaning.1
What to put in it.
The sections the RFPs we read have in common, with what each one asked for.
The buildings.
Address, square footage of each building, floors, washrooms, floor types, when crews can work, keys and security.
The scope, with standards you can check.
Each area, the work and how often. Better still, say what done looks like.
Example: Saint John, NB writes outcomes, like waste containers kept under half full.2
Staffing and hours.
Ask for the hours per night at each building, and who supervises.
Examples: Addison, TX and the National Research Council ask for the hours per night at each building;5, 8 Ann Arbor, MI asks for total cleaning hours per day.6
Quality control.
How misses get found, written down and fixed, and how you'll see it.
Example: Addison asks for the procedure that makes sure each deficiency is noted and resolved.5
Insurance and safety.
General liability and workers' compensation (WSIB in Ontario), with proof attached.
Examples: Chapple, ON asks for at least $2,000,000 in general liability;7 Ogden, UT for $3,000,000, with $1,000,000 per occurrence.3
References and transition.
References from similar buildings, and a plan for the first weeks when the new company takes over.
Example: Addison asks for five references;5 NRC scores the transition plan.8
Price.
A price for each building, per cleaning or per year, so bids line up.
Example: Ann Arbor has the price sent in a separate sealed envelope, so the plan is read first.6
How the bids get scored.
The points each RFP gave out, grouped four ways.
Price was 20 to 30 points out of 100 in these five. The rest went to how the company plans to do the work and to its track record.5, 6, 2, 7, 4
How to compare the bids.
Compare the same job.
Same areas, same frequency, same supplies. Otherwise the prices are for different work.
Check the hours.
In our bid calculator, a 20,000 sq ft office with mixed floors and 4 washrooms takes about 5.4 hours a visit at medium spec: 4.3 at a lighter value spec, 6.9 at premium. ISSA's cleaning times are the industry reference for numbers like these.10
Treat very low hours as a warning.
The U.S. GAO upheld the rejection of a custodial bid whose hours came in about 30 percent below the low end of the government's estimate.9
Compare the yearly price per square foot.
Divide each bid's yearly price by the square footage, so buildings of different sizes line up. Our cost guide shows ranges by kind of building.
Make the site walk count.
Ann Arbor disqualifies bidders who skip the pre-proposal meeting.6 A bid written without seeing the building is a guess.
Red flags.
Sources
- Intercity Transit (Washington State): RFP 2403, janitorial services and supplies, 2024
- City of Saint John, NB: janitorial services tender, 2022
- Ogden City, UT: janitorial and window cleaning RFP, 2025
- DC Department of General Services: DCAM-23-NC-RFP-0002, 2023
- Town of Addison, TX: RFP 18-205, janitorial services
- City of Ann Arbor, MI: RFP 23-28
- Township of Chapple, ON: request for proposals, cleaning
- National Research Council Canada: janitorial evaluation process, appendix G
- U.S. GAO decision B-277042: custodial bid rejected for low staffing hours
- ISSA: how to calculate cleaning times
- U.S. FAR 17.204: contract terms, services up to 5 years