The bottom line
On an EPC job, profit and cash are different clocks, and the gap between them is where contractors get caught. Cash-flow forecasting turns certified work into expected collections: for each project, model the RA bill certification timeline, the retention held back, and the client's actual payment terms and behaviour — not the contracted ones — to project when cash actually arrives. Set that against outflows (subcontractor certifications, supplier payments, wages, plant) on the same timeline to see the net position and the troughs before they happen. Across a portfolio, the aggregate exposure is what matters. A spreadsheet cannot keep this live because certification, retention and payment behaviour change weekly; a model built on the project data in a governed layer can. Where it breaks: the forecast is only as good as the payment-behaviour assumptions, and a disputed variation can invalidate a collection overnight.
In This Article
Why a profitable job can run out of cash
The cost report tells you the project is making margin. The bank balance tells you a different story, because the two measure different things on different timelines. Profit recognises value as work is done; cash arrives only after that work is certified, after retention is deducted, and after the client pays on terms that are often longer in practice than on paper. In between, the contractor has already paid subcontractors, suppliers and wages for the work that generated the unpaid certificate.
This timing gap is the central financial risk in EPC, and it is invisible to a margin report. Cash-flow forecasting is the discipline that makes it visible: projecting, per project and across the portfolio, when cash will actually come in and go out, so the troughs are seen weeks ahead rather than discovered when a supplier payment bounces. Done well it is the difference between managing a cash position and reacting to one.
From certified work to expected collections
The inflow forecast starts with certified work, not invoiced or merely completed work. An RA (running account) bill is raised, it goes through certification, and only the certified amount becomes collectable — so the forecast models the certification timeline for each bill, including the lag between submission and certification, which is itself often negotiable and frequently slips.
From the certified amount, the forecast projects the collection date using the client's payment terms and, crucially, their actual payment behaviour rather than the contracted terms. A client contracted at 30 days who reliably pays at 55 should be modelled at 55, because forecasting on the contract rather than the behaviour produces an optimistic model that always disappoints. The output is a dated schedule of expected collections per project — the realistic money-in timeline, not the hopeful one.
Forecast collections on how the client actually pays, not on the contract. A model built on contracted terms is a model that is wrong in the contractor's favour — which is the most dangerous direction for a cash forecast to be wrong.
Retention bends the timeline
Retention is cash earned but withheld — typically a percentage of each certified bill, released in tranches at practical completion and at the end of the defects liability period, often many months or years after the work. It has to be modelled as its own line in the cash forecast, because it is a predictable future inflow that a naive model either forgets or counts too early.
Getting retention into the forecast does two things: it stops the near-term collection figure being overstated (the retained portion is not coming now), and it surfaces the retention release dates as real, claimable future inflows that are easy to forget and easy to leave unclaimed. On a portfolio of projects the accumulated retention is frequently close to the contractor's margin, so modelling its release timeline accurately is not a detail — it is often the difference between a comfortable and a stressed cash position.
Outflows on the same clock
A cash-flow forecast is only useful if the outflows sit on the same timeline as the inflows. The major ones in EPC are subcontractor payments (themselves driven by subcontractor certification and their own retention terms), supplier payments for materials, wages and staff costs, and plant and equipment. Each has its own timing, and the net position is the inflow schedule minus the outflow schedule, week by week.
The value is in the net view: a project can show a healthy margin and a deeply negative cash position in a particular month because a large material payment and a subcontractor certification both fall before the matching client collection arrives. Seeing that trough in advance is what allows action — accelerating a certification, negotiating a supplier term, drawing on a facility deliberately rather than scrambling. A forecast without the outflows on the same clock is half a picture and gives false comfort.
The portfolio view is where decisions are made
Individual project forecasts matter, but the contractor's actual cash position is the aggregate across every live project, and that is where the real exposure and the real decisions live. One project's collection covers another's supplier payment; a synchronised trough across several projects is a genuine liquidity risk that no single project view reveals. The portfolio cash forecast is the instrument the finance director actually needs.
This is also where the spreadsheet finally fails. Each project's certification status, retention position and client payment behaviour change weekly, and maintaining a consolidated, current portfolio forecast by hand across many projects is impossible to keep accurate — it is stale the moment it is built. A model that reads live from the project and billing data — in a Microsoft estate, from a Fabric lakehouse unifying the ERP, the RA billing and the payment history — keeps the portfolio forecast current and lets the finance team see the consolidated position and its troughs as they evolve, not at month-end.
Where this breaks
A cash forecast is a model of assumptions, and the payment-behaviour assumptions are the fragile ones. A client who has paid reliably can slow down when their own cash tightens, a certification that has always taken two weeks can take six on a disputed bill, and a forecast that assumed the historical pattern will be wrong when the pattern changes. The model should carry its assumptions explicitly and be stress-tested, not presented as a single confident number.
Disputed variations are the sharpest risk: a certified-and-expected collection can evaporate if a variation is challenged, and a forecast that counts contested amounts as secure is dangerously optimistic. And the forecast is only as current as the underlying data — if certification status and payments are not captured promptly in the system, even a live model forecasts from stale inputs. The discipline of keeping the project data current is the prerequisite the modelling depends on.
What to do first
Build the forecast on real certification and payment data, project by project, then consolidate.
- For each project, model the RA bill certification timeline, retention held, and collection dates based on the client's actual payment behaviour, not contracted terms
- Put the outflows — subcontractor certifications, supplier payments, wages, plant — on the same weekly timeline to get the net position
- Model retention release dates as explicit future inflows so they are neither overstated now nor forgotten later
- Consolidate to a portfolio view to see synchronised troughs and the true aggregate position
- Build it on live project and billing data (a Fabric lakehouse over the ERP and RA billing) so it stays current, and carry the payment-behaviour assumptions explicitly
If your project cash position lives in a spreadsheet that is stale by the time it is finished, you are managing EPC cash in the rear-view mirror. Book 30 minutes with Amit on a live cash-flow forecast from certified work to expected collections across your portfolio. No slides, no pitch deck, no obligation to proceed.
Free Assessment
Where does your operation sit on the data maturity curve?
8 questions. 3 minutes. You get a scored breakdown across data infrastructure, analytics readiness, and automation potential — with a specific next step for your industry.