- Multiply the base rate by 1.5. Do not include the fringe in that multiplication.
- Pay fringe at straight time for every hour, including overtime hours.
- Use the base rate you actually pay. If it is higher than the determination, the overtime rate rises with it.
- Federal overtime starts after 40 hours in a workweek. California also requires daily overtime after 8 hours.
- Report overtime separately on the WH-347, with its own hours and rate.
Where the overtime rule comes from
The Davis-Bacon Act sets the minimum hourly rate and fringe for each trade. The overtime requirement comes from two other laws.
The Contract Work Hours and Safety Standards Act (CWHSSA) covers federal construction contracts over $100,000 and requires time-and-a-half for hours over 40 in a workweek. The Fair Labor Standards Act has the same requirement for non-exempt employees, regardless of the contract size. In practice, if your crew goes past 40 hours, you need to calculate overtime correctly.
The formula
Every wage determination lists two numbers for each classification: a base hourly rate and a fringe benefit rate. Use this formula for each overtime hour:
DOL regulations exclude fringe payments from the "regular rate" used to calculate overtime. That exclusion also covers fringe paid in cash on the paycheck. You still owe the fringe for every overtime hour, at straight time.
A worked example
Suppose you're an electrical sub. The wage determination for Electrician on this job is $42.50 base and $18.20 fringe. You don't have a health plan or pension, so you pay the full fringe in cash. Marco works 46 hours on the job this week.
| Line | Hours | Rate | Amount |
|---|---|---|---|
| Straight time (42.50 + 18.20) | 40 | $60.70 | $2,428.00 |
| Overtime (42.50 × 1.5 + 18.20) | 6 | $81.95 | $491.70 |
| Gross for the week | 46 | $2,919.70 |
A benefit plan does not change the calculation. If your health insurance works out to a $6.00/hour credit after annualization, Marco gets $12.20 cash fringe per hour plus the $6.00 plan credit. His overtime hours are still $63.75 base plus $18.20 total fringe.
Mistake #1: multiplying the whole package by 1.5
This mistake starts when someone adds base and fringe together, calls the total "the rate," and multiplies it by 1.5 for overtime. In Marco's case, that produces $91.05 an hour instead of $81.95.
| Overpaid per OT hour | $9.10 |
| × 6 OT hours | $54.60 / week |
| × 8 workers × 30 weeks of overtime | $13,104 |
Paying more than the minimum is allowed, so this is not a violation. But thirteen grand is a truck payment for a year, and you probably did not bid the job that way. The overtime rate may also prompt questions when a reviewer compares it with the expected amount.
Mistake #2: using your shop rate for overtime
Your payroll system already knows Marco makes $32 an hour on private work, so it pays his overtime at $48 unless someone adjusts it. On this prevailing wage job, that creates an underpayment that must be paid as back wages.
Marco should have received $81.95 per overtime hour but was paid $48.00. The difference is $33.95 per hour, or $203.70 for his six overtime hours. Across a crew and several months, the back wages can reach five figures before any state penalties. California, for example, allows penalties of up to $200 per worker per day for prevailing wage underpayment.
This often happens with QuickBooks and Gusto because the software does not know which hours were worked on the public job. If you're running prevailing wage through regular payroll, read how QuickBooks handles certified payroll before your next pay run.
The catch if you pay above the base rate
Some subs shift money from fringe into base. That is allowed as long as base plus fringe still meets the total on the determination, but the higher base raises the overtime rate.
Overtime is figured on the rate you actually pay, not the minimum in the determination. If you pay Marco $45.00 base and $15.70 cash fringe (still $60.70 total), his overtime rate becomes $45.00 × 1.5 + $15.70 = $83.20 instead of $81.95. The difference is small for one hour, but it adds up over a season of long weeks. Account for it before you set someone's rate.
A few situations that get messy
Private and public hours in the same week
Federal overtime counts every hour the worker put in for you that week, including hours on private jobs. Thirty hours on the school plus 16 on a private remodel is 46 hours, so six of them are overtime. The rate for those six hours depends on when the work happened and how you set up the pay. By default, the FLSA uses a weighted average of everything the worker earned that week. An exception lets you pay overtime at the rate for the work performed during those hours, but you and the worker must agree to it in advance. If this is your situation, talk to your accountant.
Two classifications in one week
If someone worked 30 hours as an electrician and 16 as a laborer, list the classifications on separate rows of the WH-347 and check which rate applies to the overtime hours. If your records cannot show the split, you may end up owing everything at the higher rate.
California daily overtime
California requires overtime after 8 hours in a day, and state prevailing wage determinations list their own overtime rates. Someone who works four 10-hour days has 8 hours of overtime in California even though he never crossed 40 hours for the week. Check the determination for your job. The California DIR eCPR guide explains how to report those hours.
How overtime goes on the WH-347
Keep overtime hours separate from straight time. On the revised WH-347 (the only version accepted since October 1, 2026), record straight-time and overtime hours separately for each worker and show the rate for each. Gross pay should equal straight hours × straight rate plus overtime hours × overtime rate, with fringe credit and cash in lieu of fringe in their own fields. Reviewers usually flag a payroll first when those numbers do not reconcile.
Before you run payroll this week
- Pull the base and fringe for each classification straight from the wage determination in your contract.
- Multiply only the base by 1.5. Add fringe at straight time.
- Use the base you actually pay if it's higher than the determination.
- Count all hours for the week, public and private, when you figure out who's past 40.
- In California, check for daily overtime too.
- Make sure the WH-347 totals match what actually went out on the paychecks.
Have the software calculate overtime
PrevailComply separates straight time from overtime, applies 1.5× to the base, and keeps fringe at straight time. It also flags any worker paid below the determination before you sign. Sign up for PrevailComply, or download the free WH-347 checklist.
Keep the base and fringe separate
The calculation is base times 1.5, plus fringe at straight time. Problems usually start when payroll software or habits from private work treat those two amounts as a single rate. To check a week by hand, use the free certified payroll generator for the straight-time, overtime, and fringe calculations. If you've already underpaid someone, correct it now and read what happens when certified payroll goes wrong.
This guide is general information for small subcontractors, not legal advice, and reflects U.S. Department of Labor guidance reviewed in October 2026. Overtime rules can differ by state and by contract, and mixed-rate workweeks have specific FLSA rules. Confirm the wage determination and your contract requirements, and talk to a qualified professional about your specific situation.