Percentage-of-completion (POC) accounting records revenue as you earn it on each job — based on how far the work has actually progressed — not when the check clears. Cash basis swings with billing and collection timing. POC asks a simpler question: how much of this contract have you performed?
For contractors with progress billings, retainage, and jobs that span months, that difference is the difference between a P&L you can run the business on and a P&L that measures the calendar. Below: what POC is, the cost-to-cost formula, how it maps to a WIP schedule, the over/under billing bridge, a labeled example, and when profit gain or fade shows up.
| Term | Meaning |
|---|---|
| POC accounting | Recognize revenue as work is performed on long-term contracts (job by job) |
| Percent complete | Usually cost-to-cost: costs to date ÷ estimated total cost |
| Earned revenue | Contract value × percent complete |
| Billing position | Billed to date − earned revenue → over-billed or under-billed |
POC is the book method that matches performance to the period. It does not invent profit — it times when profit shows. Thin bids still lose money under POC; the schedule just stops hiding the fade behind a fat draw or a slow pay app.
Blackline Financial is construction-only bookkeeping and advisory for contractors and specialty trades (roughly $1M–$30M). We do not prepare tax returns. Job costing, monthly close, and WIP / POC reporting for Frame-level work live on services — every engagement starts with a DIG Diagnostic, and every package is custom-quoted.
Most contractors measure percent complete with cost-to-cost:
Percent complete = Costs incurred to date ÷ Estimated total cost at completion
Earned revenue = Current contract value × Percent complete
Example inputs (same job):
| Input | Amount |
|---|---|
| Contract value (incl. approved COs) | $1,000,000 |
| Estimated total cost (EAC) | $800,000 |
| Costs to date | $400,000 |
Then: percent complete = $400,000 ÷ $800,000 = 50%. Earned revenue = $1,000,000 × 50% = $500,000.
If you've billed $520,000, you're $20,000 over-billed. If you've billed $380,000, you're $120,000 under-billed. That gap is not trivia — it's the bridge to cash and the balance sheet. Details: over-billing vs under-billing.
Why the estimate matters more than the formula. Stale estimated total cost is how profit fade hides. If true costs-at-completion climb to $900,000 and nobody updates the EAC, the books still think you're 50% done when you're only ~44% done ($400K ÷ $900K) — so they overstate earned revenue and understate the fade. Honest, current estimates are not optional polish; they are the method.
Other percent-complete methods (units of work, labor hours, surveys of work performed) exist in accounting literature. Cost-to-cost is what banks, sureties, and most construction WIP schedules expect — and what this page means by POC unless noted otherwise.
If this feels familiar, it should: POC accounting is what happens when the WIP schedule stops being a side spreadsheet and starts driving the books. You can't run honest POC without a current WIP, and a WIP without POC entries is a report that never hits the financials.
| WIP column | Role in POC |
|---|---|
| Contract value | Denominator for earned revenue (must include approved change orders) |
| Estimated total cost | Denominator for cost-to-cost % complete — update when jobs drift |
| Costs to date | Numerator for % complete — needs complete job costing |
| Percent complete | Costs to date ÷ estimated total cost |
| Earned revenue | Contract × % complete — the POC revenue figure |
| Billed to date | Progress billings / pay apps sent (not cash collected) |
| Over / under billing | Billed − earned — posted to the balance sheet as part of close |
Full column walkthrough and a three-job read: what is a WIP schedule. Monthly close rhythm: how we close.
POC creates two numbers that cash basis never separates cleanly: earned and billed. The gap between them is your billing position.
Over-billed (billings > earned revenue): You've invoiced ahead of completed work. Cash feels strong — but you're holding money for work you still owe. On the balance sheet it's typically a liability ("billings in excess of costs" / billings in excess of revenue). Modest over-billing is often healthy: customers fund the job. Heavy, chronic over-billing is job borrow — the front of the job lends you cash; the back takes it back.
Under-billed (earned revenue > billings): You've done work you haven't invoiced. You're financing the owner's project. Chronic under-billing is a top reason contractors feel broke while the P&L says they're fine. Sometimes it's a missed draw or slow billing. Sometimes it's unapproved change orders — or cost overruns that inflate percent complete so "earned" outruns what you can actually bill. That last case is a margin problem wearing a timing problem's clothes.
Rule of thumb: slightly over-billed on most jobs is a healthy default. Trap, fix, and lender read: over-billing vs under-billing.
Example only — not a client case, not a quote. One open job at month-end under cost-to-cost POC:
| Line | Amount |
|---|---|
| Contract value | $1,200,000 |
| Estimated total cost (current) | $960,000 |
| Costs to date | $480,000 |
| Percent complete | 50% ($480K ÷ $960K) |
| Earned revenue | $600,000 |
| Billed to date | $540,000 |
| Billing position | $60,000 under-billed |
| Estimated gross profit at completion | $240,000 (20% of contract) |
| Gross profit earned to date (illustrative) | ~$120,000 (50% of estimated GP) |
Illustrative only. Not a client case, not a quote.
How to read it:
Stack three jobs like this on a WIP schedule and you see the portfolio picture banks and sureties ask for.
Profit fade (also searched as gain fade / fade analysis): estimated gross profit at completion shrinks versus the bid (or versus last month's estimate). Costs-at-completion climb, approved contract value doesn't keep up, or both. Fade shows up on the WIP first — in the estimated GP column and in a rising under-bill that you can't invoice away — months before the bank account confesses.
Profit gain (the mirror): estimated GP at completion improves — buyout savings, efficient production, favorable change orders that add margin. Gain is real only when the EAC update is honest; "gain" from a stale high cost estimate that never gets corrected is fiction.
Why fade matters under POC:
There is no separate "gain-fade report" that replaces the WIP. Gain/fade analysis is reading estimated GP (and EAC changes) across periods on the same schedule that drives POC.
Cash basis records revenue when money arrives and costs when money leaves. POC records revenue as you earn it. Same contractor, same two months:
| Month | What happened | Cash-basis P&L says | POC reality |
|---|---|---|---|
| March | Collected a $200K mobilization draw; crews barely started | Huge profit | Little work earned — most of that cash is a liability (over-billing) |
| April | Paid subs and suppliers $180K; pay app slow, nothing collected | Big loss | Productive month — revenue was earned; under-billing (or AR) is the timing issue |
Neither cash-basis month's "profit" means much. Stack twelve and the annual P&L is noise — then decisions ride that noise (trucks after a fat March; passing on good work after a scary April).
When you'll be asked for POC (better: switch first): bonding programs that underwrite from POC financials; growing bank lines that want WIP covenants; scale where progress billing makes cash-basis distortion bigger than the profit you're measuring; a sale or partner who will restate to POC anyway. Contractors who switch on their own timeline often have years of clean POC history by the time a surety asks — which is what bonding agents want to see.
How you run the books and how you file taxes are related decisions, but they are not the same decision. Many contractors keep POC (or accrual) books for management, banking, and bonding while their CPA uses a different method on the return when rules allow. Blackline does not prepare tax returns and does not advise which tax method to elect. Our lane is making the books tell the truth for operators, banks, and sureties — your tax preparer will be glad they do. Questions about completed-contract, cash, or other tax treatments belong with your CPA.
POC isn't a report you bolt onto generic bookkeeping. It's the output of an accounting process built for construction.
POC (percentage-of-completion) accounting recognizes revenue as work is performed on each job — usually using cost-to-cost percent complete — instead of when cash is collected. It's the book method banks and sureties expect for meaningful bonding and credit.
Percent complete = costs to date ÷ estimated total cost at completion. Earned revenue = contract value × that percentage. The difference between earned revenue and billings is over- or under-billing.
Same math, two seats. POC is how earned revenue hits the books; the WIP schedule is the job-level proof and the monthly control. You can't run honest POC without a current WIP.
Underbillings (under-billed position) means earned revenue exceeds billings — you've performed work you haven't invoiced. It often appears as an asset on the balance sheet. Causes range from missed draws to unapproved change orders to margin problems. See over/under billing.
Profit fade is when estimated gross profit at completion shrinks versus the bid or prior estimate. Under POC, updating the estimated total cost lowers percent complete and earned revenue — so fade hits the books when estimates are honest. Gain is the mirror when estimated GP improves for real reasons. Blackline can maintain the monthly WIP / POC close for construction businesses — contact or services; we don't prepare tax returns.
Tell us about your construction business and we'll put together a custom quote — usually within one business day. DIG first; no invented rate card.
Get a custom quote →Call (480) 617-2664
Blackline Financial · 4320 E Brown Rd, Suite 103, Mesa, AZ 85205