Count Twice: certified payroll checker

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.

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.

Check a week free

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:

The header, box by box

BoxWhat goes in it
Submission of final certified payrollTick it only on your last week of work on the project.
Prime contractor or subcontractorTick the one you are on this project.
Project nameThe 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 nameYour company's legal name.
Project locationThe 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 dateThe last day of your workweek.
Business addressYour company's full address.

The columns, 1A to 9

ColumnWhat 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 1DLast 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 RAJ for a journeyworker. RA for a registered apprentice, plus their level in the program.
3 Labor classificationThe 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 dayAcross 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 hoursThe week's total from column 4.
6A Hourly rate paidWhat you paid an hour, straight time on top and overtime below. Leave out cash paid in place of fringe.
6B Total fringe benefit creditThe 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 fringeThe week's hours times the cash you paid each hour in place of fringe. Also a weekly total.
7A Gross amount earnedWhat the worker earned this week on this project.
7B Gross for all workOnly if they also worked somewhere else this week: the gross for all of it.
8 Deductions for all workTax 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 workWhat 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:

Ben C., hours on this project, workweek ending 7 November 2026
RowS
11/1
M
11/2
T
11/3
W
11/4
T
11/5
F
11/6
S
11/7
ST01010101000
OT0000040
ColumnBen C.
1A, 1EEntry 2, ID 4417
2, 3J, Carpenter
4The grid above: 40 straight-time hours and 4 overtime hours
544
6AST 30.00, OT 45.00
6B0.00
6C440.00
7A1,820.00
7BBlank. He had no other work this week.
8, 9From your payroll run. They depend on his tax forms, so this example leaves them out.

How the money adds up:

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

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

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.

Count Twice results for the sample week: 9 rows read, 4 flags, 2 things to fix, 2 notes, and a possible shortfall of $215.00. The flags are overtime under time and a half for Cal D., fringe short for Dee F., pay under the base rate for Eli G., and carpenter apprentices over the 1:3 ratio on days 1 to 3.
The checker's results for the made-up sample week, in a browser on 9 November 2026.

Type the rates from your wage determination, drop in a week of payroll, and fix what it flags before you fill in the form.

Check a week free

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.