CFOS for QuickBooks, coming January 2027Join the waitlist: 12 months with no subscription fee
WATERPROOFING

SF UNIT COST JOB COSTING FOR WATERPROOFING CONTRACTORS.

QUICK ANSWER

Waterproofing contractors bid by the square foot, hot-applied rubberized asphalt at one rate, sheet membrane at another, liquid-applied at a third. Job costs get tracked at the project level instead of the SF level, so when a job closes nobody knows the real cost per SF by membrane type. The next bid is based on last year's estimate. SF unit cost tracking fixes that by measuring labor hours per SF, material per SF, and equipment per SF, organized by membrane category.

You sell by the square foot, so you should know your cost by the square foot. Most waterproofing subs we walk into don't, and the reason is structural rather than lazy: the books were built to answer whether the job made money, not which membrane made it. A job that finishes at 18 percent gross margin can be hot-applied at 28 percent and sheet membrane at 4 percent. The total reads fine and the next bid repeats both rates. One membrane keeps subsidizing the other until the mix on some job goes the wrong way.

Rather talk it through first? Book a 20 minute call. Nothing gets sold on this call.

Want it set up for you? Onboarding only, from $4,500 one time. Books migrated and job costing built, then your own team keeps it up.

BY JOSH LUEBKERPublished 2026-08-06Updated 2026-11-01
THE DEFINITION

WHAT IT MEANS.

SF unit cost tracking is job costing that measures labor hours, material, and equipment per square foot by membrane type, so the unit you bid in is the unit you cost in.

Waterproofing pricing is unit based. A contractor quotes 24,000 SF of hot-applied membrane at $4.85/SF, and the bid math is simple: SF times rate equals bid. The cost math isn't simple. Labor, material, equipment, and crew time all get assigned to a job number, and nobody breaks those costs back out into cost per SF by membrane type. When the next RFP comes in for 18,000 SF of similar work, the estimator uses a rate that felt right the last time.

The result is that some membrane types get bid too high, which loses jobs that should have been won at the true rate, and some get bid too low, which wins jobs that lose money. You can't price what you don't measure, and bid units have to match cost units.

WHY IT KEEPS HAPPENING

THREE STRUCTURAL BREAKDOWNS.

01

Cost codes don't split by membrane type

Most waterproofing job cost structures have one labor line, one material line, and one equipment line per project. A job with hot-applied below grade and sheet membrane on the deck codes both crews to the same labor bucket. By the time the costs reach the books you can't separate what hot-applied labor cost from what sheet membrane labor cost, and that data is gone for good. Splitting cost codes by membrane category from day one is the only fix, because nothing reconstructs it later.

02

Labor hours aren't logged against SF completed

Crews report hours to a job number but don't report SF completed by the day. Even with split cost codes you end up with hours by membrane type and no production rate to divide them into. You can't answer how many SF of hot-applied per labor hour the crew reached on the bank job, because daily SF was never captured. Production rates are the bridge between labor cost and SF unit cost, and without them the math doesn't close.

03

Material waste factors are guessed

Sheet membrane has waste, hot-applied has waste, and detail work around penetrations has more waste than either. The waste factor moves by membrane, by detail count, by crew, and by weather. Most estimators use a flat 8 or 10 percent across the board, while real waste is 5 percent on simple flat slabs and 18 percent on penetration-heavy decks. Bidding 10 percent on an 18 percent waste job donates the difference, and tracking actual waste by job type fixes the next bid.

THE MATH

WHAT IT LOOKS LIKE IN DOLLARS.

Waste, bid against actual

A flat 10 percent waste assumption on a deck that has 18 percent waste gives away 8 points of material cost on that scope. Real waste on a simple flat slab is 5 percent. The spread between 5 percent and 18 percent is geometry, and geometry is knowable before the bid goes out.

Where the margin was not visible

A waterproofing job that finishes at 18 percent gross margin can be hot-applied at 28 percent and sheet membrane at 4 percent. The job total says the work was fine. The split says one membrane type is being bid wrong. Without the split, the same rate goes into the next bid and the next job after that.

Detail work against field area

Penetrations, terminations, transitions, and patches take 4 to 6 times the labor per linear foot that flat field area does. When detail and field code together, the blended rate leaves both signals unseen at once. A detail-heavy deck priced off a blended rate is being subsidized by flat-field margin, and nobody in the office can see it happening.

HOW SPM FIXES IT

HOW SF UNIT COST TRACKING GETS BUILT.

Split cost codes by membrane category

One labor code per membrane type: hot-applied separate from sheet membrane, separate from liquid-applied, separate from detail work. Material and equipment get the same treatment wherever the equipment differs, since hot-applied needs a kettle and sheet membrane doesn't. The code structure is the foundation and it goes on every job, not only the large ones.

Log daily SF completed by membrane type

The foreman reports SF completed per membrane category at the end of the workday. It takes five minutes on a phone or a tablet. That's the production rate signal: SF completed divided by labor hours equals SF per hour, tracked by membrane, by crew, and by job complexity. After three to four jobs the estimator has production rates that came off your own crews instead of a book.

Separate detail work from field area

Detail labor gets tracked in its own line, apart from the flat field area it's nothing like. Penetrations, terminations, transitions, and patches take 4 to 6 times the labor per linear foot of field area. Once detail is in its own code, a detail-heavy deck gets priced at what it costs instead of being subsidized by the flat work around it.

Measure the actual waste factor by job type

Material delivered minus material installed equals waste, and that subtraction gets done at closeout on every job. The result gets compared against the bid assumption. If the bid assumed 10 percent and the job had 16 percent, the next similar job uses 16 percent or a tighter detail plan. Waste is one of the most repeatable cost categories across jobs of similar geometry, which makes it one of the most fixable bid errors there is.

Build a bid-back rate library

After every job closes, the actual SF unit cost by membrane type goes into a rate library: hot-applied labor per SF, sheet membrane labor per SF, and material with waste per SF. The next bid pulls from the library and not from memory. Within 6 to 12 months the library is dense enough to bid any project type you've done before with numbers you can defend to a GC.

The estimator and the books read the same units

SF unit cost tracking is operationally simple and financially structural. If the books track labor by job total while the estimator bids by SF, the two systems never converge, the estimator stays on memory, and the distance between them stays invisible.

In a CFOS engagement, labor is already coded to membrane type and SF when it reaches the books, cost per SF computes from there, and the rate library updates itself off closed jobs. The estimator pulls from a live source instead of a stale spreadsheet. Same business, different bidding accuracy.

$10.7M+
Client AR Recovered Since 2023
48
Active Trade Specializations
60 DAYS
Average Onboarding Time
PRICING

FLAT MONTHLY FEE. NO SURPRISES.

Three tiers, priced by your trailing twelve month revenue. Which one you're in depends on how much of the work you want off your desk. No hourly billing. No payroll. The one-time onboarding fee is right here in the table.

Built for subs doing $1M to $12M. Above $12.5M we quote.

Last 12 months revenueCoreStrategicPlatinumOne-time onboarding
Under $1M$1,900$3,100$3,300$2,500
$1M to $3.5M$2,600$4,100$5,300$4,500
$3.5M to $6.5M$3,800$5,900$8,300$6,000
$6.5M to $9.5M$5,100$7,600$11,800$7,500
$9.5M to $12.5M$6,100$8,900$14,900$9,000
Above $12.5MQuotedQuotedQuotedQuoted

The onboarding fee covers migrating your books back to the start of your last taxable year and getting you fully operational in 60 days. It's billed once, with your first invoice. It's the same for all three tiers, and it moves with your revenue band. Your first month is prorated, and your monthly engagement starts on the first of the first full month.

Just want the setup? Onboarding only is the same onboarding work with no monthly service after it, one time, at the onboarding fee plus $2,000. Start a monthly engagement later and $2,000 counts toward it. It starts at $4,500, and the price for every band is on the pricing page.

The three tier columns are the whole price. Which one fits depends on how much of the work you want off your desk. No payroll. No hidden line items. The onboarding fee is right here in the table.

  • Online software only: QuickBooks, Sage, Viewpoint and similar. No VPN or hosted desktop.
  • Not in any tier: payroll, pay applications, collections on receivables.
  • Pricing valid through 2027.
Core

CFO work. Your own bookkeeper keeps doing the books.

You stop guessing.

You get the CFO work. Job costing built against the way you estimate, a 13 week cash forecast, monthly WIP, and a meeting every month that ends in decisions and never in a report.

Your bookkeeper still does the books.

Strategic

Core, plus bookkeeping and bank reconciliations, plus job costing and WIP software set up and managed for you. Use your own online accounting software or we supply it, one price.

Every job shows its margin while it is still open.

Everything in Core, plus the bookkeeping and bank reconciliations done for you, and the job costing and WIP software set up, loaded with your cost codes, and managed every month. Use your own online software, or move to ours and we cover it.

A bookkeeper we choose does the books and reconciliations. No payroll.

Platinum

Strategic, plus a controller who handles payables and receivables the way an in-house controller would. You approve every payment.

You approve, and the money side gets handled.

Everything in Strategic, plus a controller we choose who handles your bills and receivables for you the way an in-house controller would. They call vendors, pay the bills and keep the accounting current. We plan the cash flow first, and you approve every payment because it is your money.

A controller we choose does the payables and receivables. No payroll, no pay applications, no collections.

COMMON QUESTIONS

FREQUENTLY ASKED.

Three to six months of tracking, plus closeout data from any jobs already underway when you start. You need actual production rates across at least 3 to 4 jobs per membrane type before the rates are reliable. The library compounds, since every new job adds to it, and after 12 months you have density across job types, crew compositions, and seasons. The estimator stops guessing around month 3 and stops double-checking around month 12.

It's tool agnostic. The cost code split works in QuickBooks, Sage 100 Contractor, Foundation, Acumatica, Procore, or ControlQore, any system that lets you build custom cost codes and tag labor by code. The daily SF reporting can be done in a spreadsheet, a Google Form, or a job tracking app. What counts is the data structure and the discipline rather than the platform, though most of our subs use ControlQore because it ties cost coding to job costing natively.

Two things make it stick. First, the entry has to take 90 seconds or less, phone based, with no laptop and no end-of-week catchup. Second, the foreman has to see the data come back into their own bid prep. If the SF they report becomes a number that helps win the next project, they report it, and if it disappears into accounting, they don't. The financial system has to close that loop where the crew can see it.

Gross margin tells you whether the job made money. SF unit cost tells you why. A job at 18 percent gross margin might be hot-applied at 28 percent and sheet membrane at 4 percent. Without the SF unit cost split you would keep bidding both at the same rate next time. With the split you adjust the sheet membrane rate and protect the next job's margin.

Yes, the unit just changes. For tanks and below grade structures the unit might be linear foot of seam or gallon of liquid applied. For elevator pit waterproofing it might be each pit. The principle holds either way: bid in the unit you sell in, cost in the same unit, and build the rate library from actuals. Trades that don't sell in SF still need unit based cost tracking, they just track a different unit.
WHAT THIS TIES INTO
Josh Luebker, SPM The Construction CFO
Josh Luebker
FRACTIONAL CFO · SPM THE CONSTRUCTION CFO

Josh Luebker is a master electrician turned construction CFO, president of SPM The Construction CFO and author of CONTROL: C.F.O.S. Construction Financial Operating System.

DO YOU KNOW YOUR COST PER SF BY MEMBRANE TYPE?

Twenty minutes goes to questions about how you code waterproofing labor, whether membrane types get separated, and what your closed jobs came in at per square foot. Nothing gets sold and nothing gets proposed. If Josh can help, you'll set a longer call.

You don't hire a CFO because it's safe, you do it because the real risk isn't having one.
Book a 20 minute call

20 minutes. Nothing gets sold on this call and nothing gets proposed. Josh asks questions to work out whether he can help at all.

OR GET THE WIP SCHEDULE TEMPLATE. NO CALL NEEDED.