How to Audit Your Janitorial Contract
for Billing Errors
Based on our audit experience, most facilities overpay 10 to 20% annually. Two hours and a spreadsheet is all it takes to find out how much.
Based on our audit experience, facilities typically overpay 10 to 20% on janitorial contracts due to scope gaps, phantom services, and rate creep.
The Short Answer
To audit your janitorial contract, pull your original agreement, your last three invoices, and your actual service log. Compare them line by line against seven checkpoints: service frequency, square footage, scope of work, rate history, supply charges, overtime billing, and canceled services still appearing on the invoice. The whole process takes about two hours. Most facilities find $3,000 to $8,000 in annual overpayments they did not know existed.
Billed for Saturday service 18 months after verbal cancellation. A real example from a routine contract audit.
Most vendors never audit their own invoices. When someone finally does, the number that surfaces is rarely small.
I pulled a client's contract last year and found they were paying for Saturday service that had been canceled eighteen months earlier. $4,700 a year. Nobody checked. The client assumed the vendor updated the billing. The vendor assumed the client would flag it if there was a problem. Eighteen months went by. The money just kept going out.
That is not an unusual story. It is actually a pretty standard one. Janitorial contracts are not complicated documents, but they sit in a filing cabinet or a shared drive folder and nobody looks at them again until there is a serious problem. By then, the overpayment has been compounding for years.
This guide is the audit process I walk clients through before they sign with us. You can use it on any contract with any vendor. Pull the contract. Spend two hours. Know exactly what you are actually paying for. For a deeper look at how janitorial pricing is structured in the first place, see our commercial cleaning costs guide.
Why Do Billing Errors Happen?
Billing errors in janitorial contracts are almost never intentional fraud. They are the result of administrative drift: scopes that change verbally but never get updated in writing, auto-renewal clauses that quietly escalate rates, and invoicing systems that keep running the same line items until someone manually removes them. Most vendors are not trying to overcharge you. They are just not auditing their own billing either.
Auto-renewals with rate escalation language
Most commercial cleaning contracts include an auto-renewal clause that rolls the agreement forward annually with a 3 to 5% rate increase baked in. That language is usually in the original contract you signed and agreed to. The problem is most facility managers sign once and never re-examine the rate at renewal time. After three renewal cycles, you are paying 15% more than your original negotiated rate for the same scope of work.
Services added but never removed
Scope changes happen constantly in facility management. You add a restroom to the rotation. You cancel a periodic floor wax. You request Saturday coverage for a special event and then stop needing it. Those changes often happen via email or phone call. The vendor makes the operational change. Nobody updates the billing line items. Two years later you are still paying for the Saturday coverage and the quarterly carpet extraction that got cut during a budget freeze.
Square footage estimates versus actuals
Janitorial pricing is calculated on cleanable square footage. Estimates at contract signing are often rough. Mechanical rooms, storage areas, and structural dead space frequently get included in the quoted square footage even though they require no cleaning time. A facility quoted at 85,000 square feet may have 70,000 square feet of actual cleanable space. That 17% gap translates directly to overpayment if you are billed per square foot.
Chemical and supply markups
Some contracts include a supplies line for cleaning chemicals, paper products, and consumables. These are often marked up 20 to 40% above actual cost and are rarely itemized on the invoice. You see a monthly line that says "supplies: $380" with no breakdown. Comparing that number against market rates for the products being used is one of the fastest ways to find overpayments in an older contract.
The 7-Point Contract Audit Checklist
Do this with your original contract, your three most recent invoices, and a copy of your current service schedule in front of you. Work through each point in order.
- 1.
Verify service frequency against what is actually being invoiced
Pull the frequency schedule from your contract. Daily, three times per week, weekly, monthly. Now compare it to the invoice line items. If you are being billed for daily restroom service but the contract specifies five days a week, you are overpaying. If you were moved to three days a week during a cost-reduction conversation but the invoice still shows daily, that is your first flag.
- 2.
Confirm the square footage used for billing
Ask your vendor what square footage they are using to calculate your rate. Then pull your actual building drawings or a CAD file and measure cleanable square footage: offices, restrooms, common areas, corridors. Exclude mechanical rooms, stairwells above the ground floor (if not serviced), and any areas specifically excluded in the contract. Discrepancies of 10% or more are common.
- 3.
Compare your current invoice against the original scope of work
Read every line item on the scope of work section of your contract. Then look at your invoice. Is there anything on the invoice that is not in the contract? That is an unauthorized add-on. Is there anything in the contract that is not reflected in actual service being performed? That is scope reduction without price reduction, which is equally worth pursuing.
- 4.
Track rate history across the last three years
Pull invoices from twelve, twenty-four, and thirty-six months ago. What were you paying then? Calculate the annual percentage increase. Compare that against what your contract allows for renewal escalation. If your contract caps increases at 3% and your rate has gone up 6%, the vendor has been applying escalators beyond the contract terms. That is recoverable.
- 5.
Audit every supplies and chemical line item
Any supplies line should be itemized or at minimum tied to a consumption estimate in the contract. Ask your vendor for a breakdown of what is included in the supplies charge. Cross-reference against actual product costs from a commercial janitorial supply distributor. A 30% markup on consumables is the industry standard. Anything above 40% is worth negotiating.
- 6.
Check for overtime or off-hours premium charges
Some contracts include language allowing the vendor to bill overtime rates when service extends beyond normal shift hours. Look for any premium charge lines on your invoice. Then check whether those premiums are legitimately tied to your scope requirements or whether they are the result of poor scheduling on the vendor's side. You should not absorb overtime costs caused by understaffing or inefficient routing.
- 7.
List every service change that happened verbally in the last 24 months
Think back through every conversation where you adjusted service. Canceled a day. Added a task. Stopped a periodic service. Moved a frequency. Write them all down. For each one, confirm whether the change was reflected in the billing. This is where the Saturday service errors live. A two-year audit of verbal scope changes typically recovers more than the rate and square footage checks combined.
What We Found in Real Audits
These are not hypothetical examples. These are situations I have seen reviewing actual contracts with clients before they transitioned to Millennium.
The client verbally canceled Saturday service. Vendor acknowledged it operationally. Billing was never updated. $391 a month for 18 months before anyone caught it.
The contract quoted 220,000 sq ft. Actual cleanable square footage was 187,000 sq ft after excluding mechanical, staging, and restricted areas. The rate was per square foot.
The contract allowed overtime billing when work extended past 6 AM. The vendor was routinely understaffing shifts. The client was absorbing the overtime cost as if it were their scope problem.
The Pattern
In every case, the facility manager was not negligent. They were busy running a facility. Janitorial billing is not the most urgent item on anyone's desk. The error compounds quietly over months or years until someone finally decides to sit down with the contract. By then, the overpayment is significant enough that recovering it becomes a negotiation, not just a correction. That is why a proactive annual audit matters more than people expect.
When to Walk Away vs Renegotiate
Finding a billing error does not automatically mean you need a new vendor. Most discrepancies are administrative, not adversarial. Here is how to read the situation.
Renegotiate when...
- +The vendor responds transparently when you raise the discrepancy
- +The errors appear administrative rather than intentional
- +Quality of service has been consistent or improving
- +The vendor agrees to a credit or rate adjustment without resistance
- +This is the first audit you have done and first time you have flagged issues
Walk away when...
- xThe vendor denies errors you can document in writing
- xMultiple billing cycles show the same phantom service charges
- xQuality has been declining while billing has increased
- xRate escalations exceed what the contract permits and they push back
- xYou can not get an itemized breakdown of supplies charges after asking twice
The clearest signal is vendor transparency. A vendor who made an honest administrative error will own it quickly, issue a credit, and put a process in place to prevent it from recurring. A vendor who fights you on a documented discrepancy is telling you something important about how they run their business. Believe them.
If you are evaluating a transition, our transition process is designed to handle vendor changeovers with zero service interruption. We have done it dozens of times and the handoff is usually cleaner than clients expect. You can also see our full services overview to understand exactly what is included in our scope before you make any decision.
Related Reading
Frequently Asked Questions
Pull the original signed contract, the current invoice, and your building's square footage and service log. Compare them line by line across seven areas: service frequency, square footage, scope of work, rate history, chemical and supply charges, overtime billing, and cancellation status for any discontinued services. Most billing errors surface within the first 30 minutes of a structured comparison. Budget about two hours for the full audit.
More common than most facility managers expect. In our audits across commercial clients in the Southeast, we find meaningful billing discrepancies in most contracts that have been in place for more than 18 months without a formal review. Auto-renewal clauses, rate escalation language buried in the fine print, and services never removed after scope changes are the three most consistent culprits.
Rate creep happens when your per-visit or monthly rate increases incrementally over time, often through auto-renewal clauses that include a 3 to 5% annual escalation. Many facility managers sign a contract once and never re-examine the rate. Two or three renewal cycles later, they are paying 15 to 20% more than the original negotiated rate without any corresponding improvement in scope or quality.
Phantom services are line items on your invoice for services that were canceled or discontinued but never removed from the billing. Saturday deep cleans that stopped. Restroom restocking that was absorbed into a different line. Periodic window cleaning that was cut during a budget reduction. The original contract language stays on the invoice. You keep paying. Nobody flags it because both sides assume the other is tracking it.
Based on audits we have conducted with incoming clients, the savings range from $3,000 to $8,000 annually for mid-size commercial facilities. Larger facilities with more complex scopes can see significantly higher recovery. The most recoverable categories are discontinued services still being billed, square footage overestimates, and unapproved rate escalations applied without notice.
Renegotiate when the relationship is solid, the errors appear to be administrative rather than intentional, and the vendor responds transparently when you raise discrepancies. Walk away when you find repeated billing for services confirmed as canceled, when the vendor denies errors that are documented in writing, or when quality has been declining alongside billing increases. A vendor who cannot reconcile their own invoices is not a vendor you can trust with a long-term facility.
That is all a contract audit takes. The savings typically run for years.
We do facility audits at no cost for prospective clients. You get a line-by-line comparison of your current contract against market rates, your actual square footage, and your real scope of work. No obligation to switch. Just the numbers.