What data does your ERP hold on facilities and janitorial?

Your ERP records the facilities and janitorial PO and payment, but rarely the service level, frequency, or square footage terms an invoice should be checked.

Twitter LinkedIn WhatsApp
Ask AI: ChatGPT Claude Gemini Grok
What data does your ERP hold on facilities and janitorial?

Margin drift is the gap between what a vendor contract says and what the invoice actually charges. Facilities and janitorial spend is a common place for it to hide, because the ERP was built to record a transaction, not to hold a service contract.

Most facilities and janitorial contracts specify a cleaning frequency, a square footage rate, a supply allowance, and a set of add-on services billed separately. The ERP typically captures none of that. It captures a vendor, a PO number, a GL code, and an amount. Everything between the contract and the payment lives somewhere else, or nowhere.

Executive Summary

The ERP holds the transactional record of facilities and janitorial spend: vendor master data, purchase order lines, GL coding, and payment history. It does not hold the service contract itself. Square footage rates, cleaning frequency schedules, consumable supply allowances, and add-on pricing for strip-and-wax or window service typically live in a PDF contract, a facilities manager's spreadsheet, or a vendor portal the AP team never opens.

This split is the mechanism behind facilities margin drift. An invoice can match its PO in the ERP, pass three-way matching, and still bill a frequency the contract does not authorize or a square footage figure that has not been recalculated since a wing closed. The ERP's own controls were not built to test those conditions, because the reference data they would need is not in the ERP.

Closing the gap means treating the contract as a separate, structured dataset and checking each invoice against it directly, rather than assuming the ERP's approval workflow already did that work.

1. What facilities and janitorial data actually lives inside the ERP?

The ERP holds vendor master records, purchase order numbers and line amounts, GL account coding, PO approval history, and payment dates. For facilities and janitorial spend specifically, that usually means a monthly service line, a supply line if broken out, and whatever coding the AP team assigned at entry. It does not hold the square footage the rate was built on, the contracted cleaning frequency, or which add-on services are already included versus billed separately.

Those figures exist in the.

A purchase order for janitorial service typically carries a single monthly amount and a vendor name. The line item rarely states the square footage the price was calculated against, so when a facility adds or drops space, nothing in the ERP flags that the rate should change.

Same with frequency. A contract might specify five-day cleaning for common areas and twice-weekly for administrative offices. The ERP has no field for that distinction. It records that an invoice arrived and that it matched a PO, not whether the service described actually happened at the rate contracted.

GL coding also tends to blur categories. Facilities, janitorial, and general maintenance often land in the same cost center, which makes it hard to isolate janitorial spend for review without pulling the underlying invoices one by one.

2. Where does the contract data live if not in the ERP?

Facilities and janitorial contracts most often live as PDF attachments in a shared drive, a procurement portal separate from the ERP, or a facilities manager's own tracking sheet. The rate card, the square footage basis, the supply allowance, and the schedule of included versus billable add-ons are written into that document but almost never re-entered into the ERP as structured, checkable fields. The invoice and the contract terms it should be checked against sit in two different systems that do.

This is not unique to facilities. It is the same pattern across most indirect spend categories: the transaction system and the contract system are separate, and nothing forces them to reconcile automatically.

The practical effect is that the person approving a janitorial invoice is usually looking at the amount and the PO, not the contract. Even a diligent approver checking amount against last month's invoice will not catch a rate that was wrong from the start, because last month's invoice was wrong too.

3. What kinds of drift come from that gap?

Three recurring gaps come from the ERP not holding contract terms: billing against square footage that no longer reflects the space, billing a full cleaning frequency regardless of what was performed, and billing supply overages without flagging them as outside the base contract rate. None of these fail a three-way match, because the ERP has no field recording square footage, frequency, or the supply allowance to check against in the first place.

A. Square footage mismatch

A facility that has closed a wing, consolidated a warehouse floor, or subleased space continues to be billed against the original square footage figure, because nobody updated the rate basis in the contract or told the vendor to recalculate.

B. Frequency substitution

The contract specifies a cleaning frequency by area type. The invoice bills the full schedule regardless of what actually occurred that month, and there is no field in the ERP that records frequency to check it against.

C. Supply allowance overrun

Consumable supplies like paper products and cleaning chemicals are often bundled into a flat monthly allowance. When usage runs over, some vendors bill the overage as a separate line without flagging it as outside the base contract.

4. Does three-way matching catch any of this?

Three-way matching checks that an invoice, its purchase order, and a receipt agree on vendor, amount and quantity. For facilities and janitorial spend, the PO usually authorizes a flat monthly service fee, so an invoice at that same flat fee matches cleanly every time, whether or not the square footage, frequency, or supply terms behind that fee are still accurate. The control tests agreement between three documents.

It does not test the documents against the underlying contract.

This is a structural limit, not a process failure. Three-way matching was designed for goods with a quantity and a unit price, where a receipt confirms delivery. A monthly service fee has no equivalent receipt event, so the control collapses to checking that the invoice amount equals the PO amount.

That is why a facilities invoice can pass every automated check in the ERP and still be wrong against the contract terms it was supposed to reflect.

5. How do you check a facilities invoice against the contract directly?

Checking a facilities invoice properly means pulling the contract's rate basis (square footage, frequency schedule, supply allowance and add-on pricing) into a structured reference, then comparing each invoice line against it directly, separate from whatever the ERP's PO match already confirmed. The comparison has to happen outside the automated workflow, because the ERP was never given the contract data needed to run it automatically.

The practical version of this: extract the current square footage, cleaning frequency by area, supply allowance cap, and add-on service pricing from the signed contract or its most recent amendment. Put those figures somewhere structured, even a spreadsheet, that survives staff turnover.

Then check each invoice period against that reference, not against last month's invoice. Confirm the square footage basis is current, the billed frequency matches the schedule, supply charges stay within the allowance or are itemized as overage, and any add-on service was actually authorized.

This is manual work an ERP will not do for you, but it is the only way to catch drift that a matching rule structurally cannot see.

6. What should change in how facilities contracts are tracked?

The fix is not a bigger ERP field set. It is treating the facilities contract as living reference data that gets updated every time the space, staffing, or service schedule changes, and checking invoices against that current version rather than against historical billing patterns. Where regulatory or safety compliance terms are part of the facilities agreement, this is general information, not legal advice, and any contractual dispute should go through counsel.

A facility manager who notifies the vendor of a floor closure needs a parallel step: updating the rate reference and confirming the next invoice reflects it. That step usually has no owner today, because it falls between procurement, facilities and AP.

Assigning it explicitly, even as a quarterly reconciliation rather than a system integration, closes most of the gap. It does not require new ERP fields or a system change. It requires someone checking the contract against the invoice on a schedule, which is exactly the work a margin drift diagnostic performs across a facility's full contract set rather than one invoice at a time.

For the wider pattern this sits inside, start with the margin drift guide. See also the six categories drift hides in and accessorial charge audit: the surcharges nobody validates.

7. Frequently Asked Questions (People Also Ask)

Does the ERP store our janitorial contract terms at all?

Typically no. The ERP stores the vendor, the purchase order, the GL coding and the payment history. The contract itself, including square footage rates, frequency schedules and supply allowances, is usually a separate document in a shared drive or procurement portal, not structured ERP data.

Why does a wrong facilities invoice still pass three-way matching?

Three-way matching confirms the invoice, PO and receipt agree on amount. A monthly service fee has no receipt event and no field for square footage or frequency, so the match passes as long as the invoiced amount equals the PO amount, regardless of whether the underlying service terms are still accurate.

Who should own reconciling facilities contract changes to invoices?

In practice this falls between procurement, facilities management and AP, and often has no explicit owner. Assigning someone to update the contract reference whenever space or service scope changes, and to check the next invoice against it, closes most of the gap.

Can we add square footage or frequency as ERP fields to fix this?

You could, but most ERPs were not built with facilities-specific contract fields, and adding them requires ongoing manual updates whenever a lease or service scope changes. A structured contract reference maintained outside the ERP, checked against invoices on a schedule, is usually faster to implement.

What is the difference between a supply allowance and a supply overage?

A supply allowance is a flat monthly amount bundled into the base contract price for consumables like paper products and cleaning chemicals. A supply overage is usage above that allowance, which some vendors bill as an additional line. The invoice should flag overage charges separately from the base fee.

How often should facilities contract terms be reconciled against invoices?

A quarterly reconciliation catches most drift without requiring a system change. The key is checking the invoice against the current contract terms, not against the prior month's invoice, since a wrong rate that repeats every month will pass a month-over-month comparison indefinitely.

Does this apply to multi-site facilities contracts too?

Yes, and the gap tends to widen with more sites, since each location may have its own square footage, frequency and add-on terms under one master agreement, while the ERP typically records one PO line per site with no distinguishing contract data attached.

Is facilities and janitorial spend part of a broader indirect spend audit?

Yes. Facilities and janitorial is one of several indirect spend categories, alongside freight, contract labor, MRO and IT services, where contract terms live outside the ERP and invoices are rarely checked against them directly.

Margin Drift Resources