How to Fill Out WH-347: A Column-by-Column Walkthrough
Before You Start: What You Need on Hand
Filling out WH-347 accurately requires three things gathered before you touch the form: the project's wage determination (which sets the required base rate and fringe rate for each classification on this specific contract), each worker's actual hours worked that week broken out by day, and the deductions taken from that week's pay. Filling in the form without the wage determination in front of you is the single most common source of a wrong number, since rates are set per project and per geographic area, not per company, and the same trade classification can carry a different rate on a different job.
This walkthrough uses one running example throughout: a carpenter with a $30.00/hour base rate and $6.00/hour fringe ($4.00 health and welfare, $2.00 pension), working 40 hours straight time and 4 hours overtime in the week. Every dollar figure in the sections below traces back to that one worker's week, so the math can be checked column by column against the final gross, fringe, and net wage totals.
One WH-347 form covers one worker for one week. A contractor with ten workers on a job files ten rows (or ten forms, depending on the version used) for that week, and repeats the entire process the following week - certified payroll doesn't accumulate across weeks on a single form the way a running spreadsheet total might.
Columns 1-2: Name, ID, and Withholding Exemptions
Column 1 identifies the worker: full name, and either the last four digits of a Social Security number or another employer-assigned identifier, depending on which version of the form and which agency's privacy guidance applies. The identifier has to stay consistent for that worker across every week of the project so an auditor can trace one worker's record end to end without cross-referencing multiple ID formats.
Some versions of the form include a column for the number of withholding exemptions claimed. Where it appears, it's informational for the agency's records and doesn't feed into the gross or net wage math on the rest of the row - it's easy to skip this column entirely by mistake since it has no bearing on the wage calculation, but an agency reviewing the form for completeness will still flag it if left blank on a version that requires it.
Column 3: Work Classification
This is the trade classification exactly as it appears on the project's wage determination - carpenter, laborer, electrician, and so on. This is also where the most costly errors happen: a worker paid at the wrong classification's rate has been underpaid relative to the correct prevailing wage even if every other column is filled in correctly. For our example, the classification is Carpenter.
Workers who split time across more than one classification in the same week - a carpenter who also performs laborer-level work on certain days, for instance - generally need their hours broken out and paid at each applicable classification's rate for the hours actually performed in that role, rather than being paid a single blended rate for the whole week. Getting this split wrong is a common source of underpayment on multi-trade crews.
Columns 4-5: Day-by-Day Hours and Weekly Totals
Column 4 lays out each day of the work week with straight-time and overtime hours entered separately for each day, then totaled for the week. In our example, the worker's weekly total comes to 40 hours of straight time and 4 hours of overtime - the specific daily split matters less than making sure the straight-time/overtime totals for the week are correct, since gross wages are calculated from those weekly totals rather than from any single day in isolation.
Column 5 is the sum of straight-time and overtime hours for the week: 40 + 4 = 44 total hours. This total is also what the fringe benefit calculation is based on, since fringe is owed for every hour worked, straight time and overtime alike, not just straight-time hours - a detail that trips up hand calculations that only apply the fringe rate to the 40 straight-time hours and forget the 4 overtime hours.
Columns 6A/6B: Rate of Pay, Including Fringe Benefits
Column 6A is the base cash hourly rate: $30.00/hour in our example. Column 6B is where the fringe benefit rate and how it's satisfied gets recorded - $6.00/hour, split $4.00 to a health and welfare plan and $2.00 to a pension plan. This is the column most often left incomplete, because a contractor can enter a correct base rate in 6A and simply forget that 6B still needs the fringe rate and its funding method documented, even though the total prevailing wage obligation is base plus fringe combined.
Overtime pay is calculated on the base rate in 6A (1.5 x $30.00 = $45.00/hour for overtime hours), not on the combined base-plus-fringe rate - this follows from the Contract Work Hours and Safety Standards Act's overtime requirement for hours over 40 in a week on covered contracts. Applying the 1.5x multiplier to the base-plus-fringe rate instead of the base rate alone is a recurring calculation error that inflates the overtime figure beyond what's actually required.
Column 7: Gross Amount Earned
Gross wages for the week: 40 hours x $30.00 = $1,200.00 straight-time, plus 4 hours x $45.00 ($30.00 x 1.5) = $180.00 overtime, for a total gross of $1,380.00. The fringe amount ($6.00/hour x 44 hours = $264.00) is not added into this gross figure when fringe is paid into bona fide plans rather than as cash - it's tracked separately, which is why gross wages here equal $1,380.00, not $1,644.00.
This is the number most often miscalculated when someone tries to reconcile a certified payroll report against a worker's actual take-home pay by simply adding the base rate and fringe rate together and multiplying by total hours - that shortcut only works when fringe is paid entirely in cash, which is not the case in this guide's example or in most plan-based fringe arrangements.
Columns 8-9: Deductions and Net Wages
Column 8 itemizes deductions rather than lumping them into a single number - federal tax withholding, FICA, state tax, and any other authorized deduction, each listed separately. In our example, total deductions come to $310.00. Lumping deductions into one unexplained figure is a common formatting error that can trigger a request for backup documentation from the reviewing agency.
Column 9 is net wages: gross wages of $1,380.00 minus total deductions of $310.00 equals net wages of $1,070.00. This is the amount actually paid to the worker - the fringe benefit amount of $264.00 never enters this number, since it went to the health and welfare and pension plans, not to the worker as take-home pay. A net wage figure that doesn't equal gross minus itemized deductions, to the cent, is one of the fastest ways to trigger a follow-up question from a reviewing agency.
Page 2: The Statement of Compliance
The second page of WH-347 is a separate signed certification for that specific week, not a one-time signature for the whole project. Box 4 is where the contractor discloses how fringe benefits were paid: box 4(a) if fringe benefits were paid, or irrevocably contributed, to bona fide plans, funds, or programs (the health and welfare and pension plan arrangement used throughout this example); box 4(b) if fringe benefits were paid in cash directly to the workers instead of, or on top of, being paid into plans.
The statement also certifies that the payroll is correct and complete, that each worker was paid no less than the applicable wage determination, and that deductions were only those permitted by law or authorized in writing by the worker. Signing it knowingly false is a federal crime under 18 U.S.C. Section 1001 - it is treated as a sworn statement, not paperwork, and it is signed fresh for every single week of the project rather than once at project close-out.
Tools That Help
A free WH-347-style Excel template for up to five workers is available at tabletemplates.com/free/wh-347-form-excel-download/ if you just need the layout. LeaveSheet's Certified Payroll add-on ($19/month or $190/year per organization, 14-day trial) takes weekly straight-time and overtime entries per worker, reconciles the 6B fringe math automatically against each worker's assigned plans, and exports a WH-347-style PDF with Statement of Compliance plus an Excel copy - it doesn't process payroll or taxes, and it isn't an official DOL or state e-filing system.
Frequently asked questions
What information goes in column 1 of WH-347?
The worker's name and an individual identifier, such as the last four digits of a Social Security number or another consistent employer-assigned ID used across every week of the project.
How is overtime calculated on WH-347?
At 1.5 times the base hourly rate (column 6A), not the combined base-plus-fringe rate, for hours over 40 in a week - $45.00/hour on a $30.00 base rate in this guide's example.
Does the fringe benefit amount get added to gross wages on WH-347?
No, when fringe is paid into bona fide plans. It's tracked separately in column 6B and reconciled apart from the gross and net wage columns - in this guide's example, $264.00 in fringe never enters the $1,380.00 gross wages figure.
What is the difference between box 4(a) and 4(b) on the Statement of Compliance?
Box 4(a) certifies fringe benefits were paid or irrevocably contributed to bona fide plans, funds, or programs. Box 4(b) certifies fringe benefits were paid in cash directly to the workers instead.
Is the Statement of Compliance signed once per project?
No, it's signed for each week's certified payroll individually - it's a sworn statement about that specific week's report, not a one-time certification for the whole job.
What's the net wage figure in a worked WH-347 example with $30/hour base pay?
For 40 straight-time and 4 overtime hours at $30.00/hour with $6.00/hour fringe: gross wages are $1,380.00, deductions are $310.00, and net wages paid to the worker are $1,070.00.
This guide is general information, not legal advice. WH-347-style tools reproduce the layout for convenience and are not official DOL filing tools.
Sources: www.dol.gov · beta.dol.gov · www.dol.gov · www.adp.com · quickbooks.intuit.com