Calculator Prevailing wage
the fringe credit mistake that becomes back wages
If you work federally funded jobs, you can count the cost of benefits toward the wage you owe. But you have to divide that annual cost by every hour the employee worked — not just the hours on the public job. Divide by the wrong number and you underpay people, legally owe the difference, and find out at audit.
Under Davis-Bacon you owe a base hourly wage plus a fringe amount. You can meet the fringe by paying cash, by providing benefits, or both. To work out how much hourly credit a benefit plan is worth, divide the plan's annual cost by the employee's total annual hours — public and private work combined.
Dividing by Davis-Bacon hours alone inflates the credit, so the cash fringe you pay is too small, and the shortfall is back wages you owe. On this workbook's six-person sample crew that error totals $31,543.
Why the divisor has to be every hour
Here is the idea in ordinary terms. You pay $20,900 a year for someone's health plan. That plan covers them for the whole year — all 2,080 hours they work, not just the weeks they happen to be on a government job.
So the hourly value of that plan is $20,900 ÷ 2,080 = $10.05 an hour. That is the credit you can take against the fringe you owe.
Now suppose only 760 of those hours were on the public job. If you divide by 760 instead, you get $27.50 an hour of “credit”. But you did not spend $27.50 an hour on that person's benefits. You spent $10.05. The extra $17.45 is imaginary.
And the imaginary part has a real consequence: you took credit for it, so you paid $17.45 an hour less in cash fringe than you owed. Multiply by 760 hours and that is $9,653 of back wages for one employee.
There is a principle behind the rule, too. If you could divide by public hours only, the government job would be paying for benefits the worker also enjoys on private work — which is precisely the subsidy the rule exists to prevent.
The same crew, both ways
Six employees, real plan costs, real hour splits. The exposure column is what you would owe in back wages.
| Employee | Total hours | D-B hours | Plan cost / yr | Correct | If you divide by D-B hours | Back-wage exposure |
|---|---|---|---|---|---|---|
| R. Alvarez | 2,080 | 760 | $20,900 | $10.05 | $27.50 | $9,653 |
| T. Nguyen | 2,080 | 1,520 | $20,900 | $10.05 | $13.75 | $5,627 |
| K. Whitfield | 1,960 | 540 | $13,600 | $6.94 | $25.19 | $3,624 |
| M. Okafor | 2,120 | 1,840 | $12,000 | $5.66 | $6.52 | $1,585 |
| D. Brennan | 2,040 | 620 | $18,900 | $9.26 | $30.48 | $6,284 |
| S. Petrov | 1,880 | 410 | $20,900 | $11.12 | $50.98 | $4,770 |
| Total exposure | $31,543 |
Look at the pattern rather than the total. The smaller someone's Davis-Bacon share of the year, the worse the error gets. S. Petrov worked only 22% of the year on public work, and the wrong divisor inflates their credit by more than four times.
Which means the exposure is largest for exactly the employees you think about least — the ones who only occasionally touch a federal job.
The other rule people get wrong: overtime
Overtime on prevailing wage work has a rule that looks fiddly and is actually simple.
The overtime premium applies to the base rate only. The fringe is never multiplied by 1.5. You owe the fringe on every hour at its flat rate, including overtime hours, because the fringe is a benefit cost and benefits do not accrue faster in hour 41.
Get that backwards and you overpay, which is at least not a liability — but combined with an inflated fringe credit it can mask the underpayment underneath.
The workbook also handles split classifications: someone who works part of a week as an electrician and part as an apprentice, at different determined rates.
How to calculate a Davis-Bacon fringe credit
Get the wage determination for the job
Every classification you will use, with its base and fringe. This is what you are measured against, and it is contract-specific.
Record total annual hours per employee, not just public hours
Both numbers, for everyone. The total is the divisor; the Davis-Bacon figure is what the credit gets applied to. Most compliance problems begin with nobody tracking the first one.
Annualise each benefit plan
hourly fringe credit = annual plan cost / TOTAL annual hours
Total. Not Davis-Bacon hours. This single line is the reason the workbook exists.
Some defined-contribution pension plans with immediate vesting, and certain unfunded plans, are treated differently. If you think a plan qualifies for an exception, get that confirmed rather than assuming it — the general rule is annualisation and the exceptions are narrow.
Work out the cash fringe still owed
You cannot claim more credit than the fringe you owe, so each employee's credit is capped at the required rate. The remainder is cash.
Apply overtime to the base rate only
Premium on base, fringe flat. Then the Weekly Payroll and WH-347 Output tabs lay the week out in the order the form expects.
What is inside the file
Eight tabs, with a six-person crew filled in — deliberately including people whose Davis-Bacon share ranges from 22% to 87% of the year, because that spread is where the error lives.
| Tab | What it does |
|---|---|
| Start Here | What to fill in, in what order, and how to import the file into Google Sheets. |
| Wage Determination | Base and fringe rates for every classification on the contract. |
| Employees | Your crew, their classifications, and both hour totals — annual and Davis-Bacon. |
| Annualization | The calculation this workbook exists for: plan cost divided by total annual hours, with the exposure if you got it wrong. |
| Weekly Payroll | The week being reported — hours by day, classification, gross pay and deductions. |
| WH-347 Output | The same week laid out in the order the WH-347 form expects, ready to transcribe. |
| Checks | Controls that run before you certify anything. |
| How It Works | Every rule and every formula, including the overtime treatment. |
Opening it in Excel, Google Sheets or Numbers
It is one .xlsx file. There are no macros, no add-ins and nothing to install, which is what makes it portable — a macro-driven template would be Excel-only.
| App | How to open it |
|---|---|
| Microsoft Excel | Double-click the file. Excel 2016 and later, and Microsoft 365, on Windows or Mac. Nothing to enable and nothing to install. |
| Google Sheets | Go to Google Drive, click New → File upload and pick the .xlsx. Then double-click it in Drive and choose Open with → Google Sheets. To keep a native copy, use File → Save as Google Sheets. Formatting and formulas both carry over. |
| Apple Numbers (Mac, iPad, iPhone) | Numbers opens .xlsx directly — double-click it, or in Numbers use File → Open and select the file. Numbers converts it on open and will list anything it changed. To send a copy back to someone on Excel, use File → Export To → Excel. |
| LibreOffice Calc | Free, and opens the file as-is on Windows, Mac and Linux. This is what I use to recalculate every workbook when I check the maths, so it is the app these files are tested hardest in. |
Every formula in this workbook uses ordinary functions — SUM, IF, INDEX, MATCH and their relatives. Nothing here is Excel-only.
Get the workbook
$89 one-off · no subscription
- One .xlsx file, eight tabs, works in Excel, Google Sheets, Numbers and LibreOffice
- A six-person sample crew spanning a wide range of Davis-Bacon shares
- Annualisation done correctly, with the exposure of getting it wrong shown alongside
- Correct overtime treatment — premium on base, fringe flat
- Split classifications within a week
- Free lifetime updates
Instant download from Gumroad. A calculation tool, not legal advice. It computes figures you transcribe onto the form.
The arithmetic, written out
One line is the product. The rest follows from it.
hourly fringe credit = annual plan cost / TOTAL annual hours worked
credit claimed = MIN(hourly fringe credit, required fringe rate)
cash fringe owed = required fringe rate - credit claimed
overtime pay = base rate x 1.5 # fringe is NEVER x1.5
gross = (base x hours) + (premium x OT hours) + (fringe x all hours)
And the exposure calculation used in the table above:
exposure = (wrong credit - right credit, each capped at the required fringe)
x Davis-Bacon hours
The capping matters. You cannot claim more credit than the fringe you owe, so an absurd “credit” of $50.98 does not create $50.98 of exposure — it creates exposure up to the fringe rate. The workbook caps it, which is why the numbers in that table are lower than a naive subtraction would give.
How I know the numbers are right
Every figure on this page comes from the workbook's own checker, which reimplements the calculation in Python and diffs it against the recalculated file — including a separate test for negative and edge-case inputs.
The seeded crew was built to exercise the range rather than to produce a dramatic total: hour splits run from 410 Davis-Bacon hours out of 1,880 up to 1,840 out of 2,120, so you can see the error growing as the public share shrinks. That relationship is the thing worth understanding, and a tidier example would have hidden it.
Compared with the alternatives
| Cost | Annualisation | Overtime rule | WH-347 order | |
|---|---|---|---|---|
| This workbook | $89 | Total hours | Premium on base | Yes |
| A free certified payroll form | $0 | Not calculated | Up to you | Yes |
| Certified payroll software | $50–$300 / month | Correct | Correct | Yes |
| Your payroll provider | Varies | Often not | Correct | Sometimes |
Questions people ask before buying
What is annualisation?
Working out the hourly value of a benefit plan by dividing its annual cost by the employee's total annual hours — every hour they worked, public and private. It is the general rule under Davis-Bacon, and the exceptions to it are narrow.
Why can't I divide by Davis-Bacon hours only?
Because the plan covers the employee all year, not just on the public job. Dividing by public hours alone would mean the government contract is paying for benefits the worker also enjoys on private work — the exact subsidy the rule prevents. It also inflates your credit, so you underpay cash fringe and owe back wages.
How much can this cost?
It scales inversely with the Davis-Bacon share of someone's year. On the sample crew the exposure ranges from $1,585 for someone who works 87% of the year on public jobs to $9,653 for someone at 37%. Across six people it totals $31,543.
Is the fringe multiplied by 1.5 on overtime?
No. The overtime premium applies to the base rate only. The fringe is owed at its flat rate on every hour, including overtime hours.
Does it produce the WH-347 form itself?
It produces the figures in the order the WH-347 expects, ready to transcribe. It is a calculation tool, not a copy of the government form.
Can it handle someone working two classifications in a week?
Yes. Split classifications at different determined rates within the same week are supported.
Will it work in Google Sheets?
Yes. Upload the .xlsx to Google Drive and open it with Google Sheets. No macros, no add-ins.
Is this legal advice?
No. It is a calculator that applies the annualisation rule correctly. If you think one of your plans qualifies for an exception, confirm that with someone qualified rather than assuming it.
Related spreadsheets
Ready to stop doing this by hand?
$89 one-off · no subscription
- One .xlsx file, eight tabs, works in Excel, Google Sheets, Numbers and LibreOffice
- A six-person sample crew spanning a wide range of Davis-Bacon shares
- Annualisation done correctly, with the exposure of getting it wrong shown alongside
- Correct overtime treatment — premium on base, fringe flat
- Split classifications within a week
- Free lifetime updates
Instant download from Gumroad. A calculation tool, not legal advice. It computes figures you transcribe onto the form.