A busy team and a thin margin
Your engineers are flat out, the diary is full, and yet at the year end the margin is thinner than it should be. The directors suspect some contracts are underpriced. Everybody has a theory: the care home group with sites spread across three counties, the office block where access always takes an hour, the school trust that asks for extra visits without paying for them.
Nobody can prove it, because the price is known per contract but the cost is not. Engineer hours are in timesheets or the job app. Mileage is in fuel cards. Lab costs arrive on one monthly invoice. Materials come off vans with no record of where they went. Pricing the next tender relies on instinct.
Why cost per site stays invisible
| Cost | Where it sits | Linked to a site? |
|---|---|---|
| Engineer time on site | Job app or timesheet | Sometimes |
| Travel time and mileage | Fuel cards, vehicle trackers | No |
| Lab analysis | Monthly lab invoice | Only with a sample register |
| Materials and chemicals | Van stock, supplier invoices | Rarely |
| Office time on reports and admin | Nowhere | No |
Without those links, a contract's profitability is an average across the whole business, which hides the sites that drag everything down.
What pricing blind costs you
Underpriced sites stay underpriced at every renewal, because nobody can show why the price should rise. Well-priced work subsidises poor work. Tenders are won or lost on guesses. And when a client asks for extra visits or tasks, it is hard to judge what they are really worth.
There is a quieter cost as well. Engineers are sometimes blamed for slow visits at sites where the real problem is the building: a plant room behind two locked doors, a keyholder who is never on time, outlets spread across a campus. Without site-level data, the conversation is about people rather than the site.
Job costing built from records you already produce
- Engineer time on site is taken from the visit form start and finish times, per visit.
- Travel time and distance are attributed to each visit from route data or vehicle trackers where you have them, split sensibly across the sites in a day.
- Lab charges are allocated from the reconciled lab invoice to the samples, and so to the sites.
- Materials and chemicals recorded in visit forms are costed at your purchase prices.
- An allowance for office time per visit or per report can be added at a rate you set.
- Revenue per site is taken from invoices in your accounts package, and margin is shown per visit, site, client and contract, over any period.
Cost rates, such as an engineer's hourly cost, are set by you and kept in one place. We do not guess them.
Evidence for the next price conversation
Directors can see which sites and contracts earn their keep and which do not, and why: travel, access delays, extra samples, or simply an old price. Renewals go into the conversation with evidence. New tenders are priced using real costs from similar sites.
For example, a contract that looked healthy overall may turn out to have two outlying sites where travel eats the fee, and a third where the engineer spends a long time on each visit because the plant room is hard to reach. The fix might be a price change, a travel charge, or grouping those sites with other work in the area. With the data, it is a decision rather than a hunch.
Operations benefit too. If a site's time on site creeps up, it shows before it becomes a habit.
The same view helps when a client asks for something extra, such as additional sampling or a second monthly visit during a refurbishment. You can see what similar work costs you at that site and price the change on evidence, instead of agreeing on the phone and discovering later that it was done at a loss.
Is this your blind spot?
- You know revenue per contract but not cost per site.
- Renewal prices are set by instinct or a flat increase.
- Some sites are suspected of losing money but nobody can prove it.
- Travel time between outlying sites is not charged or measured.
- Tender pricing relies on the director's experience alone.