How to fill out the WH-347, line by line
By Matt Kerr, who makes Count Twice in Grand Rapids · Checked 9 November 2026
The WH-347 is the U.S. Department of Labor's weekly certified payroll form for Davis-Bacon jobs. Page 1 is the payroll: one row for each worker in each trade, with hours by day, rates, fringe, gross pay, deductions and net pay. Page 2 is the Statement of Compliance, which you sign.
- The current form is dated January 2025. It carries OMB number 1235-0008, good through 31 January 2028.
- DOL gives it away free, as a PDF and as an online form that runs in your browser.
- The form itself is optional. Sending the same payroll facts every week, with a signed statement in identical wording, is not.
- It's due within 7 days after your regular payday, under 29 CFR 3.4.
Check the numbers before you sign. I built Count Twice, a free checker for this form. Drop in one week of payroll as a CSV file and type your rates. It flags pay under the base rate, short fringe, overtime under time and a half, and apprentices over the ratio.
Free, with no account. Your file stays on your computer. Nothing is uploaded or saved.
If your guide mentions boxes 4(a) to 4(c), it's out of date
Plenty of WH-347 guides still describe the form before January 2025. If yours talks about boxes 4(a), 4(b) and 4(c), or an exceptions table, it's describing a form DOL no longer prints. The January 2025 form has:
- check boxes for the final payroll and for prime contractor or subcontractor,
- a box for the wage determination number,
- separate columns for each worker's entry number, last name, first name, middle initial and identifying number,
- a J or RA column for journeyworkers and registered apprentices,
- pay split three ways: 6A for the hourly rate, 6B for fringe paid to plans, and 6C for cash paid in place of fringe,
- gross pay split into 7A for this project and 7B for all work that week,
- a table on page 2 for each worker's fringe plans and hourly credit, and one for apprenticeship programs,
- six statements on page 2, each with its own box.
The header, box by box
| Box | What goes in it |
|---|---|
| Submission of final certified payroll | Tick it only on your last week of work on the project. |
| Prime contractor or subcontractor | Tick the one you are on this project. |
| Project name | The project's name. |
| Project no. or contract no. | The number the contracting agency gave the project or the prime contract, if there is one. |
| Certified payroll no. | Start at 1 on each project and go up by one each week you send a payroll. |
| Business name | Your company's legal name. |
| Project location | The full address. With no address, describe the site and give at least the county and state. |
| Wage determination no. | Every wage determination in your contract that covered work this week, with its modification number. For example, MI20260088, modification 1. |
| Week ending date | The last day of your workweek. |
| Business address | Your company's full address. |
The columns, 1A to 9
| Column | What goes in it |
|---|---|
| 1A Worker entry no. | 1, 2, 3 down the page. A second sheet of rows starts at 9. A worker in two trades this week gets two rows with the same number. |
| 1B to 1D | Last name, first name and middle initial. |
| 1E Worker identifying no. | The last four digits of the Social Security number, or your own number for that worker. Never the full Social Security number. |
| 2 J or RA | J for a journeyworker. RA for a registered apprentice, plus their level in the program. |
| 3 Labor classification | The trade for the work they actually did, as it's named in your wage determination. If the work has no trade on it, call the contracting officer right away. |
| 4 Hours worked each day | Across the top, each day's first letter and its date, starting with your workweek's first day. Then each day's hours on this project, on an ST row and an OT row. |
| 5 Total hours | The week's total from column 4. |
| 6A Hourly rate paid | What you paid an hour, straight time on top and overtime below. Leave out cash paid in place of fringe. |
| 6B Total fringe benefit credit | The week's hours times the worker's total hourly plan credit from page 2. It's a dollar total for the week, not an hourly rate. |
| 6C Payment in lieu of fringe | The week's hours times the cash you paid each hour in place of fringe. Also a weekly total. |
| 7A Gross amount earned | What the worker earned this week on this project. |
| 7B Gross for all work | Only if they also worked somewhere else this week: the gross for all of it. |
| 8 Deductions for all work | Tax withholding, FICA, Other and the total. Show the real deductions for the whole week. Don't split them between jobs. Describe "Other" in the remarks on page 2. |
| 9 Net pay for all work | What you actually paid the worker for every hour that week, on every job. |
The overtime rule behind the OT row: on contracts under the Contract Work Hours and Safety Standards Act, hours over 40 in the week are overtime. That includes hours worked on and off the site.
One row, filled in
Here's Ben C. from the Count Twice sample week, a made-up carpenter. His wage determination says $30.00 an hour plus $10.00 fringe, and he gets all of the fringe as cash. His workweek runs Sunday 1 November to Saturday 7 November 2026. He worked 10 hours Monday to Thursday and 4 hours on Friday.
That's 44 hours. He reached 40 on Thursday, so Friday's 4 hours go on the OT row.
Column 4 for his week looks like this:
| Row | S 11/1 | M 11/2 | T 11/3 | W 11/4 | T 11/5 | F 11/6 | S 11/7 |
|---|---|---|---|---|---|---|---|
| ST | 0 | 10 | 10 | 10 | 10 | 0 | 0 |
| OT | 0 | 0 | 0 | 0 | 0 | 4 | 0 |
| Column | Ben C. |
|---|---|
| 1A, 1E | Entry 2, ID 4417 |
| 2, 3 | J, Carpenter |
| 4 | The grid above: 40 straight-time hours and 4 overtime hours |
| 5 | 44 |
| 6A | ST 30.00, OT 45.00 |
| 6B | 0.00 |
| 6C | 440.00 |
| 7A | 1,820.00 |
| 7B | Blank. He had no other work this week. |
| 8, 9 | From your payroll run. They depend on his tax forms, so this example leaves them out. |
How the money adds up:
- 6C is 44 hours times $10.00, or $440.00. The fringe is paid on every hour at its straight amount, overtime hours included. It isn't multiplied.
- Overtime is 1.5 times the $30.00 base rate, so $45.00. Paying 1.5 times $40.00 is fine too, but $45.00 is the least. The rules are 40 U.S.C. 3702 and 29 CFR 5.32.
- 7A is 40 hours at $30.00 ($1,200.00), plus 4 hours at $45.00 ($180.00), plus the $440.00 cash fringe. Cash in place of fringe is pay, so it counts in his gross.
Now Ana R., paid through plans instead. She worked 40 straight-time hours at $30.00, and her employer pays $10.00 an hour into her health and pension plans. Her 6B is $400.00 and her 6C is 0.00. Page 2 lists her plans, and their hourly credits add up to $10.00. That hourly credit is the plan's yearly cost spread over every hour she works that year, on all jobs, not only this one. That's DOL's annualization rule, 29 CFR 5.25.
Page 2: the Statement of Compliance
Page 2 repeats the project name and number, payroll number, business name, location and week ending date. Then it adds the name and title of the person who signs.
The six boxes
- Boxes 1, 2, 3 and 6: tick them every week. They say the payroll is complete and correct and the pay meets your wage determination. They also say your records are complete and available, each worker's trade is the work they actually did, and every worker got full weekly pay with no deductions beyond those 29 CFR part 3 allows.
- Box 4: apprentices. Tick it if anyone was paid as an apprentice this week. List each program, whether it's registered with DOL's Office of Apprenticeship (OA) or a State Apprenticeship Agency (SAA), and the trade. The form has room for three. Put more on an addendum. With no apprentices, leave it unticked and write N/A.
- Box 5: fringe. Tick it when fringe was paid. If you take a credit for plan payments, fill in the plan table for each worker: plan name, type and number, funded or unfunded, the hourly credit for each plan, and the total. There's room for six plans. If you paid all the fringe as cash, tick the box but leave the table empty, because the cash is already in 6C. An unfunded plan needs DOL's approval before you take the credit, under 29 CFR 5.28.
Signing it
The person who paid the workers, or supervised paying them, signs it, with the date, a phone number and an email address. It doesn't need a notary. A legally valid electronic signature counts. A photocopied or scanned signature doesn't.
The form warns that willfully falsifying any statement on it can lead to civil or criminal prosecution, under 18 U.S.C. 1001 and 31 U.S.C. 3729, and to being barred from federal contracts. DOL's instructions add that 18 U.S.C. 1001 carries a fine, up to 5 years in prison, or both. So whoever signs should know the numbers are right.
When and where it goes
- When: every week of work, within 7 days after the regular payday for that week (29 CFR 3.4).
- Where: to the federal agency, if it's a party to the contract. If it isn't, it goes to the applicant, sponsor or owner that keeps the records, who sends it on to the agency (29 CFR 5.5(a)(3)(ii)). The online form says to print it or save it as a PDF and send it to your contracting agency.
- How long to keep records: 3 years after all work on the prime contract is done (29 CFR 3.4(b)).
- Michigan state jobs: since 2 April 2026, certified payroll for these goes to the state's online system, within 10 days after each pay period. How Michigan's system works.
Check the math before you sign
The form asks you to sign that every worker got at least the rate and fringe on your wage determination. That's the part worth checking twice. The Count Twice sample week has four mistakes planted in it: overtime paid at the straight rate, a cash fringe $2.00 an hour short, a wage under the base rate, and too many apprentices on three days. This is what the checker shows for it.
Type the rates from your wage determination, drop in a week of payroll, and fix what it flags before you fill in the form.
Count Twice checks math against the rates you type. It doesn't decide which trade a job belongs to, and it isn't a lawyer.
Next: the rates you're signing for
Every number in 6A and 6C starts from your wage determination. How to find and read your 2026 Davis-Bacon wage determination walks through a real one, line by line.
Sources, read 9 November 2026: the WH-347 (Rev. January 2025) and DOL's instructions for it; 29 CFR 3.4, 5.5, 5.25, 5.28 and 5.32.