How to fill out Form WH-347, step by step

Form WH-347 has a header block, nine numbered worker columns, and a two-page Statement of Compliance. This walkthrough matches the form currently published by the U.S. Department of Labor, revised January 2025 under OMB control number 1235-0008, expiring 01/31/2028, where you can also get the PDF or the online fillable version.

Form WH-347 is the federal certified payroll report for Davis-Bacon work: construction paid for or assisted with federal money. Using this exact form is optional, but the underlying weekly wage statement and signed certification are not. Under the Copeland Act, 40 U.S.C. section 3145, and DOL's rule at 29 CFR 5.5(a)(3)(ii), covered contractors must furnish a weekly certified payroll, on the WH-347 or an equivalent document. Almost everyone uses the WH-347 itself. On state and local public works, though, the WH-347 covers only the federal side; California's separate eCPR filing goes directly to DIR, and a clean WH-347 does nothing for that duty. See WH-347 vs eCPR and California certified payroll for which projects owe which filing.

The order to fill it out

  1. Check contractor or subcontractor, and "final" only on the last payroll.
  2. Fill in the project, contract number, wage determination number, week ending date, payroll number, business name, and address.
  3. List each worker: name, identifying number, journeyworker (J) or registered apprentice (RA).
  4. Enter the labor classification each worker actually performed.
  5. Record straight time and overtime hours by day, then total hours.
  6. Enter the hourly wage rate, fringe credit claimed, and any amount paid in lieu of fringe benefits.
  7. Calculate gross earned on this project, and gross for all work if the worker had another job that week.
  8. Itemize deductions, specify "other," total, and calculate net pay.
  9. On page two, complete the Statement of Compliance, the apprenticeship table, and the fringe credit table if step 6 used one.
  10. Have the payer or supervisor sign, date, and add a phone and email.
  11. File weekly. On California public works, file the separate eCPR to DIR too.

Field by field: the header and the worker columns, 1A through 9

Every column is numbered, which is what a reviewer, and any software checking your file, keys off.

  • Header. Project name, contract number, wage determination number, payroll number (sequential from 1), week ending date, business name, and address.
  • 1A to 1D: entry number, last name, first name, middle initial. Name is split into three fields.
  • 1E: identifying number. Commonly the last four Social Security digits, never the full number, per 29 CFR 5.5(a)(3)(ii)(B); California's eCPR XML carries all nine, and mixing the two formats is a common cross-contamination error.
  • Column 2: (J) journeyworker or (RA) registered apprentice. New on the current form; RA triggers the apprenticeship table on page two.
  • Column 3: labor classification. The craft under the wage determination, not a job title. A worker split across crafts gets a row for each.
  • Column 4: days and hours worked. ST and OT rows per worker.
  • Column 5: total hours. Must reconcile with column 4.
  • Column 6A: hourly wage rate. See the fringe section below for 6B and 6C.
  • Columns 7A, 7B: gross earned. 7A is this project; 7B is all work that week, when a worker held another job too.
  • Column 8: deductions. Its own section below.
  • Column 9: net pay. What the worker received, across every job.

One field the current form dropped: a box for withholding exemptions. California's eCPR XML schema still carries one, in the numWithholdingExemp field of DIR's sample eCPR XML; more on that mismatch in DIR eCPR XML upload errors.

Fringe benefits: columns 6A, 6B, 6C, and the hourly credit table

The current form splits what used to be one rate column into three. 6A is the straight hourly wage, before any fringe credit. 6B is the hourly fringe benefit credit claimed, from contributions to a bona fide plan, fund, or program, or the reasonably anticipated cost of one. 6C is any fringe amount paid directly to the worker in cash instead.

Any amount in 6B has to be backed up on page two by an "Hourly Credit for Fringe Benefits" table: plan name, type, and number for up to six plans per worker, funded or unfunded status, the hourly credit under each, and a total matching 6B. This table is new; the prior version certified fringe treatment with checkboxes instead.

Deductions: column 8, and where "box 4" comes from

Deductions are column 8, "Deductions for All Work": tax withholdings, FICA, an "other" line that must be specified rather than a lump sum, and a total. Column (4) on page one is Days and Hours Worked, not deductions. Page two has its own numbered box 4, but DOL's instructions on the same WH-347 page assign it to the apprenticeship certification, not deductions: "If any worker is being paid as an apprentice during the period, box 4 must be checked." No numbered field on the current government form is for deductions; a "Box 4" label for deductions seen on other sites comes from a third-party template with its own, different numbering. The Statement of Compliance closes the loop, certifying that no deductions were made "other than permissible deductions as defined in 29 CFR part 3." An unspecified "other" deduction is a common trigger for a records request later.

The Statement of Compliance: page two

Page two is the signed declaration, and the point of the form. The certifying official checks a series of statements, not a lettered list of exceptions: the payroll is correct and complete at rates not below the wage determination; records are complete and available on request; classifications match work actually performed; any apprentices are registered with the Office of Apprenticeship or a State Apprenticeship Agency, named and listed; fringe benefits were paid in cash, to bona fide plans, or both, with the hourly credit table completed where 6B is used; and no deductions were made beyond what 29 CFR part 3 permits.

If you have seen guidance describing boxes 4(a), 4(b), and 4(c), with an "exceptions" line in 4(c), that describes the WH-347 before its current revision, where leaving 4(c) blank meant no exception to how fringe benefits were paid. DOL's current version replaced that structure with the certifications above, the hourly credit table, and a free-text "Additional Remarks" field. "No exceptions" does not appear on the current form.

The certifying official signs, dates, and now also lists a phone and email, which the prior version did not require. The printed warning: willful falsification may subject the contractor or subcontractor to civil or criminal prosecution under 18 U.S.C. section 1001 and 31 U.S.C. section 3729, plus debarment from future federal contracts. The signer should be the person who actually pays or supervises payment. This is why our service never signs for you: we prepare and stage everything, and the signature stays with you.

The mistakes that actually get filings kicked back

  1. Arithmetic that does not reconcile between daily hours, column 5, gross, and net.
  2. A classification off the wage determination, or a 6A rate below it.
  3. A full Social Security number in 1E, or none at all.
  4. A 6B fringe credit with no matching entry in the hourly credit table.
  5. An RA worker in column 2 with no apprenticeship entry on page two.
  6. An unspecified "other" deduction in column 8.
  7. A missing or unsigned Statement of Compliance, which makes it a spreadsheet, not a certified payroll.
  8. A skipped week with no payroll filed to account for it.

A free fillable PDF, or a free generator

DOL's own WH-347 page carries a static PDF and an online fillable version matching the current form, at no cost. That is the free option worth trusting, since it is the source the form comes from. Other "free WH-347 generator" sites vary; some copy an older layout, which is how outdated column numbers and the old 4(a)/4(b)/4(c) language keep circulating. Even one with the right layout has no idea what California's eCPR schema wants, and hand-copying figures into that XML format is exactly where the errors in our eCPR XML upload errors guide come from.

Doing this every week, without doing it yourself

A WH-347 for a working crew is not hard once. It is hard every week, forever, alongside California's eCPR, described in how to submit certified payroll to DIR. Our service takes the payroll export you already run from QuickBooks, ADP, Paychex, Gusto, or Sage and produces both filings, checked by software and verified by a person, with the Statement of Compliance staged for your signature. The first weekly filing is free.

Questions

How do I fill out Form WH-347 step by step?
Fill in the project and payroll header, list each worker with an identifying number and classification, record daily hours, enter the wage rate and any fringe credit, calculate gross and net after deductions, then complete page two and sign. See the order above, or get the current form from the U.S. Department of Labor.
What goes in the fringe benefits columns on the WH-347?
6A is the straight hourly wage. 6B is the fringe benefit credit claimed. 6C is any fringe amount paid directly to the worker in cash. An amount in 6B must be backed up on page two by the hourly credit table: plan name, type, plan number, funded status, and credit per worker.
What does "no exceptions" mean on the certified payroll statement of compliance?
That phrase describes the WH-347 before its January 2025 revision, where fringe treatment used boxes 4(a), 4(b), and 4(c), and leaving 4(c) blank meant no exception to report. The current form replaced that with plain certifications and a fringe credit table. "No exceptions" does not appear on it.
Where do deductions go on the WH-347, and is there a "box 4"?
Deductions are column 8: tax withholdings, FICA, a specified "other" line, and a total. Column (4) on page one of the current government form is Days and Hours Worked, not deductions. Page two has its own box 4, but DOL's instructions assign that one to the apprenticeship certification. No numbered field on the current form is for deductions; a "Box 4" label for deductions seen on other sites comes from a third-party template with its own numbering.
Is there a free WH-347 fillable PDF or generator?
Yes. DOL publishes a static PDF and its own online fillable version at no cost. Third-party generator sites vary, and several still reflect the form's older layout.
Who has to sign the WH-347?
The person who pays or supervises payment of the workers listed, giving name, title, signature, date, phone, and email on page two. A payroll service can prepare the form, but the certification, and the exposure with it, belongs to the contractor.
What happens if the WH-347 is falsified?
Willful falsification may subject the contractor or subcontractor to civil or criminal prosecution under 18 U.S.C. section 1001 and 31 U.S.C. section 3729, plus debarment from future federal contracts.
Is Form WH-347 itself required, or just the underlying record?
Using the form is optional. The Copeland Act and 29 CFR 5.5(a)(3)(ii) require a weekly wage statement with a signed Statement of Compliance, on the WH-347 or another document with identical wording. Almost everyone uses the WH-347 itself.

We fill the WH-347 for you, first one free

Send the payroll export you already run. We turn it into the WH-347 and the DIR eCPR filing, checked by software and verified by a person. Your first weekly filing is free, before you pay us anything. $995 one time setup, then $249 per month flat.

Got it. We reply the same business day. Next: we confirm your payroll system and the project, you send one export, and your first filing comes back for your review before anything is submitted.

First filing free