Profit versus cash
Profit is an accounting figure. Cash is what the business can actually spend today. On a roofing job, the two rarely line up. Revenue is recognized well before the customer pays. Costs land on the books in a different rhythm than the money leaves the bank.
Owners who only watch the profit-and-loss statement can be surprised when payroll week arrives and the account is empty.
Receivable timing
Retail jobs, insurance work, and commercial contracts each have their own payment cadence. Invoices sent this week may not turn into cash for 30, 60, or 90 days. Meanwhile the crew has already been paid and the material has already been ordered.
Material purchasing
Deposits with a supplier, drop-shipped material, or bulk purchases for multiple upcoming jobs create a large cash outflow before the job produces any revenue at all.
Payroll and labor burden
Wages are only part of the cost of labor. Payroll taxes, workers' compensation, benefits, and vehicle costs need to reach the correct job for the margin to mean anything.
Active jobs and customer financing
Every open job represents cash the business has already spent that has not yet been recovered. Customer financing programs, processing fees, and refunds can quietly reduce the amount that actually reaches the bank.
What to do
A short list of practical steps that usually help:
- Build a rolling 13-week cash-flow forecast
- Split reporting between accrual profit and cash movement
- Assign every labor and material cost to a job
- Review A/R aging weekly, not monthly
- Track supplements and change orders in job margin as they happen
