California certified payroll: the complete guide

Everything a public works subcontractor has to file, where it actually goes, when it is due, and what happens when it slips. Written by people who prepare these filings every week, with every regulatory claim linked to its primary source.

Certified payroll is the reporting side of prevailing wage law. On a public works job, you do not just have to pay the published rates. You have to prove it, in writing, on a schedule, in the exact formats two different levels of government demand. Californian subs carry the heaviest version of this burden in the country, because the state layered its own electronic system on top of the federal paperwork.

Who must file

If you work on a California public works project subject to prevailing wage, you file certified payroll. That covers contractors and subcontractors alike, on projects awarded by the state, cities, counties, school districts, water districts, transit agencies, and every other flavor of awarding body. Since January 1, 2016, every non-exempt contractor and subcontractor has been required to furnish electronic certified payroll records directly to the Labor Commissioner through DIR, under Labor Code section 1771.4.

Being a sub does not shrink the duty. Your prime's filings do not cover you. Your bookkeeper's upload into the GC's portal does not cover you either, which surprises more subs than any other rule in this system. More on that below.

The two filings

Most public works subs owe two separate certified payroll artifacts, and they are not interchangeable.

FilingLevelCadenceWhere it goes
Form WH-347 with the Statement of Compliance Federal (Davis-Bacon) Weekly The contracting agency, through your prime, on federally funded or assisted work. Form and instructions at the U.S. Department of Labor.
DIR eCPR, the electronic certified payroll record California At least monthly, or more often when the contract says so Directly to DIR through the Public Works portal, under your own PWCR registration.

The cadence line matters. DIR's rule is eCPRs "at least monthly," per DIR's own eCPR FAQ, but many public works contracts tighten that to weekly, and the federal WH-347 is weekly regardless. In practice a sub running both filings lives on a weekly rhythm: every payroll week on the job produces a filing package.

What goes into a certified payroll record

Both filings carry the same underlying facts, per worker, per week:

  • Name and identifying information, with Social Security numbers handled exactly as each form requires. The federal form takes the last four digits only. The state's electronic record carries the full number inside a system DIR controls.
  • Work classification, the craft under the applicable prevailing wage determination
  • Hours worked each day, split across straight time and overtime
  • Hourly rate, including how fringe benefits are paid: to a plan, or in cash to the worker
  • Gross wages, itemized deductions, and net paid
  • The certification: a signature, under penalty of perjury, that all of it is true and that workers were paid the required prevailing rates

That last line is why this is called certified payroll. Someone at your company signs a legal declaration every single filing. Get the underlying numbers wrong and the problem is not clerical.

Where it goes: the part that trips everyone

California's system is fragmented on purpose. The state wants its own copy, and many awarding bodies also want theirs, in their own portal: LCPtracker, Elation, PRISM, or a system the body built itself. Here is the rule that catches subs, in DIR's own words:

"Submitting CPRs to other agencies does not put you in compliance with the state unless you submit eCPRs directly to DIR."
DIR, eCPR frequently asked questions

Uploading into the GC's LCPtracker project is the awarding body's monitoring copy. The state still expects its own eCPR, filed directly, under your own registration. Both, every time, on non-exempt projects. We wrote a whole guide on this one rule, because it is the most expensive misunderstanding in California public works: LCPtracker vs DIR.

The one real exception: projects run by one of the four legacy Labor Compliance Programs the state approved before it closed the program in 2011. Caltrans, the City of Los Angeles, LAUSD, and the County of Sacramento run their own compliance operations, and projects under those programs are generally exempt from the direct DIR eCPR filing, per DIR's eCPR exemptions page. Certified payroll still gets prepared and submitted through those bodies' own channels, and the federal WH-347 still applies where federal money is in the job.

How the eCPR actually gets filed

DIR replaced its legacy systems in mid 2024 with a unified Public Works portal at services.dir.ca.gov/pw, folding project registration (PWC-100), contractor registration (PWCR), and eCPR filing into one login, per DIR's upgrade notice. Old accounts did not carry over. There are two ways to file:

  1. The iForm. You type each worker, each day, each rate into the portal by hand, every filing period, per project. This is where afternoons go to die.
  2. XML upload. You upload a file in DIR's published eCPR XML format, review what the system parsed, and sign. DIR refreshed the format specification in March 2026. The catch: the mainstream payroll systems do not produce this file. Not QuickBooks, not the standard ADP, Paychex, or Gusto configurations. Somebody has to build it, correctly, to a specification with real teeth.

Either way, the final step is the same by design: a person at the contractor reviews the parsed payroll and signs under penalty of perjury. The full mechanics, including what makes uploads bounce, are in our guide to the DIR eCPR system.

Deadlines and penalties

Three clocks run at once on every public works job:

  • The filing cadence. WH-347 weekly on covered federal work. eCPRs to DIR at least monthly, or faster when the contract says so.
  • The records request clock. A written request for certified payroll records under Labor Code section 1776 gives you 10 days. After that it is $100 per worker, per calendar day, and the state can collect it by withholding from your progress payments.
  • The payment cycle. Awarding bodies and primes hold progress payments over certified payroll problems. This clock hurts the most, because it is your cash.

The full penalty picture, including how withholding works, is in certified payroll penalties in California. If you are already behind, start with how to catch up, because back filings are a solvable problem and an urgent one.

Prevailing wage: the substance underneath the paperwork

Certified payroll reports the rates you paid. Prevailing wage law dictates what those rates had to be, by craft and by county, in determinations DIR publishes. The filings and the wages are separate ways to fail: a perfectly formatted eCPR reporting the wrong rate is still a violation, and a correctly paid crew with no filings is too. The difference between the two bodies of rules, and how wage determinations work, is covered in prevailing wage vs certified payroll.

Requirements by awarding body

Who you are building for changes the portal story, the exemption story, and sometimes the cadence. We maintain data-backed requirement pages for the awarding bodies registering the most work right now, generated from DIR's public project registrations: certified payroll requirements by awarding body and county.

The honest summary

California certified payroll is a weekly production process with legal consequences, bolted onto businesses that exist to build things. You can run it yourself in the portal, buy software and drive it every Friday, or hand the whole thing to a service that does it for a living. We are the third kind: send the payroll export you already run, and we produce the WH-347 and the validated eCPR file, checked by software and verified by a person, with your first weekly filing free. The pricing is on the home page, in public, which is not the industry norm.

Certified payroll, done 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.

First filing free