Certified payroll reporting is a weekly payroll report, signed by you, that proves you paid prevailing wages on a public works job. If your electrical, plumbing, HVAC, masonry, concrete, drywall or other trade crew works on a federal or federally assisted construction contract, you file one for every week your people work on it. The federal version is Form WH-347 with a signed Statement of Compliance. Most of the pain is not the form. It is getting clean hours, by worker and by classification, out of the field in time.
This guide covers who files, what goes on the report, when it is due, what happens when it is late, how far QuickBooks gets you, and how to book the retainage that public jobs love to hold back.
TL;DR
- Certified payroll is a weekly report under the Davis-Bacon and Related Acts (DBRA) for covered federal and federally assisted construction work. Many states have their own version for state-funded jobs.
- Each report needs a signed Statement of Compliance. It is due within 7 days after the regular payment date for that payroll week.
- Wrong classifications and missing fringe benefits cause more trouble than late filing. Fix the data at the source: daily hours by worker, by job, by task.
- Keep payroll records for 3 years after all work on the prime contract is completed.
- Retainage is not regular accounts receivable. Book it to a separate retainage receivable account until the contract releases it.
Table of Contents
- What certified payroll reporting is
- Who has to file
- What goes on the report
- When it is due and where it goes
- What happens when reports are late or wrong
- Records you must keep
- Where QuickBooks fits
- A weekly routine that keeps you ahead
- Retainage and accounts receivable on public jobs
- Our perspective
- Get the hours right at the source
- FAQ
- Sources
What certified payroll reporting is
A certified payroll report is a weekly record of every laborer and mechanic you employed on a covered job. It lists who they are, what classification they worked under, hours per day, the rate paid, deductions and gross and net pay. You certify under signature that it is accurate and that you paid at least the prevailing wage.
The U.S. Department of Labor describes Form WH-347 as the form contractors and subcontractors can use to submit certified weekly payrolls for federal or federally assisted construction contracts. Filled out properly, it satisfies the requirements in 29 CFR parts 3 and 5. You can use your own format if it carries the same information and the same certification wording.
This is different from regular payroll. Regular payroll tells the IRS and your state what you withheld and paid. Certified payroll tells a contracting agency that the person who pulled wire on Tuesday was paid the Electrician rate in the applicable wage determination, not the Laborer rate.
Who has to file
The obligation follows the project, not your company size. Any contractor or subcontractor performing DBRA-covered work on a federal or federally assisted construction contract files. That includes a two-person drywall crew hanging board on one floor of a covered building.
Common covered work for trade subs:
- Electrical, low-voltage and fire protection (sprinkler) installs in federal buildings, VA hospitals, courthouses and military facilities
- Plumbing and HVAC/mechanical work on federally funded housing or school projects
- Masonry, concrete, framing, roofing, glazing, insulation, painting and flooring on federally assisted jobs
The prime contract is what triggers coverage. Your own subcontract can be small and you are still in. Your general contractor will usually flow the clauses down in your subcontract. Read the labor clauses before you sign, not after your first report is rejected.
Many states also have prevailing wage laws for state-funded or local public works, with their own forms, portals and rules. California, for example, requires contractors and subcontractors on most public works to submit certified payroll records to the Labor Commissioner through the Department of Industrial Relations. Always check the state agency for the job location.
What goes on the report
Whether you use the WH-347 or your own layout, the same data points come up again and again:
| Item | What the reviewer checks |
|---|---|
| Worker identity | Name and an identifier, consistent week to week |
| Classification | Matches the wage determination for the work actually performed |
| Hours | Daily and weekly, split into straight time and overtime |
| Rate | Basic hourly rate plus required fringe benefits |
| Deductions | Only permitted deductions, itemized |
| Gross and net pay | Ties to your payroll register |
| Statement of Compliance | Signed by you or an authorized officer who supervises wage payment |
The Department of Labor defines the prevailing wage as the basic hourly rate plus any prevailing fringe benefits listed in the applicable wage determination. It also notes there are no nationwide standard classification definitions under DBRA. Classifications are resolved by prevailing local area practice. So a "mason tender" in one county may be a laborer in the next. Ask the GC or contracting agency early when your crew's work does not map cleanly.
Reviewers also look at the ratio of apprentices and trainees to journeymen. The FAR guidance tells contracting officers to look closely at classifications and rates, fringe payments, hours, deductions and disproportionate employment ratios.
The Statement of Compliance
Every weekly payroll goes with a signed Statement of Compliance. On the WH-347 it is page 2, but any document with identical wording works. It certifies the payroll is accurate and complete and that each laborer or mechanic was paid not less than the applicable rate, fringe included.
You are signing under penalty. Do not let an office admin sign blind. Whoever signs should have seen the hours.
When it is due and where it goes
You file weekly for each week you perform covered work. The Department of Labor's compliance guidance says delivery is due within 7 days after the regular payment date of the payroll period. The report goes to the contracting agency representative at the site, or by mail or another reliable method if no one is on site.
In practice, a sub sends its report to the GC, and the GC passes it up. Ask your GC for their internal cutoff. It is usually earlier than the federal one, because they must collect from every sub first. FAR also requires that the prime submit payrolls and statements of compliance for both itself and each subcontractor within the same 7-day window, so your lateness holds up their paperwork.
The filing path depends on who is party to the contract. Under 29 CFR 5.5(a)(3)(ii), reports go to the federal agency if it is a party, or otherwise to the applicant, sponsor, owner or other entity that maintains records for transmission to the funding agency. State jobs often use an online portal instead of paper.

What happens when reports are late or wrong
The usual consequence is money held back, not a fine. FAR 22.406-6 says that if the contractor fails to submit payrolls promptly, the contracting officer shall withhold approval of an amount needed to protect the government and employees. On a job where you already carry retainage, that is cash you cannot afford to wait on.
State agencies behave similarly. Minnesota DOT says the project engineer may withhold a portion of partial estimates until reports arrive, and that failures can carry a penalty under state statute. Caltrans' labor compliance manual says violations can come from late submission, incomplete reports or incorrect entries. Wrong data counts as much as missing data.
For a sub, the practical cost is a held progress payment and a GC who stops wanting you on their next bid list.
Records you must keep
Keep payroll records for 3 years after all work on the prime contract is completed. Under 29 CFR 3.4, records include worker identifying information, classifications, hourly rates, daily and weekly hours, deductions and actual wages paid. Authorized representatives can inspect, copy and transcribe them.
The prime contract can run for years. Three years after completion may mean five or six years from your last day on site. Store timecards, daily reports and the signed statements together, by job.
Where QuickBooks fits
QuickBooks can produce the federal WH-347, but only if you set it up for it. Intuit's help article says you need to set up a project, weekly timesheets, pay schedules and custom hourly pay types, with standard time and overtime for each job classification. Skip that setup and the report will not reflect your classifications.
The lesson for a trade sub: the report is only as good as the timesheet feeding it. A weekly timesheet typed from memory on Friday will produce a weekly report full of guesses. Three habits fix most of it:
- Capture hours daily, by job. Not by week, not by crew lead's recollection.
- Tag the classification at entry. If a journeyman electrician spends Tuesday pulling wire and Wednesday trenching as a laborer, record both.
- Approve before payroll runs. One person reviews every timecard before it hits the payroll system.
We have written about each step: digital timecards for construction, how foremen track crew hours and a foreman's timecard approval workflow.
A weekly routine that keeps you ahead
Here is a routine that works for a sub with one or two covered jobs and a part-time office admin.
- Monday: Confirm the wage determination and classifications for each covered job. Keep a one-page cheat sheet per job.
- Daily: Foremen log hours, classification and a short note on the work performed.
- Thursday: Office reviews hours against daily reports. Flag any worker whose classification changed mid-week or who crossed into overtime.
- Friday or payday: Run payroll. Pull the certified payroll report from the same approved hours. Check totals against the payroll register.
- Within the week: The authorized signer reviews and signs the Statement of Compliance. Send to the GC before their internal cutoff.
- Monthly: File the signed copies and timecards by job in one folder, so a records request takes minutes.
A worked example: a four-person electrical crew on a federally assisted clinic job works 44 hours in a week. The two journeymen go on conduit, the apprentice pulls wire, and one journeyman spends half a day on trench work as a laborer. The report needs overtime split out for each worker, the apprentice's ratio checked, and two classifications for that one journeyman. If that half-day was never recorded, you either overpay the report's accuracy risk or sign something false. Daily capture is cheaper.
Retainage and accounts receivable on public jobs
Public jobs often come with retainage, and certified payroll problems can stall both your progress payment and your retainage release. Book it correctly.
Retainage is not a normal receivable. Knowify's accounting guidance says it is typically an Other Current Asset, an amount you will eventually be owed, because the customer is not yet obligated to pay it. Sage's QuickBooks Online guidance likewise says to track it in a Retentions Receivable account classified as an Other Current Asset.
The standard pattern, as explained in this retainage walkthrough, is to bill the full value of the work, show the withheld amount as a deduction and record it in a separate retainage receivable account. Here is an example on a $100,000 pay application with 10% retainage:
| Step | Debit | Credit | Amount |
|---|---|---|---|
| Bill the pay application | Accounts Receivable | Revenue | $90,000 |
| Book the amount withheld | Retainage Receivable | Revenue | $10,000 |
| Customer pays the invoice | Cash | Accounts Receivable | $90,000 |
| Retainage released later: invoice it | Accounts Receivable | Retainage Receivable | $10,000 |
| Customer pays the release | Cash | Accounts Receivable | $10,000 |
Two things to watch. First, the release invoice only goes out once the contract's release conditions are met, and on a public job those usually include that your payroll paperwork is complete. Second, keep a retainage balance by job, so you know what is owed and when. Your accountant can confirm the treatment that fits your method of accounting.
Our perspective
Most trade subs we talk to do not struggle with the WH-347. They struggle with Friday afternoon, when the office is chasing foremen for last week's hours.
We built Sub Ascent around the way specialty trade subs actually run: bids, jobs, crews, change orders and billing in one place. For certified payroll, the thing we can do is fix the front end. Foremen log crew hours and daily reports on a phone through CrewTrack, by job, every day, and the office sees them without chasing anyone. Your payroll system then works from approved hours, and the QuickBooks sync keeps job costs and invoices in line.
Owners who have run a crew know the rule: if it is not written down the day it happens, it is a guess by Friday. Public work punishes guesses.
Dave
Get the hours right at the source
Sub Ascent is job and bid management software for specialty trade subcontractors. CrewTrack, the mobile app for foremen, is included with your subscription, so crews can log hours and daily reports from the field. Plans are Starter at $49 per month, Scale at $99 per month and Pro at $179 per month, with annual billing also available. See Sub Ascent plans and features to find the fit for your shop.

If you are rolling out mobile timesheets for the first time, test one full pay cycle before you go crew-wide, and read how CrewTrack handles timesheets and daily reports.
FAQ
How often should certified payroll reports be submitted?
Weekly, for every week you perform covered work. The report is due within 7 days after the regular payment date for that payroll week. Federal and state rules both work this way, though some state portals set their own cutoffs, so check the agency on your job.
What is the difference between certified payroll and regular payroll reporting?
Regular payroll reports go to tax agencies and show what you withheld and paid. Certified payroll goes to the contracting agency, shows each worker's classification, hours and rate, and carries a signed statement that you paid at least the prevailing wage, fringes included.
Will QuickBooks do certified payroll?
It can produce the federal WH-347 report, but only after you set up a project, weekly timesheets, pay schedules and custom hourly pay types for each classification. The report depends on accurate timesheets going in.
Is retainage an account receivable?
Usually not. It is generally booked to a separate retainage receivable account classified as an other current asset until the contract releases it. At release, you invoice it and move it to accounts receivable.
How long do I keep certified payroll records?
For 3 years after all work on the prime contract is completed. That can be far longer than three years from your own last day on the job.
Sources
- Instructions for completing the DBRA weekly certified payroll form (WH-347), U.S. Department of Labor
- Davis-Bacon Compliance Principles, U.S. Department of Labor
- FAR 22.406-6 Payrolls and statements, Acquisition.gov
- 29 CFR 3.4, eCFR
- Certified Payroll Reports, California DIR
- Chapter 16: Violations, Caltrans
- Certified Payroll Report Paper Submission, MnDOT
- Set up certified payroll reports in QuickBooks Online, Intuit
- Tracking retainage in QuickBooks Online, Knowify
- Track retainage in QuickBooks Online, Sage
- Retainage in Construction: Track, Bill & Record It, Fit Small Business
