top of page

Construction WIP Reconciliation: A Monthly Process for AU Builders

  • May 27
  • 7 min read

What WIP reconciliation actually means (and why monthly matters)

WIP — Work in Progress — is the bridge between cost incurred and revenue recognised in your construction GL. It's where unbilled work sits, where cost-to-complete estimation lives, and where the auditor focuses most of their year-end attention.

Most AU builders we onboard run a WIP reconciliation annually — usually three weeks before year-end audit, in a panic. By then the gap between job-cost reality and GL recognition has compounded across twelve months. The reconciliation becomes a forensic exercise. The auditor finds inconsistencies. Prior-period adjustments get posted. The bank reads the audit report and asks questions.

The fix is a monthly cadence. Forty-five minutes per month per finance lead. Here's exactly how we run it for every TechEdge client at Financial Controller tier and above.

What goes into WIP under AASB 15

In an AU construction GL, WIP typically captures three things:

  1. Costs incurred on active projects, not yet recognised as cost-of-sales. Labour, materials, subcontract, plant, allocated overheads — sitting in WIP until matched to a recognised revenue period.

  2. Unbilled revenue (contract asset). Revenue recognised at month-end (via percentage of completion accrual) that hasn't yet been invoiced. Sits as a contract asset on the balance sheet under AASB 15.

  3. Over-billed amounts (contract liability). Billings ahead of revenue recognition. Sits as a contract liability — you've taken cash for work not yet performed.

Plus the retention asset (separately classified as a contract asset under AASB 15) that I've covered in the Construction Accounting Australia cornerstone piece.

Each of these flows through different GL accounts. The monthly reconciliation is the discipline of tying them all back to the active project register and the AASB 15 framework.

Why the GL and project register drift apart

Six drift sources we see most often during onboarding:

  1. Cost coding lag. Subcontractor invoices arrive on the 28th but don't get coded until day 8 of the following month. Cost shows up in the wrong period.

  2. Stale cost-to-complete estimates. Project manager hasn't refreshed the estimate in 3 months. Revenue recognition is calculated against a baseline that no longer matches reality.

  3. Approved variations not entered. Operations marks variation complete; project register isn't updated; revenue recognition under-counts the project's total value.

  4. Daywork accrual not recognised. Daywork performed mid-month gets accrued late or not at all. Revenue under-recognised in the period.

  5. Retention split missed. Progress claim recognised as 100% receivable, when 5% should be in retention asset. Audit finding waiting to happen.

  6. Allocated overheads not flowing. Plant, overheads, indirect labour sitting in clearing accounts, never allocated to specific projects. Project margins look better than they are.

Each one alone is fixable. Accumulated over twelve months, they create the year-end audit problem.

The monthly WIP reconciliation process (7 steps)

Standardised cadence. Last working day of the month, before close.

Step 1. Pull the active project register

For every active project, pull the latest from your job-cost system (Xero Projects, Procore, Workbench, Buildertrend — whichever ERP):

  • Contract value (original)

  • Approved variations total (running)

  • Dayworks accrued (running)

  • Costs incurred to date (by category)

  • Cost-to-complete estimate (refreshed monthly by PM)

  • Forecast final cost

  • Forecast margin at completion

Save the register snapshot as PDF or Excel: WIP_register_2026-05.xlsx. The auditor will ask for monthly snapshots at year-end.

Step 2. Refresh cost-to-complete estimates with project managers

This is the single highest-leverage step. Bad estimates = bad recognition.

For each active project, the PM signs off on the current cost-to-complete number. If material has changed since last month — site condition surprises, design changes, sub price shifts — the estimate should reflect it.

Document the changes. Estimate movements >5% from prior month warrant a written note in the project file. The auditor will sample these.

Step 3. Calculate revenue to recognise this period

Per project:

Revenue earned to date  = (Costs incurred / Forecast final cost) × Contract value
                          (where contract value includes approved variations)

Revenue to recognise    = Revenue earned to date
this period               − Revenue previously recognised

For a project where: - Contract value (incl. variations) = $5,150,000 - Costs incurred to date = $2,060,000 - Forecast final cost = $4,120,000 - Revenue previously recognised = $2,400,000

Revenue earned to date = ($2,060,000 / $4,120,000) × $5,150,000 = $2,575,000Revenue to recognise this period = $2,575,000 − $2,400,000 = $175,000

That's the journal that hits this month.

Step 4. Reconcile to billings

Compare revenue recognised to billings raised in the period:

  • If revenue > billings → contract asset (unbilled revenue). Increases that line.

  • If billings > revenue → contract liability (over-billed). Increases that line.

Both are normal. Persistently large balances either way warrant investigation.

Step 5. Apply the retention split

Each progress claim raised in the period splits 95% trade receivable + 5% retention asset (assuming standard 5% retention). Per the cornerstone piece on Construction Accounting Australia, this is what AASB 15 requires — retention is a contract asset because the right to payment is conditional on defects rectification.

Reconcile: total retention asset on the balance sheet at month-end should equal the sum of unreleased retention across all active and recently-completed projects. If it doesn't, you have an entry missing.

Step 6. Post the journals

For each project, the typical month-end journal:

Dr  Construction cost of sales              [costs in period]
    Cr  WIP / project costs                       [costs in period]

Dr  Contract asset (unbilled revenue)       [revenue minus billings, if positive]
    Cr  Construction revenue                      [revenue in period]

[OR if over-billed:]
Dr  Construction revenue                    [revenue in period — negative correction]
    Cr  Contract liability (over-billed)         [billings minus revenue, if positive]

Plus the retention split journal for each progress claim raised.

Step 7. Document + reviewer sign-off

Three artefacts per month:

  1. The active project register snapshot

  2. The WIP reconciliation worksheet (cost-to-complete, revenue calculations, billings reconciliation, retention split)

  3. The journal posting log

Store in a date-stamped folder. Preparer + reviewer initials on the worksheet. Two pairs of eyes.

Keep for seven years.

Common WIP reconciliation mistakes

Mistake 1 — Reconciling annually, not monthly

Twelve months of small drift becomes one large unrecoverable gap. Fix: monthly cadence, calendar invite, last working day of the month, 45 minutes.

Mistake 2 — Project managers not refreshing cost-to-complete

The PM is the source of truth for cost-to-complete. Finance can't refresh it from the GL. If PMs aren't engaged in the monthly process, the recognition numbers drift. Fix: monthly PM sign-off as part of the close timetable. Hold the close until estimates are in.

Mistake 3 — Allocated overhead sitting in clearing accounts

Plant, indirect labour, site overheads allocated monthly but never flowing through to specific projects = inflated project margins. Fix: monthly allocation journals based on the active project list. Allocation method (machine hours, direct labour hours, square metres) documented in policy memo.

Mistake 4 — No reconciliation between job-cost system and GL

If your job-cost system (Procore, Buildertrend) and your GL (Xero, MYOB) aren't reconciled monthly, you're running two sources of truth. Fix: monthly reconciliation. Total project costs in job-cost system = total construction WIP + cost-of-sales in GL.

Mistake 5 — Retention split missed on progress claims

Each progress claim gets recorded as 100% receivable instead of 95% receivable + 5% retention asset. Fix: at-source workflow change. The progress claim entry posts to both accounts. Bookkeeper trained on the split.

The downloadable worksheet

The complete reconciliation worksheet is built as a one-page Excel template. We hand it to every Financial Controller tier client during onboarding. Columns:

Column

Source

Purpose

Project code + name

Project register

Anchor

Contract value (with approved variations)

Variation register

Total transaction price

Costs incurred to date

GL / job-cost system

Numerator for percentage of completion

Cost-to-complete (current estimate)

PM sign-off

Denominator input

Forecast final cost

Calculated

= Incurred + cost-to-complete

% complete

Calculated

= Incurred / Forecast final cost

Revenue earned to date

Calculated

= % complete × contract value

Revenue previously recognised

GL

Anchor for incremental recognition

Revenue to recognise this period

Calculated

The journal amount

Billings raised this period

AR ledger

For contract asset / liability reconciliation

Contract asset / liability movement

Calculated

Journal direction

Retention asset (5% of progress claim)

Calculated

For retention split journal

Forecast margin at completion

Calculated

= Contract value − Forecast final cost

Variance from bid margin

Compared to original bid

Project health indicator

If you'd like the template, the Finance Function Maturity Audit lead form auto-sends a copy on request.

When this becomes a specialist conversation

A bookkeeper can run the monthly reconciliation once the chart of accounts is set up and the worksheet template is in place. The CPA-led work is:

  • Chart of accounts setup — sub-accounting WIP, contract asset / liability, retention, by project where material.

  • Accounting policy memo — your AASB 15 policy on revenue recognition method (input cost-to-cost vs output), variation treatment, claim constraint, retention treatment.

  • Audit liaison — defending the cost-to-complete estimates, answering questions on contract asset / liability movements, presenting the documentation chain.

  • Annual policy review — when the project portfolio changes (new client types, multi-state operations, different contract structures), re-tune the policy memo.

If your construction business is running three or more concurrent projects and the WIP reconciliation isn't already a monthly process, that's the trigger. At TechEdge we install this as part of Financial Controller tier onboarding ($4,950/month) — typically operating from Month 2 of an engagement onwards.

TL;DR for the busy founder

  1. WIP reconciliation is monthly, not annual. Forty-five minutes saves you the year-end audit panic.

  2. The PM is the source of truth for cost-to-complete. They must sign off monthly.

  3. Revenue recognition = (Costs incurred / Forecast final cost) × Contract value.

  4. Reconcile revenue against billings. Difference = contract asset (under-billed) or contract liability (over-billed).

  5. Each progress claim splits 95% receivable + 5% retention asset. Per AASB 15.

  6. Document everything. Three artefacts per month: register snapshot, worksheet, journal log. Seven-year retention.

  7. Two pairs of eyes — preparer + reviewer sign-off.

Related reading

Published 27 May 2026 by Rami Rajkumar, CPA. TechEdge Finance Office — outsourced finance department for AU construction, civil, EPC, solar, renewables and carbon-credit operators between $2M and $50M+ revenue. Hawthorn VIC, Australia-wide remote.

The information in this article is general accounting and operational guidance based on AASB 15 + ATO published positions current at May 2026. It is not financial, tax, or legal advice. Specific facts and circumstances require specific professional input.

 
 
 

Recent Posts

See All

Comments


bottom of page