Your P&L says you just closed the best quarter in company history. Your bank account says you cannot cover Friday's payroll without drawing on the line of credit again. Both statements are telling the truth. Construction is the industry where profit and cash live in different time zones, and the distance between them is measured in days-to-paid.
Slow payments cost US construction an estimated $299 billion in 2025. That figure is not an abstraction. It is a hidden tax collected on every project, paid out as interest on borrowed money, crews idled waiting on funded work, bids you could not chase, and owners quietly draining personal accounts to float somebody else's payment schedule.
The payment math is rigged against you
Start with how long the money actually takes. The average general contractor waits over 80 days to get paid, and the industry's payment cycle runs roughly 90 days against the 45 or so that most other industries consider healthy. Subs sit at the end of that chain and inherit everyone's delays: 82% of contractors report waiting 30 or more days past the expected payment date.
The personal cost shows up in the data too. In one 2025 survey, 44% of contractors said they dipped into personal savings to float payments. Read that again: nearly half the industry is acting as an unpaid, unsecured lender to the projects above them, and funding the loan from the family accounts.
How a record month leaves you with less cash
Here is the arithmetic that blindsides growing subs. Say you normally bill $250,000 a month and collect in about 90 days. At any given moment, roughly three months of billings - $750,000 - sits in receivables. That money already left your account as payroll, materials, and equipment. It just has not come back yet.
Now you land the big one and billings jump to $400,000 a month. Receivables swell from $750,000 to $1.2 million. The extra $450,000 is cash you had to spend on labor and materials before a single new dollar arrived. At a 90-day cycle, every additional $1 of monthly revenue locks up $3 in receivables. Your income statement prints a record. Your bank balance prints a warning.
This is why profitable-but-broke is not a paradox. Profit is an opinion about a period. Cash is a fact about a date. In construction, the date the work costs you money and the date the work pays you are two to three months apart, and everything dangerous lives in that gap.
Growth eats cash: the $333,000 nobody budgets
You can put a number on what growth costs before it pays. Receivables tie up roughly annual revenue times collection days divided by 360. Grow from $3 million to $5 million on a 60-day collection cycle and the extra $2 million of revenue adds roughly $333,000 in receivables you must fund - out of retained cash, a line of credit, or supplier terms - before the growth returns a dollar.
Rerun it with your own numbers: added revenue times collection days, divided by 360. A sub going from $1.5 million to $2.5 million at 75 days needs to find about $208,000. Almost nobody puts that line in the growth plan, which is why so many contractors have their worst cash year during their best revenue year.
The one-page weekly forecast
You do not need a CFO or new software to see a crunch coming. You need four lines on one page, updated every Monday in about 20 minutes:
- Cash in hand. Every account balance you can actually spend, added up this morning. Not what the books say you have earned - what the bank says you have.
- Cash coming in the next 30 days. Only draws and invoices that are approved and in the payment queue. If the pay app is not signed, it does not go on this line. Haircut anything with a shaky payment history.
- Cash going out in the next 30 days. Payroll with burden, sub payments, material invoices coming due, loan payments, rent, insurance, taxes. Payroll never slips, so list it first.
- The gap. Line 1 plus line 2 minus line 3. Positive means you sleep. Negative means you have 30 days to fix it with collection calls, a draw request, or the line of credit - on your terms instead of at Friday-at-4pm terms.
Extend it four weeks out and you have a rolling forecast that flags a squeeze a month before it lands. It also changes behavior: collections stop being an awkward afterthought and become a scheduled Monday task with names and dollar amounts attached.
Price the wait into the bid
Here is the move that separates well-run subs from merely busy ones. Waiting to get paid has a cost you can calculate: carrying $100,000 for 90 days on a line of credit at 12% APR costs about $3,000. That is a real project cost - as real as fuel, insurance, or the dumpster - and most bids pretend it does not exist.
The subs who stopped pretending got paid for it. In one analysis, subs who priced working-capital cost into their bids ran 24% gross margins versus 17% for those who did not. Seven points of margin did not come from working harder. It came from refusing to lend money at 0% and calling it a bid.
Shrink the gap before you finance it
Pricing covers the cost of the gap. These habits shrink the gap itself:
- Take deposits. A 10-30% deposit turns a project from something you finance into something the client co-funds. Deposit caps vary by state for certain kinds of work, so treat this as operational guidance rather than legal advice and confirm your ceiling with your attorney.
- Bill on milestones, not completion. Progress billing tied to rough-in, inspection, and delivery events keeps cash arriving while the work happens instead of 90 days after it ends.
- Invoice the day the milestone hits. An invoice that waits for month-end close adds up to 30 free days to an already long cycle. Same-day billing is the cheapest financing you will ever find.
- Chase pay apps before the due date. Call five days ahead to confirm the pay app is approved and scheduled. Most late payments are not malice - they are your invoice sitting in someone else's stack.
- Track retainage separately. Retainage is not a receivable you can count on in 30 days. Keep it on its own line so it never pads the forecast.
None of this requires the market to change or GCs to become saints. It requires one page every Monday, one extra line in every bid, and billing habits that treat cash as the product it actually is. The contractors who run this way are not luckier. They just stopped confusing a strong P&L with a company that can make payroll.
Frequently asked questions
The average general contractor waits over 80 days, and the industry's full payment cycle runs roughly 90 days against a healthy 45. Subs typically wait even longer because money flows down the chain: 82% of contractors report being paid 30 or more days past the expected date.
Because costs go out in days while revenue arrives in months. Payroll and materials are paid weekly, but the draw for that work lands 60-90 days later, so every dollar of growth increases the receivables you must fund. Profit measures a period; cash measures a date.
A quick estimate: added annual revenue times your collection days, divided by 360. Growing from $3 million to $5 million at a 60-day cycle ties up roughly $333,000 in new receivables before the growth pays you anything. Fund it with retained cash, a committed line of credit, or shorter collection terms - or slow the growth to what your cash can carry.
Yes, and the data says the market bears it: subs who priced working-capital cost into bids ran 24% gross margins versus 17% for those who did not. Compute the carry cost (contract value x expected days-to-paid / 360 x your borrowing rate), add it as a bid line, and offer a small fast-pay discount.