Back to Blog
Job Costing

Electrical Contractor WIP Report in QuickBooks: Build a Work in Progress Schedule (with Formula and Free Template)

QuickBooks has no true work-in-progress schedule for electrical contractors. Here is the formula, a fully worked electrical-job example, the exact QuickBooks Online and Desktop steps, and why your field labor hours decide whether the WIP number is real.

FieldTimesheet TeamProduct Team
July 2, 2026
11 min read

An electrical contractor WIP report in QuickBooks work in progress schedule tells you one thing your P&L never will: whether the jobs you are in the middle of are actually making the money you bid. If you run three service upgrades, a tenant-improvement fit-out, and a school re-lamp at the same time, your P&L blends them into one number. A WIP report pulls them apart and shows you which one is quietly eating its margin before the job closes and it is too late to react.

Here is the hard part nobody selling you software says out loud: QuickBooks Online and QuickBooks Desktop do not have a real WIP report. They have the raw ingredients (job costs and billing) but no schedule that calculates percent complete, earned revenue, and over/under-billing. You export the data and build the schedule yourself. This guide gives you the formula, a fully worked electrical example, the exact QuickBooks steps for Online and Desktop, and the one input that decides whether the whole thing is trustworthy: your field labor hours.

What Is an Electrical Contractor WIP Report in QuickBooks Work in Progress?

A work-in-progress (WIP) report is a job-by-job schedule that compares how much of each contract you have actually earned against how much you have billed. It answers "am I ahead of my billing or behind it, and is this job still going to hit its margin?"

For an electrical contractor, that matters more than for most trades because labor is your largest and most volatile cost line. On a typical electrical project, labor runs 40 to 60 percent of job cost, and it moves daily. Material is a purchase order you can look up; labor is 6 electricians logging hours across 4 jobs, and if those hours are late, rounded, or logged to the wrong job, every number downstream is wrong.

The WIP report is where that shows up. It converts your costs-to-date into a percent-complete figure, uses that to calculate how much revenue you have earned, and compares earned revenue to what you have billed. The gap is the story.

Does QuickBooks Have a Built-In WIP Report?

No. Neither QuickBooks Online nor QuickBooks Desktop generates a true construction WIP schedule. This is the single biggest surprise for contractors who expect to click a menu and get one.

What QuickBooks does give you is the two data sets a WIP schedule is built from:

What you needQuickBooks Online reportQuickBooks Desktop report
Costs to date, by jobProject profitability, or Profit and Loss by CustomerJob Profitability Detail
Estimate vs. actual costEstimates vs. Actuals (Projects, Plus/Advanced)Job Estimates vs. Actuals Detail
Billed to date, by jobInvoice list by Customer/ProjectJob Estimates vs. Actuals (billed column) or invoice list

You pull contract value, costs to date, and billed to date from those reports, drop them into a WIP template, and the template does the math QuickBooks won't. That is the entire "how" behind every WIP-report product on the market; the honest version is that you can do it yourself in a spreadsheet.

The catch is garbage-in, garbage-out. The costs-to-date figure QuickBooks hands you is only as accurate as the field hours that fed it. That is where accurate job costing for electricians starts, and it is why the labor-capture step below is not optional.

The WIP Report Formula (Percent Complete, Earned Revenue, Over/Under-Billing)

There are four formulas, and they run in order. Each one feeds the next.

1. Percent complete (cost-to-cost method, the standard for construction):
Percent complete = Costs to date / (Costs to date + Cost to complete)

Cost to complete is your best current estimate of what is left to spend. Costs to date plus cost to complete equals your total estimated cost at completion, so this is the same as Costs to date / Total estimated cost.

2. Earned revenue (what you have actually earned by doing the work):
Earned revenue = Percent complete × Contract value
3. Over/under-billing (the punchline):
Over/under-billing = Billed to date − Earned revenue

Positive means you are over-billed (you billed faster than you worked — a cash-flow cushion, but borrowed against future work). Negative means you are under-billed (you did the work and have not billed for it — you are financing the customer, and that is a cash crunch waiting to happen).

4. Gross profit to date (to catch margin fade early):
Gross profit to date = Earned revenue − Costs to date

Compare that gross-profit percentage to what you bid. If the bid said 22 percent and the WIP says 14, the job is fading and you found out with time left to fix it.

A Worked Electrical WIP Example (Real Numbers)

Take a fixed-price fit-out: a $180,000 electrical rough-in and trim for a medical office. You bid it at a 25 percent gross margin, so estimated cost is $135,000.

At month-end, QuickBooks says you have spent $81,000 to date (labor plus material plus one lighting-package sub). You estimate $54,000 of cost remains. You have billed the GC $110,000 against the schedule of values.

Run the formulas:

LineValueHow
Contract value$180,000Signed contract
Costs to date$81,000QuickBooks job cost
Cost to complete$54,000Your estimate
Total estimated cost$135,000$81,000 + $54,000
Percent complete60%$81,000 / $135,000
Earned revenue$108,00060% × $180,000
Billed to date$110,000Invoices issued
Over/(under)-billing+$2,000$110,000 − $108,000
Gross profit to date$27,000$108,000 − $81,000

Reading it: you are 60 percent done, slightly over-billed by $2,000 (healthy — you are not financing the GC), and your gross profit to date is $27,000 on $108,000 earned, which is 25 percent. The job is holding its bid margin. Nothing to fix.

Now change one number. Say your field crew logged hours late all month and $12,000 of labor never made it into this job's costs. QuickBooks shows costs to date of $69,000, not $81,000. Percent complete drops to 56 percent, earned revenue drops to about $101,000, and now you look under-billed and less profitable than you are — on a job that is actually fine. You would chase a billing problem that does not exist and misread your margin. The WIP report did not lie; your timesheets did.

Why Field Labor Hours Decide Whether Your WIP Report Is Real

A 6-electrician crew that rounds up 20 minutes a day, at a $68 fully burdened labor rate, misallocates roughly $17,600 of labor cost a year. Spread that across the wrong jobs and every percent-complete figure on your WIP schedule is off.

That is the failure mode no WIP template fixes: the schedule is arithmetic, and arithmetic on bad inputs produces confident, wrong answers. Costs to date is the input that swings the most, and labor is the biggest, most error-prone piece of it.

Three specific ways paper and memory-based timesheets corrupt an electrical WIP:

  • Wrong-job coding. An electrician on three jobs in one day guesses the split on Friday. The costs land on the wrong project and two WIP rows are now wrong.
  • Late entry. Hours logged a week later miss the month-end cutoff, so costs-to-date understates the real spend and the job looks less complete than it is.
  • Rounding drift. "About 8 hours" every day quietly inflates or deflates labor cost against the estimate.
The fix is capturing hours at the job, coded to the job, the day they happen — then syncing them clean into QuickBooks so costs-to-date is real. That is exactly what FieldTimesheet does: your crew clocks in and out against the specific job (and cost code) from the field, and the hours flow into QuickBooks Online with a two-way sync so the job-cost report your WIP schedule reads from is trustworthy. Accurate time tracking is not a WIP feature — it is the WIP report's foundation.

How to Build the WIP Report in QuickBooks Online (Step by Step)

QuickBooks Online will not build the schedule, but it will hand you every number. You need QuickBooks Online Plus or Advanced for the Projects feature.

  1. Turn on Projects. Settings, Advanced, Projects, toggle on. Create a project per job so costs and invoices attach to it.
  2. Make sure labor is landing on the job. Field hours must be coded to the project. If you are syncing from a time app, confirm each timesheet carries the project (and service item/cost code) so it hits job cost, not overhead.
  3. Pull costs to date. Open the project, read the Costs figure on the Project overview, or run Reports, Profit and Loss by Customer for the period.
  4. Pull estimate vs. actual. In the project, open Estimates vs. Actuals (Advanced) or run the Estimates vs. Actuals report to see budgeted cost against actual.
  5. Pull billed to date. From the project's Transactions or an invoice list filtered to the customer/project, total the invoices issued.
  6. Enter cost to complete. QuickBooks cannot know this — your PM estimates remaining cost per job. This is the judgment input.
  7. Drop it into the template below and let it run the four formulas across every open job.

How to Build the WIP Report in QuickBooks Desktop (Step by Step)

The Desktop path is different and, for job costing, often cleaner because the job-cost reports are more mature.

  1. Run Job Profitability Detail (Reports, Jobs/Time/Mileage) for each job to get actual costs to date by cost type — labor, material, sub.
  2. Run Job Estimates vs. Actuals Detail to see estimated cost against actual, and the billed column for revenue billed.
  3. Confirm labor hit the job. In Desktop, timesheet hours only become job cost when they are marked billable/assigned to the customer:job and run through payroll or a zero-dollar item. Verify labor cost appears on the Job Profitability report, not just in payroll.
  4. Export both reports to Excel (the Excel button on each report).
  5. Add your cost-to-complete estimate per job.
  6. Paste into the WIP template so the formulas calculate percent complete, earned revenue, and over/under-billing for the full portfolio.
Whichever version you run, the manual export is monthly and tedious — which is the real reason WIP reports get skipped. The fewer manual hands touch the labor data, the fewer chances to break it.

How to Read the Report: Spotting Margin Fade and Billing Problems

A WIP schedule is only useful if you know what healthy looks like. Scan three columns every month.

SignalWhat it meansWhat to do
Large under-billingYou did work you haven't invoiced — you're financing the customerBill up to earned revenue now; fix the billing cadence
Large over-billing late in a jobFront-loaded billing; little revenue left to cover remaining costWatch cash — the back half runs on your money
Gross profit % below bidMargin fade — labor or material overrunFind the overrunning cost code before the job closes
Percent complete over 100%Costs exceeded total estimateRe-estimate cost to complete; the job is bleeding

Margin fade is the one to chase. If a job bid at 25 percent shows 15 percent at 60 percent complete, you have real cost left and a shrinking margin. Catching it now — with a change order, a crew adjustment, or a re-plan — is the entire point of running WIP monthly instead of finding out at close-out. For fixed-fee jobs this is your early-warning system; for T&M work the billing math differs, and WIP matters less because you bill cost as incurred.

Retainage, Change Orders, and Why Surety Underwriters Ask for WIP

Two electrical-specific wrinkles distort a naive WIP schedule.

Retainage is the 5 to 10 percent a GC holds back on each invoice. It is earned but not yet collected, so "billed to date" on your invoices already includes retainage you have not been paid. Track retainage receivable separately so your cash picture and your WIP picture do not contradict each other. Change orders move the target. An approved change order raises contract value and estimated cost; an unapproved one you are already working is cost with no matching contract value, which makes the job look unprofitable on the WIP. Only fold change orders into contract value once they are signed, and flag pending ones so you know why a row looks off. Why bonding agents want it: if you do sub work for commercial GCs, your surety and your bank will ask for a WIP schedule. They read it for billing discipline (are you chronically under-billed and starving cash?), margin slippage (are your jobs fading?), and negative cost-to-complete (are you already over budget?). A clean, accurate WIP is what qualifies you for larger bonded work — and "accurate" traces straight back to whether your field hours were captured right.

Free Electrical WIP Report Template

You do not need to buy WIP software to start. Build a spreadsheet with one row per open job and these columns, in order:

ColumnSourceFormula (if calculated)
Job nameQuickBooks project/job
Contract valueSigned contract + approved COs
Estimated costOriginal bid cost
Costs to dateQuickBooks job-cost report
Cost to completePM estimate
Total est. costCalculatedCosts to date + Cost to complete
Percent completeCalculatedCosts to date / Total est. cost
Earned revenueCalculatedPercent complete × Contract value
Billed to dateQuickBooks invoice total
Over/(under)-billedCalculatedBilled to date − Earned revenue
Gross profit to dateCalculatedEarned revenue − Costs to date
GP %CalculatedGross profit / Earned revenue

Enter the four source numbers per job each month; the rest calculate. Sort by over/under-billing to see your cash exposure at a glance, and by GP % to see which jobs are fading. Run it monthly, minimum. On fast-moving jobs, run it every billing cycle. You can sanity-check the labor-cost math for any job with the labor cost calculator before it hits the schedule.

FAQ

Does QuickBooks have a built-in WIP report? No. Neither QuickBooks Online nor QuickBooks Desktop generates a true WIP schedule with percent complete and over/under-billing. Both give you the underlying job-cost and billing reports; you build the schedule in a template from that data. What is a work-in-progress (WIP) report in construction? A job-by-job schedule that compares earned revenue (work actually done) against billed revenue (invoices issued), revealing over-billing, under-billing, and margin fade on jobs that are still open. How do electrical contractors calculate percent complete? Divide costs to date by total estimated cost (costs to date plus cost to complete). This is the cost-to-cost method — the construction standard — and it depends on accurate labor and material costs being posted to the right job. What is cost to complete and how do I estimate it? Cost to complete is your best current estimate of the money left to finish a job. It is a judgment call by the project manager, not a QuickBooks output — remaining labor hours, unpurchased material, and pending subs. How do you calculate earned revenue on an electrical job? Multiply percent complete by the contract value. A job 60 percent complete on a $180,000 contract has earned $108,000, regardless of how much has been billed. What is the difference between over-billing and under-billing? Over-billing means billed to date exceeds earned revenue — you billed ahead of the work (cash cushion, borrowed against future work). Under-billing means you earned more than you billed — you are financing the customer and heading toward a cash crunch. Why is my QuickBooks WIP report inaccurate? Almost always because costs to date are wrong, and labor is the usual culprit: hours coded to the wrong job, entered after the month-end cutoff, or rounded. Fix the field-time capture and the WIP numbers correct themselves. How often should an electrical contractor run a WIP report? Monthly at minimum, and every billing cycle on fast-moving or large jobs. The value is catching margin fade and billing gaps while there is still job left to fix them. How do field labor hours affect WIP accuracy? Labor is 40 to 60 percent of electrical job cost and the most error-prone line. Since percent complete is driven by costs to date, mis-logged or late hours throw off percent complete, earned revenue, and over/under-billing on every affected job — garbage in, garbage out.

Ready to Try FieldTimesheet?

Start capturing every billable hour with time tracking built specifically for electrical contractors.

No credit card required. 14-day free trial.

Tips for Electrical Contractors

Practical time tracking and job costing advice. Unsubscribe anytime.