Upload the payroll CSV you already export, and get back a filled, print-ready revised WH-347 (Rev. January 2025) plus the new Statement of Compliance. Gross, overtime, deductions, and fringe credits computed from your file, in your browser. Nothing is uploaded anywhere.
Three steps: load your payroll export, confirm the project header, print. Overtime past 40 hours a week is split out automatically at 1.5x the base rate. Anything the file doesn't answer gets flagged for review, never guessed.
| Field | Accepted headers |
|---|---|
| Worker name | last + first (+ mi), or a single employee / name column |
| ID (last 4) | id_last4, ssn_last4, employee_id. Full SSNs are truncated to the last 4 and flagged. |
| J or RA | status: J / journeyworker, or RA / apprentice |
| Classification | classification, trade, work_classification |
| Hours by day | mon ... sun (or full day names). Blank cells count as 0 hours. |
| Base rate | base_rate, rate, hourly_rate |
| Fringes ($/hr) | health_hourly, pension_hourly, training_hourly, and cash_fringe_hourly for payment in lieu |
| Deductions | fed_tax, state_tax, fica, other_deduct (+ other_desc). Blank counts as 0.00. |
| Apprentices | apprentice_program and registered_with (OA or SAA) |
| All-work gross | gross_all_work if the worker also earned wages on other jobs that week |
A made-up seven-person electrical crew ("Marlin Point Electrical LLC") on a fictitious Miami project: journeyworkers, two registered apprentices, one worker past 40 hours, one on a second job, cash paid in lieu of fringes, and two rows that trip the review flags on purpose.
Your file is read with the browser's FileReader and never uploaded; there is no upload endpoint on this page, which you can confirm in the network inspector.
health_hourly)pension_hourly)training_hourly)Computed from the loaded CSV: straight time and overtime split at 40 hours per workweek (overtime at 1.5x the base hourly rate, fringe credited at the straight rate for all hours). Cells the file couldn't answer are marked REVIEW rather than guessed. Verify the output against your wage determination before submitting.
DOL revised the form in January 2025 (Rev. January 2025, OMB control number 1235-0008, expires 01/31/2028). The old version's approval lapses September 30, 2026. From October 1, 2026 the revised layout is the only valid WH-347 for federal certified payroll, and it asks for far more than the old one did.
Column 2 requires a J or RA designation per worker, and page 2 adds a sworn apprenticeship section: program name, OA or SAA registration, and classification for every apprentice.
Total Fringe Benefit Credit (6B) and Payment in Lieu of Fringe Benefits (6C) columns, plus a page 2 hourly-credit table naming each plan, its type, plan number, funded or unfunded status, and the hourly credit claimed per worker.
Columns 1A to 1E replace the old single name box: entry number, last, first, middle initial, and identifying number, so one worker can be tracked across multiple classifications.
The header now names the wage determination the rates are certified against, next to project, contract, and payroll numbers.
The old three-paragraph statement becomes six checkbox certifications covering rates, records, classifications, apprentice registration, fringe plans, and permissible deductions under 29 CFR part 3.
Printed name and title of the certifying official plus telephone and email now ride with the signature, so the agency knows exactly who certified and how to reach them.
Straight time now sits above overtime for each worker, headers moved to a cleaner table layout, and an Additional Remarks section handles explanations and resubmissions.
The one thing that got simpler. Everything else got more detailed, which is why spreadsheet templates built for the old form no longer map.
Sources: US Department of Labor, Wage and Hour Division (dol.gov/agencies/whd/forms/wh347) and the published Rev. January 2025 form. QuickBooks does not fill the revised form's expanded fields; its certified payroll flow still expects the old layout.
Certified payroll software is priced for GCs with compliance departments. If you just need a correct revised WH-347 every Friday, you shouldn't pay platform rent for it.
Leave an email and you get launch access at the launch price, locked: $19 per report or $39 a month unlimited. If you want, we'll run your first real payroll week through it with you, on a call, free.
The output reproduces the layout and fields of the revised WH-347 (Rev. January 2025, OMB 1235-0008). Use of form WH-347 itself is optional under DOL rules; what's mandatory is submitting the payroll information and the signed Statement of Compliance it carries. This tool is not affiliated with or endorsed by the US Department of Labor, and you should verify output with your contracting agency before submitting.
No. The file is read with the browser's FileReader API and processed by JavaScript in this tab. There is no upload endpoint for it, which you can confirm in your browser's network inspector. Only if you submit the launch-access form does your name and email get sent, nothing from the CSV.
Hours over 40 in the workweek are split out as overtime at 1.5x the base hourly rate, day by day in the order worked, which matches the CWHSSA rule on covered federal contracts. Fringe benefits are credited at the straight-time rate for all hours. If your contract or a state law requires daily OT, flag it in remarks; the launch version adds daily-OT rules.
They get a REVIEW mark on the form and a plain-English flag above it: a missing rate, an apprentice with no registered program, a full SSN where the last four should be. The tool never fills a certified federal form with a guess. You fix the CSV or the field, regenerate, done.
Until September 30, 2026, agencies still accept the old version. From October 1, 2026 the revised form is the only valid one. Switching early is painless and gets your fringe and apprentice documentation in order before every other sub is scrambling the same week.
On the roadmap after launch: California A-1-131, New York, New Jersey, and Illinois formats from the same CSV. The federal revised WH-347 is first because it has a hard deadline.