Overtime & Double-Time Math: Pricing 4×10s, Sundays, and Holidays
A 10-hour day is not ten hours of straight time. Under one common labor agreement it's eight straight-time hours and two overtime hours; under a 4×10 agreement it's ten and none; on a Saturday it may be ten hours of overtime, and on a Sunday ten hours of double time. Same crew, same ten hours — four different invoices.
The build-up decides what an OT hour bills. The schedule rules decide which hours are OT — and on a T&M job the second question moves just as much money as the first. This guide works the hours side: where the rules actually come from, how a day splits, what 4×10s change, and what Sundays and holidays do to the math — with a full crew-week priced at real rates.
In this guide:
- The rate problem and the hours problem
- "Time-and-a-half after 40" is the floor, not the rule
- The anatomy of a schedule rule set
- A week, split honestly
- 4×10s: the compressed week
- Sundays, holidays, and the days that don't split
- Weekly caps, consecutive days, and the order of the rules
- Pricing the split
- From schedule to estimate
The rate problem and the hours problem
Overtime pricing fails in two independent places. The first is the rate: an OT rate built as ST × 1.5 scales benefits and insurance that don't scale, and bills numbers you can't defend — the LRBU guide takes that shortcut apart, and this series prices everything from rates built the honest way: $88.74 straight time, $119.51 overtime, $150.27 double time, each tier from its own wage.
The second failure is the hours: perfect rates, applied to the wrong buckets. Price a shutdown week as fifty straight-time hours when the agreement splits every 10-hour day, and the error compounds daily — a split day bills $948.94 per head (8 ST × $88.74 + 2 OT × $119.51), not the $887.40 the all-ST math shows. That's $61.54 a head, every day, signed away before the crew ever works late. The rate problem gets the attention because it's visible on the rate sheet. The hours problem hides in the calendar — which is exactly why it survives.
"Time-and-a-half after 40" is the floor, not the rule
Federal wage law sets one overtime trigger: past 40 hours in a workweek, at time-and-a-half. No daily trigger, no weekend premium, no holiday premium — a Sunday is just a day, federally. If that were the whole story, overtime math would be one subtraction.
Nobody prices from the floor. The rules that actually classify your hours are layered on top of it, and they come from documents you've already signed:
- Labor agreements add daily triggers (overtime past 8 in a day is the classic), premium weekdays, full-overtime Saturdays, double-time Sundays and holidays, shift-length carve-outs, and consecutive-day rules. If you work under a union agreement, the working rules travel with the same document the wages come from — the Schedule A is the rate half, the working rules are the hours half.
- State law can add daily overtime and seventh-day rules of its own — California's daily-8 is the famous one.
- Owner specifications and site agreements add site-specific calendars: plant holidays, outage windows, prescribed shift patterns. On force-account work the owner's spec may prescribe the whole classification scheme.
The result is that "when does overtime start?" has no general answer. It has your agreement's answer — and a T&M rate sheet or estimate that assumes a different one is wrong by real dollars in one direction or the other, on every affected day.
The anatomy of a schedule rule set
Every agreement's overtime language, however it's worded, compiles down to a handful of knobs. Write them out once and any week becomes mechanical:
| Rule | What it does | In this guide's example |
|---|---|---|
| Shift length | Hours a scheduled head works per day | 10 |
| Daily ST cap | Straight-time hours a day can hold; the rest of the shift is OT | 8 |
| Split days | Weekdays that divide at the cap | Mon–Fri |
| Full-OT days | Days where every hour is overtime, first to last | Saturday |
| Full-DT days | Days where every hour is double time | Sunday |
| Holiday rule | What a worked holiday pays — or whether it can be worked at all | Unworked |
| Weekly ST cap | Straight-time hours a week can hold before the split moves (the federal 40 lives here) | — |
| Consecutive-day rule | After n worked days without a break, the day goes double time | — |
The example column is one real shape — 10-hour shifts on a daily-8 agreement, the configuration this guide prices throughout. A 4×10 agreement is the same knobs set differently (we'll get there). The point of the table isn't the values; it's that your agreement has a value for every row, and pricing means reading them out, not remembering "time-and-a-half after eight, probably."
A week, split honestly
Here is a week every industrial contractor recognizes: a six-carpenter crew on 10s, seven days, the kind of push an outage or a recovery schedule buys. Under the example agreement, every hour lands in exactly one lane:
Seven-day push — 10s, daily-8 agreement ($/head)
Read one row and the mechanics are visible. A Monday holds ten worked hours; the daily cap takes the first eight at straight time and the shift pushes the last two into overtime — $709.92 + $239.02 = $948.94 a head. Saturday never splits: all ten hours are overtime, $1,195.10. Sunday is double time to the first hour, $1,502.70. Stack the lanes for the crew and the week is 240 ST + 120 OT + 60 DT hours — $21,297.60 + $14,341.20 + $9,016.20 = $44,655.00.
Now price the same week with the two classic mistakes. All-ST math (420 hours × $88.74) bills $37,270.80 — $7,384.20 short, roughly a carpenter's whole week donated. And the crew never worked "overtime" as a line item — the money came from day classification: the same ten hours are worth $948.94 on Tuesday, $1,195.10 on Saturday, and $1,502.70 on Sunday. On T&M work, the calendar is a pricing document.
4×10s: the compressed week
The 4×10 schedule — four 10-hour days, usually Monday–Thursday — exists precisely to bend the rules above. Under the federal floor it was never overtime at all: four 10s is 40 hours. The question is the daily trigger, and agreements that allow 4×10s answer it by raising the daily cap to ten on the four scheduled days. Same four days, two different agreements:
Daily-8 agreement
$3,795.76/head·week
every 10 splits 8 + 2 — the four days hold 32 ST + 8 OT
4×10 agreement
$3,549.60/head·week
daily cap 10, Mon–Thu — all 40 hours straight time
Same four 10-hour days, $246.16 per head per week apart — $1,476.96 a week for the six-carpenter crew. Neither number is wrong. They're two different agreements, and pricing the one you're not signed to loses either the money or the bid.
Two traps ride along. First, the carve-out is a package deal: on a 4×10 agreement the fifth 10 — the Friday the schedule slips into — is typically a full-overtime day, ten hours at $119.51 ($1,195.10), not the 8-and-2 split ($948.94) a daily-8 estimator would assume. Second, the carve-out usually protects a scheduled 4×10 pattern — drop to three 9s and a Saturday and you may be back under the default rules. When a bid assumes 4×10s, say so on the rate sheet, because the assumption is worth $1,500 a week per crew.
Sundays, holidays, and the days that don't split
Weekend and holiday hours don't split at a cap — the whole day classifies at once, which makes them the most expensive hours on the calendar and the easiest to misprice.
Sundays under agreements like the example are double time from the first hour: $1,502.70 per head for a 10, against $948.94 for the same 10 on a Tuesday. Weekend recovery time is a real strategy with a real price: the same 120 crew-hours that bill $11,387.28 as two split weekdays bill $16,186.80 as a Saturday–Sunday push — $4,799.52 of premium, almost a third of the labor. Sometimes the schedule is worth it; the failure is discovering the premium on the invoice instead of the estimate.
Holidays carry a rule of their own, and it comes in three shapes: unworked (the day can't be scheduled at all), overtime, or double time. Two consequences deserve respect:
- An unworked holiday bills zero even if the calendar shows heads. Crews get penciled across a whole week and the Independence-Day Friday rides along; an honest estimating system drops those hours and warns you, because billed holiday hours on an unworked-holiday agreement are an audit finding, not revenue.
- A worked DT holiday nearly doubles the day. $1,502.70 against a split day's $948.94 — $553.76 per head. One plant holiday worked by a six-man crew is a $3,300 swing that was knowable the day the estimate was priced.
Which dates are holidays is its own reading exercise — fixed dates, "third Monday" floaters, and observance shifts when the date lands on a weekend. The estimate needs the resolved dates for its actual calendar window, not the list's names.
Weekly caps, consecutive days, and the order of the rules
Two more knobs, quieter but real. A weekly ST cap (the federal 40, sometimes lower by agreement) means a day can split early: once the week's straight-time allowance is spent, the daily cap stops mattering and everything past the line is overtime. A consecutive-day rule escalates a streak — work seven days without a break and the seventh may go double time regardless of the weekday; an unworked day resets the count.
With several rules live at once, precedence decides. Work through a day in this order and the answer falls out:
- No hours scheduled? Nothing bills. (And an unworked holiday bills nothing even with heads penciled in.)
- A holiday? The holiday rule wins — unworked, all-OT, or all-DT.
- A streak rule tripped? The whole day goes double time.
- A full-DT or full-OT day? Sunday takes all-DT, Saturday all-OT — no split.
- Otherwise, split: straight time up to the daily cap and whatever weekly allowance remains; the rest of the shift is overtime.
That's the entire algorithm. It isn't hard — it's just applied 250 times per craft on a year-long estimate, which is why it belongs in a system rather than a memory.
Pricing the split
Classification fills three buckets; pricing is three multiplications — if the rates are real. Each tier needs its own build-up from its own wage: the $119.51 OT rate here is built from the $69.42 OT wage with the flat layers held flat, not multiplied out of the ST rate. Then the buckets and the rates meet on the rate sheet, and on changed work the tickets have to split hours under the same triggers the agreement uses — an auditor who finds Saturday hours billed in the ST column reprices more than the Saturday.
The compounding is what makes the hours side worth systematizing. A $1/hour rate error moves $1 per hour; a misclassified day moves $60–$550 per head, and schedule assumptions repeat across every week of the job. The two failure modes also compound each other: an ST×1.5 rate applied to hours that shouldn't be OT at all is wrong twice, in opposite directions, and untangling it mid-job is nobody's favorite meeting.
From schedule to estimate
None of this math is hard on one day. The work is doing it honestly across a calendar — every craft, every day, holidays resolved, streaks counted, the week's ST allowance tracked — and keeping it consistent between the estimate, the rate sheet, and the tickets.
CrewMix treats the schedule rules as data, the way this guide's anatomy table reads: define the rule set once — shift length, caps, split days, full-OT/DT days, holiday behavior — and every estimate day classifies and splits itself, with unworked-holiday warnings when painted heads can't bill. Rates come from build-ups computed per tier, and the export shows the split day by day, so the backup answers the audit before it's asked.
However you run it: read the working rules out of the agreement, not out of habit — then let the calendar do what it did to this crew-week, in your favor and on paper.
Stop rebuilding this math in a spreadsheet
CrewMix builds your labor rate build-ups, prices the whole crew schedule, and exports the backup — with ST, OT, and DT each computed honestly.