BOOKKEEPER, CONTROLLER, CFO. THREE DIFFERENT JOBS.
A bookkeeper records what happened, a controller confirms the record is right now, and a CFO decides what to do next. Most subcontractors between $1M and $12M have the first, borrow the second from their CPA once a year, and have never had the third. Adding a better bookkeeper doesn't produce the other two.
Contractors ask this question when the books are accurate and the business still doesn't make sense, and the reason is that accuracy is only the first of three functions. Below about $3M an owner can be their own controller, because they're close enough to every job to catch an error by feel. Between $3M and $12M that stops working and the usual response is to hire another bookkeeper, which improves the record and changes nothing about the decisions. Above roughly $12M to $15M the CFO function starts to justify a full time salary. Inside that middle band the practical answer is one engagement covering all three, because the spaces between three separate providers are where the money goes.
WHAT EACH ONE DOES.
| Capability | Bookkeeper | Controller | CFO |
|---|---|---|---|
| Time direction | Backward, what happened | Present, is it right now | Forward, what happens next |
| Core output | Coded transactions and bank recs | A close you can rely on and a signed off WIP | A 13 week forecast and written decisions |
| Owns job cost structure | No, works inside it | Reviews it | Designs it against your estimating |
| Owns the overhead rate | No | Checks the calculation | Sets it and feeds it into bidding |
| Answers can we afford this | No | No | Yes, simulated before you commit |
| Catches a losing job mid job | No | Yes, through cost to complete review | Yes, and changes the next bid because of it |
| Typical revenue where needed | Every company | $3M and up | $1M and up, full time above about $12M |
| What happens without it | No usable record at all | Reports nobody trusts | Accurate reports and guessed decisions |
All three functions exist in every construction company whether or not anyone is assigned to them. When nobody is, the owner is doing them at whatever hour is left.
WHEN THE PROBLEM IS THE RECORD.
A bookkeeper is the right hire when transactions are behind, the bank hasn't been reconciled in months, or job costs aren't being coded at all. That's a real problem and it has to be fixed before anything above it can work, since every report on the site depends on a record existing.
The common mistake is expecting this hire to fix a decision problem. If your books are current and reconciled and you still can't tell which jobs earn or when you'll run short, the bookkeeper is doing their job and the missing function is above them. Replacing them at that point produces the same reports from somebody new.
WHEN YOU DON'T TRUST YOUR OWN REPORTS.
You need the controller function when you find yourself mentally adjusting numbers before you rely on them. That adjustment is the control that's missing. It usually appears between $3M and $6M, when the owner stops being close enough to every job to catch a coding error by instinct.
What a controller does is approve costs before they post, catch double entries and missing accruals in the close, reconcile the balance sheet to reality, and review WIP and cost to complete with whoever runs the job. Most companies in this band need the function and can't justify the salary, which is why it's usually bought rather than hired.
WHEN THE PROBLEM IS WHAT TO DO NEXT.
The CFO function is what you need when the numbers are right and the decisions are still guesses. Can we fund this bonus, can we take a job 50 percent larger than our biggest, is our overhead rate current, which week are we short in nine weeks. None of those are answerable from a historical report, however accurate it is.
A full time construction CFO typically starts to make sense above roughly $12M to $15M of revenue. Below that the work is real and the salary isn't, which is the entire reason fractional CFO engagements exist for this size of company.
WHERE WE COME OUT.
For a commercial subcontractor between $1M and $12M, the answer is one engagement covering all three rather than three providers, and the reason is scope gaps. A bookkeeper who doesn't own the job cost structure codes into whatever exists. A CPA who reviews once a year can't be the controller. Nobody in that arrangement is responsible for whether the close happened in time to change a decision, so the owner becomes the integration layer between three vendors, which is the role they're least available to fill.
That's what we do. We aren't a bookkeeping firm and we aren't a CPA firm, and the whole design is that there are no spaces between the three functions for money to fall through. If your books are genuinely behind, start there and fix the record first, because none of the rest works without it.
