Job Costing
September 30, 2026

WIP Report and Certified Payroll: Same Data, Two Documents

Summary
TL;DR

A WIP report and certified payroll draw from the same field hours, gross wages, and fringe benefits, so a single miscoded crew hour distorts percent complete and earned revenue while simultaneously creating a prevailing wage compliance gap. Building the WIP report from fully burdened labor data first and then reconciling payroll register totals and weekly hours against WH-347 filings keeps cash flow, audits, and bonding capacity intact.

Most contractors running prevailing wage jobs keep two separate paper trails. One person builds the WIP report for the CPA and the surety. Someone else files WH-347 forms every week for the contracting agency. They rarely compare notes, which is a problem because both documents draw from the same well: field hours, gross wages, and fringe benefits.

When those numbers disagree, you don't get one error. You get two. A misallocated crew hour inflates cost-to-date on one job, understates it on another, and shows up as a discrepancy in a Department of Labor audit at the same time.

Here's how certified payroll data feeds WIP reporting, what breaks when the two drift apart, and how to create a WIP report that ties back to your payroll register line by line. You'll also get the standard WIP report format and the reconciliation checks worth running before anyone signs off.

Two Reports, One Set of Numbers

Ask most office managers what connects the WIP report to certified payroll and you'll get a shrug. One goes to the accountant, the other goes to the agency. Strip both documents down to their inputs, though, and you find the same crew, timecards, and pay rates sitting underneath each one.

What a WIP Report Is in One Line

WIP stands for work in progress, and a WIP report tracks job costs incurred to date against your estimated total costs, producing a percent complete figure that tells you whether each contract is overbilled or underbilled. People sometimes ask about the difference between a WIP report and a WIP schedule. Functionally, there isn't one. “Schedule” is the term your CPA and surety use for the same document when it's attached to financial statements.

The completeness percentage drives many downstream decisions. It shapes how much revenue you can recognize this period, how your bonding agent reads your capacity, and whether your banker sees a contractor collecting cash ahead of cost or floating the job out of pocket. Accurate WIP reporting starts with accurate cost data, not clever spreadsheet formatting.

What Certified Payroll Actually Proves

Certified payroll is your evidence that everyone on a prevailing wage job got paid correctly. Form WH-347, published by the US Department of Labor, captures each worker's classification, hours by day, gross wages, deductions, and fringe benefit contributions. You file it weekly or monthly depending on the contracting agency, and a company officer signs a statement of compliance attesting that the figures are accurate.

That signature carries weight. The officer is personally attesting to classifications and Davis-Bacon fringe benefit amounts, which means the underlying hour-by-hour detail has to hold up to review months after the crew has moved on to the next site.

The Shared Input: Hours, Gross Wages, and Fringes

Here's where the two documents meet. The hours and gross wages you certify on WH-347 are the same raw data that feeds your job-costing module, and that module is what generates the cost-to-date column in your WIP report. Labor is typically the largest and most volatile cost bucket on a construction job, so it carries the most weight in the “percent complete” calculation.

If a crew hour gets coded to the wrong job, you've created a payroll compliance exposure and a distorted WIP figure with a single keystroke.

Misallocated or underreported labor breaks your WIP numbers before profitability analysis even begins. The percent complete is wrong, so the revenue recognition built on top of it is wrong too. Fix the coding at the timecard, and both reports correct themselves at the same time.

Three checks catch most of the damage before it reaches either report:

  • Job and cost code on every hour: No unassigned labor should clear payroll, even for shop or travel time.
  • Classification matches the work performed: A laborer coded as an operator distorts your wage compliance and your unit costs simultaneously.
  • Fringes tracked as costs, not afterthoughts: Cash fringes and plan contributions belong in the job cost total that feeds your WIP report.

When those three hold, WIP reports and certified payroll stop being separate chores. They become two views of one clean dataset, which is exactly how anyone asking how to create a WIP report should be thinking about the process. The WIP report format your CPA wants is straightforward to produce once the labor data underneath it is trustworthy, and certified payroll reporting software that syncs with your job costing keeps that data honest week after week.

{{banner-large-cp="/banners"}}

What Goes Wrong When WIP Reporting and Certified Payroll Drift Apart

The failure mode here is rarely dramatic: nobody discovers a $400,000 hole on a Tuesday afternoon. Small allocation errors compound quietly over months, and by the time someone catches the pattern, the damage has already spread into four separate places: your bank account, audit file, bonding line, and compliance record.

Cash Flow Crises From Phantom Overbillings

When crew hours get coded to the wrong job or dumped into a general labor bucket, the affected project shows lower costs than it actually incurred. Percent complete drops and earned revenue right along with it. Your WIP report now says you're overbilled on a job where you genuinely earned every dollar you invoiced.

An overbilled job is one where you've invoiced the owner for more than you've actually earned based on work completed. That excess billing is a liability on your balance sheet, not profit, because you still owe the labor and materials to finish the work.

Project managers who see phantom overbillings react the way you'd expect: they slow down billings to “correct” the imbalance, which simply means that you've delayed cash on a job that was performing fine. Meanwhile, the job that absorbed those misallocated hours looks over budget, and someone starts hunting for a productivity problem that never existed. Two jobs damaged, one coding error.

Failed Audits and Unsupported Cost-to-Date Figures

CPAs testing a WIP schedule work backward. They pick a job, pull the cost-to-date figure, and trace it to source documents: invoices, purchase orders, and the payroll register. Labor is usually the largest and messiest piece of that trail. If your certified payroll filings show 1,240 hours charged to a project and your job cost ledger shows 1,190, that 50-hour gap needs an explanation, in writing, with support behind it.

Auditors don't accept “the office manager reclassified some hours.” Unsupported cost-to-date figures lead to adjusting entries, qualified opinions, or a management letter comment about weak controls over labor allocation. None of those read well when you're handing financials to a lender. Contractors who build job costing directly off payroll data avoid most of this because the trail from timecard to WIP line never breaks in the first place.

Lost Bonding Capacity With Sureties

Sureties read WIP reports more carefully than almost anyone else who touches your financials. They're studying gross profit trends by job, the ratio of underbillings to overbillings, and whether your earlier estimates actually held up. Wild swings in margin between quarters signal that your cost data was wrong the first time around, and a surety underwriter has no way to tell a bookkeeping problem from a company that loses control of its jobs.

Underwriters don't penalize a thin margin nearly as much as they penalize a margin that keeps changing.

The practical outcome is a reduced single-job limit or a smaller aggregate program, which quietly removes larger public work from your bid list. You rarely get a phone call explaining it; you just stop qualifying for the jobs you used to chase.

Penalties for Prevailing Wage Violations

On the compliance side, that same labor data carries legal weight. Hours recorded against the wrong classification, fringe credits calculated on an incorrect base, or overtime missed across multiple jobs in a single week all surface as violations. The US Department of Labor can require back wage payments, withhold contract funds, and pursue debarment from future federal contracts for up to three years.

Falsifying a certified payroll statement is a separate and far more serious matter since each weekly filing carries a signed statement of compliance. Sloppy allocation and intentional misstatement look uncomfortably similar in a records review, which is why the details on your WH-347 filings deserve the same scrutiny you'd give a change order.

One Accuracy Problem, Two Places It Shows Up

Notice the pattern running underneath all four consequences. Every one of them traces to the same root cause: labor hours that were never allocated correctly at the source. Here is how a single coding error travels through both reports at once:

  • In WIP reporting: The mistake distorts cost to date, which distorts percent complete, which distorts earned revenue and your over/under billing position.
  • In certified payroll: That same mistake produces a filing that contradicts your books and invites a wage determination review.

Two teams then spend a week reconciling spreadsheets to figure out which version was right, but neither was. Fixing the allocation at the timecard level is the only correction that holds because everything downstream (WIP reporting, billing decisions, compliance filings) is just arithmetic on top of that one number.

How to Create a WIP Report That Ties Back to Payroll

The build order matters more than most controllers expect. Start with contract values and work backward toward costs, and you'll end up plugging numbers to make the schedule balance. Start with labor, the largest and most error-prone bucket on almost every job, and the rest of the schedule falls into place with real support behind every figure.

The Standard WIP Report Format and Its Columns

No accounting board mandates a single WIP report format, but the version your CPA and your surety expect looks broadly the same from contractor to contractor. What actually varies between a clean schedule and a questionable one is the discipline behind each column. Here's what belongs in each one and where the number should originate:

Column Source of the Number
Contract amount Original contract plus approved change orders only
Estimated total cost Revised budget from the project manager, not the bid
Cost to date Job cost ledger: burdened labor, AP, subs, and equipment
Percent complete Cost to date divided by estimated total cost
Earned revenue Percent complete times contract amount
Billed to date AR ledger, through the same cutoff date
Over/under billing Billed to date compared to earned revenue

Two columns cause most of the trouble. Estimated total cost gets stale when nobody updates it after the bid, and cost to date gets distorted when labor posts at base wage instead of fully burdened cost. Fix those two and your WIP reports stop drifting from reality.

A Step-by-Step Build From Labor Data Up

Work through these steps in order, pulling every data set as of the same cutoff date, or the comparisons at the end won't hold:

  1. Pull hours from one time tracking system where every entry is already coded to a job and cost code in the field, whether that's QuickBooks Time or whatever your crews use daily.
  2. Burden those hours with fringes, payroll taxes, workers' comp, and general liability, so cost to date reflects true labor cost rather than base wage rates.
  3. Confirm that the burdened labor total per job matches the gross wages you certified for the same weeks on prevailing wage work.
  4. Post non-labor costs: approved AP invoices, subcontractor billings, and equipment charges, accrued through the cutoff even if unpaid.
  5. Ask project managers to revise estimated cost to complete based on field conditions, then recalculate estimated total cost.
  6. Compute percent complete, apply it to the contract amount including approved change orders, and compare that earned revenue to billings.

Follow that sequence and every figure on the schedule traces back to a document you can hand an auditor without a narrative explanation. That traceability is the whole point of WIP reporting, and it's what separates a schedule your banker trusts from one they interrogate line by line.

An underbilled job is one where you've earned more revenue than you've invoiced, which means you're financing the owner's project with your own working capital until the next billing cycle catches up.

Reconciliation Checks to Run Before You Publish

Three checks catch most problems before they reach a lender. 

First, tie total payroll register dollars for the period to total labor posted across all jobs in the job cost ledger. If the ledger comes up short, hours are sitting in an unallocated or overhead bucket where they don't belong.

Second, compare hours per job per week against your certified payroll filings for those same weeks. Any variance needs a documented reason before either report leaves the building because the two are read side by side during an audit. 

Third, verify that no unapproved change order costs are inflating cost to date while the matching revenue sits outside the contract amount. That mismatch is the fastest way to manufacture a fake underbilling and the first thing a seasoned reviewer looks for.

Where Dapt Fits: One Labor Data Source for Both Reports

Every problem covered so far traces back to the same structural flaw: labor data lives in one system, job costs live in another, and a person moves numbers between them by hand. Dapt closes that handoff by treating payroll, time tracking, and accounting as one connected pipeline instead of three systems that only occasionally agree with each other.

Connecting Payroll, Time Tracking, and Accounting

Dapt's Intelligent SYNCHRONIZATION Engine pulls time and attendance data from trackers like QuickBooks Time, maps hours, pay rates, and benefits against payroll providers (including ADP, Paychex, Paycor, and Paycom), and then feeds the results into QuickBooks, Sage, or Microsoft Dynamics 365. Project data from platforms like JobTread lines up alongside it, so budgets and actuals sit in the same view instead of two different tabs.

The practical effect for a prevailing wage contractor is simple: the hours that appear on your certified payroll filing are identical to the hours sitting in your cost-to-date column. No export, no pivot table, no version control argument on a Friday afternoon. When someone asks how to create a WIP report without a week of prep, this is the answer because the underlying labor data is already coded correctly.

Granular Cost Allocation and Multi-Rate Labor Rules

Prevailing wage work breaks most job costing setups because a single employee can carry three classifications, two rate schedules, and fringe obligations that shift by jurisdiction inside one week. Dapt handles varying labor rates, pay rules, and multi-jurisdictional compliance at the allocation level, assigning every dollar of labor, materials, and overhead to the correct project, phase, or task before it ever reaches a report.

Allocation accuracy at the source is cheaper than reconciliation accuracy after the fact. One happens automatically; the other costs you a week.

Here is how four routine tasks play out when payroll and accounting stay separate, compared with running both from one labor record.

Task Two Disconnected Systems Connected Through Dapt
Coding crew hours to jobs Rekeyed from timecards into payroll and then again into accounting Captured once and mapped to project, phase, and task
Certified payroll prep Separate weekly build by office staff Drawn from the same allocated labor records
WIP cost-to-date Month-end, often stale by two to four weeks Updated as payroll and time data sync
Audit trail Rebuilt manually when the CPA asks Maintained continuously by system of record

The right-hand column also changes what your WIP report format can realistically include. Once labor is allocated at the source, adding phase-level detail or a labor-only cost column costs you nothing extra in prep time.

Audit-Ready Records Without the Spreadsheet Reconciliation

When your CPA traces a cost-to-date figure back to source, the support already exists. The same holds for a wage determination review. Because both reports pull from one labor record, there is no gap to explain and no second team assembling a competing version of the truth.

Owners and COOs usually notice the time savings first, then the bidding improvement, since accurate historical labor costs (and a reliable job cost report behind them) make the next estimate sharper. Better WIP reporting tends to follow on its own, because the inputs stopped being a guess. If you're carrying prevailing wage work and reconciling two sets of numbers every month, get in touch.

{{banner-small-1="/banners"}}

Stop Treating Them as Separate Paperwork

The gap between your compliance filings and your WIP report comes down to data, not paperwork. Both documents pull from the same well: every hour a crew member works either lands on the right job with the right classification, or it quietly corrupts two records at once, the one your surety reads and the one a wage investigator might request two years from now. Month-end cleanup can't repair a number that was already wrong when it left the field, which is why anyone asking what is a WIP report usually ends up asking a harder question about where their hours actually come from.

So start at the source. Pick one active prevailing wage project, pull last month's certified filings alongside your job cost ledger, and compare hours week by week. If the totals don't line up, you've found the leak before your CPA, your banker, or the Department of Labor does. That one exercise tells you more about your WIP reporting than any template will, and it also shows you how to create a WIP report that holds water instead of one that simply fills in a WIP report format. Consistent WIP reports come from connected systems, not from a spreadsheet stitched together the night before a bank meeting.

FAQs

How often should a WIP report be updated?

Monthly is the practical minimum for most contractors, though anyone running multiple prevailing wage jobs benefits from a weekly refresh as payroll posts. The more frequently labor hours flow into job costing, the less catch-up work a month-end WIP report requires.

Who actually reads a construction WIP report?

Your CPA uses it to support revenue recognition, your surety underwriter uses it to set bonding limits, your bank uses it to assess working capital, and your project managers should use it to catch budget problems while there is still time to react.

Can certified payroll filings be used to verify job cost figures?

They make an excellent cross-check, since your weekly WH-347 submissions already document hours and gross wages by worker and project. Comparing those totals to your labor postings by job will expose allocation errors long before an auditor or an underwriter finds them.

Who manages WIP reporting and cost to complete for contractors?

A controller or accounting lead typically owns the WIP schedule, pulling cost-to-date from the job cost ledger, while project managers supply the estimated cost to complete. On smaller shops, the same office manager who runs payroll often builds the WIP report too.

What are the best WIP reporting solutions for contractors and builders?

The strongest setups connect payroll and time tracking directly into job costing rather than relying on a spreadsheet template. Platforms like Dapt are built for that, tying certified payroll and WIP reporting to the same labor data instead of two separate systems.