What Overtime Actually Costs a Construction Contractor Once You Add Up the Year
July 9, 2026
The problem: Overtime gets approved one job at a time by whoever is running that job, so the only place it exists as a total is buried in payroll where nobody reads it as a decision.
The solution: Attach every overtime hour to the job, the crew, and the reason it was approved, then total it for the year alongside the output it produced and the rework that followed.
The math
A $12M contractor approving about 6,500 overtime hours a year is paying roughly $110k in premium alone, and once lost output and the rework that follows are counted, the real number is closer to $220k.
Overtime is never a decision anybody makes once. It is a hundred small decisions, each of them defensible. The inspection is Thursday, so the crew works Saturday. The owner moved in early, so we push. Weather took three days, so we take them back. Every one of those calls is made by a project manager under real pressure, and in isolation every one of them is right.
The number nobody sees is the sum. Because overtime is approved job by job, it is measured job by job, if it is measured at all. Nobody in a $12M contractor is looking at a line that says what overtime cost the company last year, because that line does not exist anywhere. Payroll knows the dollars but reports them mixed into total labor. The project managers know their own jobs and not each other's.
The three costs, only one of which gets counted
When people talk about what overtime costs, they mean the premium: the extra half-rate on hours past forty. That is the visible cost, and it is the smallest of the three.
The second is output. A crew in its fourth consecutive sixty-hour week is not producing what it produced in week one. Fatigue is not a moral failing and it is not fixed by supervision. The hours are paid at a premium rate and they produce less work than the same hours would have produced on a normal schedule, so you pay more per unit of work twice over.
The third is rework. Tired crews at the end of long weeks make the kind of mistakes that get caught later: a misread dimension, a missed detail, something installed before the inspection it needed. The cost lands weeks later on a punch list or a warranty call, and by then nothing connects it back to the Saturday that caused it.
Only the first of those three ever appears in a conversation about overtime, because only the first has an obvious place to live.
Why the total never gets assembled
To size overtime honestly you need three things sitting together, and in a contractor this size they sit in three separate places.
Payroll has the hours and the rates, organized by employee and pay period, because that is what payroll is for. The job cost file has budget and actuals by job. The reason each overtime hour was approved, weather, a schedule pull-in, a subcontractor no-show, a bad estimate, exists only in the memory of the project manager who approved it, or in a text message.
Without the reason, the total is just a number you cannot act on. Overtime caused by weather is unavoidable and should be priced into bids. Overtime caused by a chronically optimistic estimator is a fixable problem in the office. Overtime caused by understaffing is an argument for a hire. Those are three different decisions, and they only separate if the reason travels with the hour.
What the year-long total would let you decide
Once you can see overtime as an annual number with reasons attached, several questions get answers instead of opinions.
- Whether one more field employee costs less than the overtime you are currently paying to avoid hiring them.
- Which project managers systematically bid schedules they cannot hold, and which just draw the hard jobs.
- Whether your rework and warranty costs cluster around long-hour periods, which is the single most useful thing this data can show you.
- What overtime allowance belongs in a bid, so the jobs that will need it are priced for it up front.
A look at a construction contractor
Consider a contractor doing about $12 million a year with roughly 70 field employees at an average base rate around $34 an hour. Overtime is approved by the project manager on each job. Nobody has ever produced a company-wide overtime figure, because nobody has ever been asked for one.
Suppose the contractor tags every overtime hour with the job, the crew, and a one-word reason picked from a short list, then totals the year.
Start with the visible cost. At roughly 6,500 overtime hours across the year, which is about 93 hours per field employee, the premium alone at half of a $34 base is about $110,000. That is the number the contractor would have guessed at, and it is real.
Then add the second cost. If hours worked in weeks past fifty produce meaningfully less than normal hours, and you assume something on the order of a 15 percent decline across those 6,500 hours, that is roughly 975 hours of paid time producing nothing, at a loaded overtime rate of about $51. Call it another $50,000.
Then the third. If even a quarter of the year's rework and warranty work traces back to jobs during long-hour stretches, a contractor at this volume could easily be looking at another $60,000. That one is the hardest to pin down and the most valuable to test, because it is the only one that suggests overtime is sometimes buying you negative work.
Add them and the honest figure is somewhere around $220,000 a year, roughly double the number anybody in the business would have named. And because it now has reasons attached, it splits into parts you can act on: the share that is weather and belongs in bids, the share that is chronic understaffing on one crew and argues for a hire, and the share that traces to two project managers whose schedules never hold.
None of that turns into a policy banning overtime, which would be a bad idea in construction anyway. It turns into overtime that is priced, budgeted, and spent where it earns its premium.
How to start
You can get the first version of this from one year of payroll you already have.
- Pull the year's overtime hours. Total them by employee and by pay period. The raw premium is the easy number and it starts the conversation.
- Attach them to jobs. Push each overtime hour onto the job it was worked on, so overtime becomes a job cost rather than a payroll line.
- Tag the reason. Give project managers a short fixed list, weather, schedule pull-in, sub delay, understaffing, estimate miss, and require one word at approval.
- Let the totals build themselves. Set automation to keep a running overtime figure by job and by reason, so the annual number is available in March rather than assembled next January.
The takeaway
Overtime in a construction business is not one expensive decision, it is hundreds of cheap ones that nobody adds up. The premium is the part you see, and it is roughly half the real cost once you count the output that long weeks do not produce and the rework that follows them. Tag every overtime hour with a job and a reason, total the year, and the number stops being a fact of life and becomes a list of specific, fixable causes. Most of them turn out to live in the office, not on the job site.
Every business has a number like that hiding in it.
Text us where your team loses its time, and we’ll put a real number on yours, then show you what’s worth organizing and automating first. No forms, no sales call.