TL;DR: Construction is the industry where “profitable on paper, broke in the bank” happens most often, and it’s structural: you pay for labour and materials months before you collect, 10% of every invoice sits in holdback, and your biggest customers control your payment timeline. The fix isn’t working harder. It’s building a cash flow system that accounts for holdbacks, tracks job-level cash position, invoices properly under Ontario’s prompt payment rules, and prices the cost of carrying your clients into the work.
A contractor doing $3M a year sat across from us with statements showing a healthy profit — and a bank account that couldn’t cover next Friday’s payroll. Nothing was stolen. Nothing was mismanaged in the obvious sense. The money was simply where construction money always is: locked in receivables, holdbacks, and work performed but not yet billed.
This is the defining financial problem of the trades. Construction has one of the highest business insolvency rates in Canada, and the companies that fail are very often profitable when they do. Here’s why it happens and what the well-run contractors do differently.
The structure of the problem
Three things make construction cash flow harder than almost any other industry:
You finance the job before you’re paid for it. Labour is paid weekly or biweekly. Suppliers want payment in 30 days, sometimes less. But your invoice for that work might not go out until the end of the month, and might not be paid for 30 to 60 days after that. On a big job, you can easily be carrying two to three months of costs before the first dollar lands.
Holdback locks up 10% of everything. Under Ontario’s Construction Act, 10% of every payment is held back until the lien period expires after substantial performance. That’s not a rounding error. On $3M of annual contract revenue, roughly $300,000 is cycling through holdback at any given time — real money you’ve earned, spent the costs against, and can’t touch yet. Worse, that 10% is often most or all of your margin on the job. You can finish a project, get paid “in full,” and still be waiting on your entire profit.
Your payment timeline belongs to someone else. If you’re a sub, you get paid when the GC gets paid. If the owner is slow, everyone downstream is slow, and the smallest companies at the bottom of the chain carry the longest wait with the thinnest reserves.
Know your cash position by job, not just in total
The single biggest blind spot we see in contractor books is that everything is measured at the company level. Total revenue, total expenses, total bank balance. That view hides exactly what’s killing you.
Every active job has its own cash position: costs paid to date, amounts billed, amounts collected, holdback receivable, and work performed but not yet invoiced. A job can be profitable and cash-negative for months. If you’re running five jobs and can’t say which ones are feeding the bank account and which are draining it, you’re managing blind.
This is a bookkeeping structure problem, not an effort problem. Job costing has to be set up so every labour hour, material invoice, and progress billing lands against the right project. Once it does, a simple weekly report answers the question that actually matters: which jobs are we financing right now, and for how much?
Bill like your cash depends on it — because it does
Ontario’s prompt payment rules give you real leverage, but only if you invoice properly. Once a “proper invoice” is delivered, the owner has 28 days to pay the general contractor, and the GC has 7 days after receiving payment to pay subcontractors. The clock only starts when the invoice qualifies — so an invoice missing required information doesn’t just look sloppy, it delays your legal right to be paid.
Practical rules the well-run contractors follow:
- Invoice on schedule, every time. Late invoicing is self-inflicted damage. If your billing goes out the 5th instead of the 1st, you moved your own payday by four days across every job, forever.
- Front-load the billing schedule where you can. Negotiate progress payments that track your actual cost curve — mobilization and material deposits up front, not a payment structure that has you financing 60% of the job before the first draw.
- Track underbilling. Work performed but not yet billed is an interest-free loan to your client that doesn’t show up anywhere unless your books surface it.
- Use the tools the Construction Act gives you. Preserve lien rights on problem accounts, and don’t let the lien period lapse while you’re being polite.
Treat holdback as its own line, not a surprise
Because holdback is earned revenue you can’t collect yet, it needs to live on your books as its own receivable, tracked by job with expected release dates. Two reasons:
Cash forecasting. Holdback releases are lumpy — nothing for months, then a six-figure release when a lien period expires. If your forecast doesn’t include those dates, your picture of the next quarter is fiction in both directions.
HST timing. GST/HST on holdback amounts generally isn’t payable until the holdback becomes due or is paid — which means your bookkeeping needs to handle holdback invoicing correctly or you end up remitting tax on money you haven’t received.
Build the 13-week cash flow forecast
Annual budgets are useless for construction cash management. The tool that works is a rolling 13-week cash flow forecast: week by week, cash in (collections by job, holdback releases) against cash out (payroll, suppliers, equipment payments, HST remittances, WSIB).
Thirteen weeks is long enough to see a crunch coming while you can still do something about it — accelerate a billing, arrange the line of credit, delay a discretionary purchase — and short enough to stay accurate. Updated weekly, it turns cash management from a monthly panic into a ten-minute review.
The contractors who run one stop being surprised. That’s the entire point.
Price the financing into the work
Here’s the mindset shift: carrying your clients is a cost of doing the work, and it belongs in your pricing like labour and materials do.
If a job means carrying $200,000 of costs for 90 days, that carry has a real cost — either interest on your operating line or the opportunity cost of your own capital. Contractors who understand their cash conversion cycle price it in, negotiate deposits, and walk away from payment terms that turn a 12% margin job into an 8% one after financing. Contractors who don’t just feel inexplicably broke while their statements say they’re winning.
Frequently asked questions
Why does my construction company show profit but have no cash?
Because profit is recognized when work is performed, but cash arrives much later — after your invoice cycle, your client’s payment terms, and holdback release. Meanwhile payroll and suppliers were paid months earlier. The gap between those timelines is filled by your bank account, which is why growth often makes the cash problem worse, not better.
How much holdback am I actually carrying?
Roughly 10% of everything you’ve billed on jobs where the lien period hasn’t expired. For most contractors, a quick report of holdback receivable by job is eye-opening — it’s common to find your entire year’s profit sitting in that column.
When can I collect holdback in Ontario?
Generally after substantial performance is certified and published, and the 60-day lien period expires without liens being preserved. Ontario’s rules also provide for annual and phased holdback release on longer projects, which is worth building into contracts on multi-year work.
What makes an invoice a “proper invoice” under Ontario’s prompt payment rules?
It must include specific information: the parties, the work period, a description of the work, the amount and payment terms, and the name and address for payment, among other requirements. Miss a required element and the 28-day payment clock doesn’t start. It’s worth having your invoice template checked once against the requirements rather than losing days on every billing cycle.
Is a line of credit the answer to construction cash flow?
It’s a tool, not a fix. An operating line smooths the timing gap, but if you don’t know your job-level cash position and don’t run a forecast, the line just delays the crunch and adds interest to it. Get the visibility first, then size the line to the actual gap.
How current do my books need to be for any of this to work?
Reconciled and job-costed at least monthly, with billing and collections tracked weekly. If your books are 60 days behind, your 13-week forecast starts from a position you can’t see, and every number downstream inherits the error.
If your jobs are profitable but your bank account never seems to reflect it, the problem is almost certainly structural — and it’s fixable with the right visibility. YBL works with contractors and trades businesses across Ontario on job costing, holdback tracking, and cash flow forecasting that shows the crunch before it arrives. If that’s the conversation you need, get in touch.
