When timesheet hours don't match payroll or the client invoice, the cause is almost always the same: one shift has been recorded more than once, in different systems, by different people, and each copy has been changed separately. The roster says one thing, the approved timesheet another, payroll paid a third version and the invoice billed a fourth. In labour hire, mining services and cleaning or facility services, where every hour is both a cost and a charge, those small differences decide your margin. The fix is to follow one shift from roster to invoice, find every point where it's re-entered or edited, and make each later step read from the approved timesheet instead of keeping its own copy.
Follow one shift from roster to margin
Take a single shift and walk it through the business. For example, a worker is rostered for a ten-hour day shift at a client's site.
- The roster. The rostering tool shows the planned shift: start, finish, site, role. This is a plan, not a fact.
- The timesheet. The worker clocks on late because the bus to site ran late, works through a crib break, and stays on for an hour of overtime. The supervisor signs a paper sheet, or approves it in the client's own system, or texts "all good". Now there are two versions of the shift.
- Payroll. Someone keys the approved hours into payroll, or an export pushes them across. Payroll applies the award or agreement: overtime rates, a meal allowance, a shift loading, perhaps a site allowance for a mine site. The hours are turned into pay items.
- The client invoice. Billing builds the invoice from its own copy of the hours, often from the rostering tool or a spreadsheet, at the charge rates in the client's contract. If the client uses a supplier portal, the same hours get lodged there as well.
- The margin. At month end, someone tries to compare what that shift cost with what it billed. They usually can't do it shift by shift, only in total, and the total doesn't reconcile.
Every handover in that list is a chance for the shift to change. That's double data entry (the same information typed into two systems), and it is where most pay and billing disputes start.
Why the hours drift apart
The common causes are ordinary, which is why they are easy to miss:
- Billing works from the roster, payroll works from the timesheet. The client is invoiced for the planned ten hours while the worker is paid for the actual eleven, or the other way around.
- A timesheet is edited after it's exported. The supervisor corrects a start time on Tuesday, payroll has already run, and billing picks up the corrected version. Now pay and invoice disagree, and nobody can see why.
- Re-exports overwrite earlier ones. Deputy's own help article on troubleshooting its Xero connection covers timesheets clashing with ones already in payroll for the same pay period, and advises re-exporting only the affected timesheets rather than everything, because a full re-export can overwrite earlier successful exports (Deputy help).
- Rounding and break rules differ. The time-clock rounds to the nearest fifteen minutes, payroll uses the exact minutes, and the client contract bills in half hours.
- Pay items and charge items don't line up. Payroll pays overtime, a meal allowance and a site allowance as separate items. The invoice charges one blended rate, or forgets the allowance altogether.
- The client's records win. In mining services and on larger facility contracts, the client often approves hours in its own system or portal. If that approval differs from yours, your invoice is rejected or short-paid. Our post on Ariba and Coupa invoice rejections covers that side.
Bill rate vs pay rate: why every mismatch hits margin
The bill rate (or charge rate) is what you charge the client for an hour. The pay rate is what you pay the worker for that hour, before on-costs such as super, payroll tax, workers compensation and leave. Your margin on the shift is the difference, after those on-costs.
When hours drift, margin drifts with them. If you pay eleven hours and bill ten, you have paid for an hour you'll never recover. If you bill eleven and pay ten, you may have a client dispute waiting, or an underpayment you haven't noticed. Overtime makes it worse, because the pay rate jumps and the bill rate often doesn't unless the contract says so. Our guide to pay rate vs charge rate and your real labour hire margin explains how to work out the full margin calculation. This article is about making sure the hours feeding that calculation are the same hours in every system.
How it looks in labour hire, mining services and cleaning
- Labour hire. Timesheets arrive in every shape: photos, client exports, emails, app entries. Pay and bill are run by different people from different copies. See our labour hire page and why the office grows with every placement.
- Mining services. Hours sit on daily dockets and shift reports signed by the client's supervisor, then get typed into payroll, the job costing system and the client's portal. Our mining services page and the post on contractor dockets and daily reports at month end cover this.
- Cleaning and facility services. Many short shifts across many sites, with award penalties for early starts, weekends and public holidays, and contracts billed by the site, the hour or a fixed monthly fee. See our facility services page and the post on award pay errors between roster and payroll.
How to make one shift tell one story
You don't usually need to replace your rostering, payroll or accounting software. You need to agree which record is the truth, and stop the others keeping their own copy.
- Name the approved timesheet as the single record of hours. A single source of truth means one place everyone takes the number from. Payroll and billing both read from it. Neither keys hours in again.
- Lock it after approval. If a timesheet changes after approval, it goes back through approval and both pay and bill are updated, or neither is.
- Map every pay item to a charge item. Overtime, allowances, loadings and public holiday rates each need a matching line on the invoice, or a written decision that they're absorbed in the rate.
- Agree one rounding and break rule per contract and set it in the system, not in someone's head.
- Bring the client's approval in, don't retype it. Where the client approves hours in its own system, import that approval and compare it with yours before payroll runs.
- Report the differences weekly. A short exception list: shifts paid but not billed, billed but not paid, and shifts where paid hours and billed hours differ. That list is where margin leaks show up.
What it looks like when it's fixed: on Monday morning you can see last week's shifts, each with paid hours, billed hours, pay cost and charge, for every client and site, and the only items needing attention are the handful on the exception list.
Frequently asked questions
Why don't my timesheet hours match payroll?
Usually because payroll was run from a different version of the timesheet than the one now showing, because a timesheet was edited or re-exported after payroll ran, or because rounding and break rules differ between the time-clock and payroll. Compare the timesheet's approval date with the pay run date first.
Why does the client invoice show different hours from what we paid?
Billing is often built from the roster or a separate spreadsheet, not the approved timesheet. Check where your invoice hours actually come from. If the answer is "the roster", that's the mismatch.
What is the difference between bill rate and pay rate?
The pay rate is what you pay the worker per hour. The bill rate, or charge rate, is what you charge the client per hour. The difference, after super, payroll tax, workers compensation and leave, is your margin on that hour.
Can timesheet to payroll reconciliation be automated?
Yes, in most cases. Once one approved timesheet feeds both payroll and invoicing, a daily or weekly check can compare paid hours, billed hours and client-approved hours and list only the shifts that differ. A person still reviews the exceptions.
Do we need new timesheet software?
Not necessarily. Most mismatches come from the gaps between systems, not from the timesheet tool. A new tool that adds another copy of the hours can make it worse.
Where to start
If you want to see exactly where your shifts get re-entered and changed, the $5,000 Process & Systems Audit maps the path from roster to invoice and gives you a written report on what to fix first. Or book a free initial chat and walk us through one shift.