The official DOL instructions are 8 pages of legalese. This guide cuts through it and shows you exactly what goes in each field.
14-day free trial · 3 free reports · $0 setup · No credit card required
The WH-347 is the federal certified payroll form you file every week on Davis-Bacon projects. It's two pages: a payroll grid on page 1 and a Statement of Compliance on page 2. Sounds simple. It's not.
Heads up: the DOL revised the WH-347 in January 2025 (Rev. January 2025, OMB No. 1235-0008, expires 01/31/2028). The columns are relettered, the withholding exemptions column is gone, there's a new Wage Determination No. field in the header, and page 2 now has six checkbox certifications. This guide covers the revised form.
Most contractors get tripped up on the same handful of fields — fringe benefit splits, deductions, classification codes, and the exceptions box. Mess any of those up consistently and you're one DOL audit away from back wages and debarment.
Here's how to fill it out correctly the first time.
Pull these together before you open the form. You'll save yourself an hour of hunting.
The wage determination (WD) tied to your contract — by modification number, not just project name
Each worker's name, last 4 of SSN, and work classification (Carpenter, Electrician Group 1, Laborer Group 2, etc.)
Daily hours worked for the pay period ending date (Sunday through Saturday, typically)
Gross pay, deductions (FICA, federal, state, 401k, union dues, garnishments), and net pay for each worker
Your fringe method: paying cash in wages, paying into approved plans, or a mix
Project name and location as written on the prime contract
Contractor name, address, and contract number
Contractor license or EIN (some states require this)
Quick tip
If you can't find your wage determination, ask the contracting officer for the WD number attached to your contract award. Don't guess — a wrong WD makes every report wrong.
Page 1 is the weekly payroll. Each row is one worker on one classification. First fill the header: the FINAL-DBRA, PRIME, or SUBCONTRACTOR checkbox, project name, project or contract number, certified payroll number, business name and address, project location, wage determination number (new on the 2025 form), and week ending date. Then the columns. Note there is no withholding exemptions column anymore: the DOL deleted it in the January 2025 revision.
A sequential entry number for each worker row on the payroll (1, 2, 3...). If a worker appears twice because they worked two classifications, each row gets its own entry number.
The 2025 form splits the name into three fields: last name (1B), first name (1C), middle initial (1D). Use the worker's legal name as it appears on their W-4, not a nickname.
An identifying number for the worker, typically the last 4 digits of their SSN. Never put the full SSN. This column also carries the journey worker (J) or registered apprentice (RA) marker. If you mark RA, the apprenticeship program table on page 2 must be filled in.
Use the exact classification from the wage determination. 'Carpenter' isn't enough if the WD splits into Carpenter Group 1, Group 2, and Group 3. Match the WD wording exactly.
Each worker gets two rows: ST (straight time) on top and OT (overtime) on the bottom. Column 3 marks which row is which. OT is anything over 40 hours in a work week on federal Davis-Bacon (some states add 8-hour day OT rules).
Seven day/date columns for the payroll week. Enter straight-time hours in the top (ST) row and overtime hours in the bottom (OT) row for each day.
Sum of the daily hours in column 4 for that worker/classification, totaled separately for the ST and OT rows.
The hourly wage rate actually paid, shown for straight time and overtime. This is the cash wage rate. It plus your fringe credit (6B) and any cash in lieu of fringes (6C) must meet or beat the wage determination's total rate.
The hourly credit you're claiming for contributions to bona fide fringe benefit plans (health, pension, apprenticeship, etc.). If you enter anything here, you must also complete the Hourly Credit for Fringe Benefits table on page 2 listing each plan.
Fringes paid as cash on the worker's check instead of into plans. If the WD fringe is $12.40/hr and you don't have benefit plans, that $12.40 goes here as extra cash per hour.
Gross wages the worker earned on this project this week. If the worker only worked this project, 7A and 7B will match.
The worker's total gross for the week across all work, this project and everything else. Deductions and net pay key off this number.
Break out tax withholdings, FICA, and 'other' (union dues, 401k, garnishments, etc.), then total them. 'Other' deductions must be specified, and non-standard ones explained in the remarks on page 2.
Total net the worker received for the week across all work. Gross (7B) minus deductions (8). This should match the paystub you handed them.
Page 2 is where you sign the certification. Willfully falsifying it can carry criminal liability under 18 U.S.C. 1001 and civil liability under the False Claims Act (31 U.S.C. 3729). Read it. Don't just scroll and sign.
These aren't hypotheticals. Every one of these has shown up in real Wage and Hour Division cases.
Paying the wrong classification
Listing a worker as Laborer when they did 3 hours of electrical work. If they did electrical, they get electrical pay for those hours. Split the classifications.
Rounding fringe benefits down
The WD says $12.43/hr fringe. You paid $12.00 because the math was easier. That's a $0.43/hour underpayment times every hour worked. Over a year, that's tens of thousands in back wages.
Forgetting to file a 'no work' week
If you didn't work the project that week, you still have to submit something. Silence looks like you're hiding hours.
Paying fringes in cash but not grossing up the base rate
If the WD base is $30 + $15 fringe and you're paying everything in cash, the worker needs $45/hr cash on their check. A $30/hr check with no fringe payment is an underpayment.
Listing apprentices without a registered program
Apprentice rates only apply if the worker is in a bona fide Office of Apprenticeship-registered program. 'Apprentice' isn't a pay rate — it's a legal status.
Unauthorized deductions
Tool deductions, safety gear charges, uniform fees — most are illegal on Davis-Bacon unless the worker signed a voluntary authorization. Pre-printed authorization doesn't count.
Signing the Statement of Compliance without reviewing payroll
The signer is personally liable. If an owner signs every Friday without looking, they're the one answering subpoenas.
Mismatched week-ending dates
The week ending date in the header says 3/22, but the daily dates in column 4 run through 3/29. That's an automatic red flag in DOL audits.
We're biased. But here's the real tradeoff.
If you've got 1 project and 2 workers, manual is fine. If you've got 3+ projects or 5+ workers, software pays for itself in saved time the first week.
The Copeland Act regulations require you to submit certified payroll within 7 days after the regular payment date for that payroll period (29 CFR 3.4(a)), not 7 days after the week-ending date. Miss it and the GC (or awarding agency) can withhold progress payments.
Weekly. You file one WH-347 per project, per week, even if the week had zero hours worked. If no work happened, you still submit a 'no work performed' statement to the contracting agency.
The contractor, subcontractor, or an authorized officer or employee who supervises the payment of wages. The signer is personally certifying that wages were paid correctly, so pick someone who actually knows what went out the door.
No. The DOL accepts any form that contains the same required data. Software-generated reports (including the ones CertifiedPayrollPro creates) are fine as long as they match WH-347 fields and include a signed Statement of Compliance.
The January 2025 form splits these into two header fields. Project Name is the project name exactly as it appears on the prime contract. Project Location is the physical street address or county of the jobsite. If you're a sub, copy both from the GC's contract — don't make up your own version.
On the January 2025 form you show fringes right in the payroll grid: column 6B is your total fringe benefit credit for contributions to bona fide plans, and column 6C is any payment in lieu of fringe benefits (cash on the check). On page 2, certification 5 of the Statement of Compliance covers fringes, and if you put an amount in column 6B you must also complete the Hourly Credit for Fringe Benefits table listing each plan, whether it's funded or unfunded, and the hourly credit per worker.
List them twice. Each classification gets its own row with its own hours and rate. Don't average the rates — the DOL wants each classification tracked separately.
You can, but you shouldn't. Late certified payroll is one of the top triggers for a wage and hour investigation. If you're late, file immediately and include a brief written explanation. Don't backdate it.
Yes. On the January 2025 form you mark each worker in column 1E as a journey worker (J) or registered apprentice (RA), and certification 4 on page 2 includes a table where you list the apprenticeship program name, the classification, and whether it's registered with the Office of Apprenticeship (OA) or a State Apprenticeship Agency (SAA). Apprentices can be paid less than journey workers only if they're in a bona fide registered program — otherwise you owe the full journey-level rate.
CertifiedPayrollPro generates compliant WH-347 PDFs in minutes. Validates wage rates, handles the fringe math, catches mistakes before you sign.
Start Free Trial14-day free trial · 3 free reports · $0 setup · No credit card required