CFOS for QuickBooks, coming January 2027See what you get
CFOSFOR YOUR SIZE
CFOS FOR QUICKBOOKS · FOR YOUR SIZE

Stop finding out at tax time which jobs made money

Most owners under $10M learn which jobs made money when the tax return comes back. You can see it while the job is going, with the QuickBooks Online your bookkeeper already uses. Here's how.

We email you when CFOS for QuickBooks opens, plus a few updates before then. Your address stays with Run On CFOS. One click unsubscribes.

30 days free, a 90-day money-back guarantee, and cancel anytime. It opens January 2027. We email you the day it opens.

You find out when it's too late to do anything

You finished a job in the spring and it felt fine. The crew was busy, the GC paid, and the account balance looked okay. Then in the fall your accountant says the year was thin, and no one can tell you which jobs caused it.

That's the normal way for a $3M or $6M contractor to learn about profit. The books get closed months late, costs go into a few big buckets, and the only report you get is a profit and loss for the whole company. A company total can't tell you that the parking structure paid and the tenant buildout didn't.

What you want is the answer to one question while the job is still open. If we keep going like this, what will we make? That takes three things, and you probably have most of them already.

How to see profit by job with what you have

Start with the estimate. Your bid had labor, material, equipment, subs and trucking in it. Write the bid down by cost code, even if you only use ten or twelve codes, and treat that as the budget for the job.

Next, make QuickBooks Online record costs against the same codes. Every bill, every card charge and every labor entry gets a job and a code. If a bill goes to the job with no code, you can see the job total but you can't see what's burning the money, so make your bookkeeper enter both every time.

Then add committed cost. A subcontract you signed for $80K is cost you owe even if only a fifth of it has come in. A purchase order is the same. Keep a simple sheet with the job, the vendor, the amount committed and the amount billed so far, because the bills in QuickBooks only show what already came in.

Last comes cost to complete. For each open job, ask the person in charge of it how much more it will cost to finish, code by code. Add that to the cost so far and you have the cost at completion. Compare it to the contract and you know the profit you're heading for, not the profit you hoped for.

The 20 minute weekly routine

Pick one day, say Monday, and block 20 minutes. Open each active job and look at three numbers: cost so far against budget, billed so far against contract, and what the PM thinks it will cost to finish. Write one line per job, and if a job moved the wrong way since last week, write why.

Don't wait for the month end close to do this. A job that's $20K over on labor in week three can be fixed in week four, and the same overrun found in month six is just a loss with a report attached. The habit counts for more than the tool you use.

If your spreadsheet gets to be too much to keep up, that's the signal to let software read the same QuickBooks data for you. Until then, this routine works. It costs nothing but the 20 minutes.

Compare it to published averages

It helps to know what a normal result looks like. The table below holds the published all-trade averages for contractors at your size, and the net profit figures are before taxes. Your trade may be higher or lower, so use it as a rough check, not a verdict.

If your jobs come in under the published gross margin, the problem is usually in the job work. It might be bids that are too low, labor that went long, or extras you never billed. If gross margin is fine but net profit is thin, look at overhead.

RevenueOverheadGross marginNet profit, before taxes
$1M to $5M15.1% average
14.1% CFOS target
22.1% average
25% CFOS target
7% average
11% CFOS target
$5M to $10M14.1% average
13.1% CFOS target
23.4% average
26% CFOS target
9.4% average
12.9% CFOS target
HOW THE NET PROFIT FIGURES ARE BUILT.

Gross margin and overhead come from figures CFMA, Jones Maresca and other sources publish by trade and size. Net profit is computed, not surveyed: net profit = gross margin minus overhead. Nothing comes out for taxes, interest or other income and expense, so it is a before tax figure, on the same basis as CFMA's net income before taxes.

CFMA's 2025 medians are 7.1 percent before interest and taxes and 6.7 percent net income before taxes. Gross margin minus overhead leaves out interest and other income and expense, so a figure here can come in a little above or below a reported net income on the same business.

Above the $10M to $25M band the gross margin and overhead rows are a modeled extension of the same curves. They have not been reconciled against the licensed CFMA Benchmarker, so read those bands as a model and not as a survey result.

CFOS

How CFOS does it

CFOS for QuickBooks reads your jobs, cost codes, vendors and bills from QuickBooks Online and compares job cost by cost code against the budget from your estimate. It updates every hour, so the numbers are never a month old. Your estimate imports as the job budget, and QuickBooks keeps the books.

Each month the PM enters cost to complete, you approve it, and the job screen puts the profit you're heading for next to the profit in the estimate. The CEO Report grades your company against the published average and the CFOS target for your trade and size, so you can see how you compare without building a report. That's the page most owners read first.

You can also ask Claude or ChatGPT about your own jobs. It reads your numbers and can't change them. It only sees what your sign in allows.

AT YOUR SIZE

At $3M you can do this on a sheet in 20 minutes a week. At $8M with a dozen open jobs, you'll want the hourly numbers on one screen. That's when the sheet stops being enough.

90-DAY MONEY-BACK · CANCEL ANYTIME

Get on the list for the day it opens

30 days free, a 90-day money-back guarantee, and cancel anytime.

We email you when CFOS for QuickBooks opens, plus a few updates before then. Your address stays with Run On CFOS. One click unsubscribes.

30 days free, a 90-day money-back guarantee, and cancel anytime. It opens January 2027. We email you the day it opens.

QUESTIONS

What people ask

Can a $3M contractor really track profit by job?

Yes. You need a budget by cost code from the estimate and every cost entered with a job and a code. A sheet and 20 minutes a week gets you most of the way.

How do I know if a $5M company's jobs are making money while they're open?

Compare cost so far to the budget, add what's committed, and add the PM's cost to complete. That gives the profit you're heading for. The profit and loss for the whole company can't tell you this.

What if my bookkeeper only codes costs to the job and not to a cost code?

Then you can see the job total but not what is causing the overrun. Ask for both on every bill, even with a short list of codes. Labor, material, subs and equipment is a fine start.

As the owner, how much of this do I have to do myself?

You look at one line per job each week and decide what to do about the ones that moved. The PM supplies cost to complete and your bookkeeper codes the bills. With CFOS the numbers are already on the job screen.

Does CFOS replace QuickBooks for an $8M contractor?

No. It works on top of QuickBooks Online, reads from it and writes to it, and QuickBooks keeps the books. It adds the job cost by code, cost to complete and reports that QuickBooks alone doesn't give you.

Updated

8 Steps 60 Days

CONTROL is the full system, written for commercial subcontractors from under $1M to $100M. It's out now. 8 steps, 6 working templates, and the order they install in. $9.99 ebook, $24.99 paperback.