CONTROLQORE FOR ROOFING CONTRACTORS.
Generic accounting software can't read cost per roofing phase against the bid, track an open claim from ACV through recoverable depreciation, or price the workers comp burden into every hour worked on the roof. ControlQore can.
ControlQore for roofing contractors uses cost codes by roofing phase: tear-off, dry-in and underlayment, shingle or membrane install, metal and flashing detail, and warranty callback work. Actual cost per phase is compared to the estimated cost weekly. Indirect labor, meaning supervision, safety, warranty crews and drive time, gets its own cost codes and stays out of overhead. Every open insurance claim is tracked by stage: ACV received, recoverable depreciation outstanding, and supplements pending. The WIP schedule is produced monthly from cost-to-cost percentage complete.
What changes is when you find out. A roofing P&L tells you the month was good or it wasn't. By then the crew is on the next building and the claim is still open. Cost codes built by roofing phase turn the same hours into a cost per phase you can read in week two against what you bid. Every open claim gets its own stage, out of the file drawer. Roofing contractors at $1M to $5M net 7 percent before taxes on the SPM 48-trade benchmark, and the CFOS target at that band is 10.5 percent before taxes. A cushion that thin can't absorb a cost code nobody is reading.
THE NUMBERS GENERIC SOFTWARE MISSES.
WHAT IT IS.
ControlQore is a job costing and WIP platform for contractors that tracks cost by job and cost code, so a roofing subcontractor can read actual cost per roofing phase against the estimated cost every week while the roof is still open.
The cost codes are the whole system. Cost codes built to match the roofing estimate give you actual against estimated by phase, every week the job is open. Cost codes from a generic template give you one labor total per job. On a roof, that one total is four different jobs added together: demolition, dry-in, install and detail work. Each has its own production math and its own crew.
WHERE IT GOES WRONG.
No Cost Per Phase Visibility
QuickBooks job tracking shows total labor cost by job. Tear-off, dry-in, install, and flashing detail all post into that one total, and each of the four has a different crew size and a different production rate. ControlQore shows actual cost per phase against the estimated cost weekly, so a phase over its estimate is visible in week two while there's still time to change crew size, change the method, or open a change order conversation. At closeout the hours are already spent.
The Carrier's Calendar Is Not on the Books
Storm work pays on the insurance company's schedule. The first check covers actual cash value only. Recoverable depreciation is withheld until the job is complete and documented. Supplements can wait in an adjuster's queue for weeks. When open claims are in a folder and not on the cash forecast, you're financing the difference on every one of them without knowing how much that comes to this month.
Material Paid Before the First Receivable
Roofing is material intensive, and suppliers collect at or before delivery. Crews get paid Friday. Commercial pay applications come back at net-60 to net-90 with retainage held on top, and subcontractors reported waiting an average of 51 days for payment, per Billd's 2026 National Subcontractor Market Report. The supplier bill and the payroll both clear before the first receivable does, so more work means more cash out before any of it returns.
Indirect Labor Absorbed Into Overhead
Supervision, safety, warranty crews and travel time fall between direct labor and overhead. When they aren't coded, they get lost in the middle of the income statement. Workers comp for this trade is among the highest rates in construction, so an hour priced at base wage underprices every hour worked. The SPM 48-trade dataset puts roofing overhead at 15 percent at $1M to $5M, a figure derived from the nearest comparable trade and not measured on roofing books. A bid built on base wage alone never recovers it.
Warranty Callbacks With Nothing Reserved
Callback and repair work is a real cost most roofers never accrue. The crew hours get spent in a later year against revenue booked long ago. So every callback is charged to the current month's margin, and the job that sold it never pays for it. At 7 percent net before taxes, a season of unreserved callbacks is the whole cushion.
WHAT WE BUILD.
SPM builds ControlQore cost codes for roofing clients by phase: mobilization, tear-off and disposal, dry-in and underlayment, shingle or membrane install, metal and flashing detail, and warranty callback work. Labor, material and equipment post to the correct phase. Each phase code matches a line in the roofing estimate. So actual against estimated is a report you read, with nothing to reconcile. Variance over 10% for two weeks in a row triggers a review while the job is still open.
Every open claim is tracked as a receivable with a stage: ACV received, recoverable depreciation outstanding pending documented completion, and supplements submitted and pending. Those stages go into the 13 week cash flow forecast, so the money you're waiting on has a date. The documentation the carrier will ask for is collected as the phases close. That's what gets the depreciation released sooner.
Supervision, safety, warranty crews and drive time get their own cost codes. They don't disappear into overhead or direct labor. Workers comp and the rest of the burden are priced per hour and posted per hour, so an hour on the roof costs what it really costs. You get two things out of that. The estimate is calibrated against a burdened rate that held up. And the overhead recovery rate in the bid is checked against what the company spends, and not a number someone picked years ago.
SPM sets a warranty reserve on every roofing job at booking, sized from tracked callback history by system type. The reserve is a cost of the job that sold it. A callback in year three is charged to the accrual, and the current month stays clean. After a few years, the accrual is backed by your own callback history.
The WIP schedule for roofing clients is produced monthly from cost-to-cost percentage complete by job. Underbilled positions, meaning work performed but not yet billed, are visible immediately and trigger a corrected pay application. Overbilled positions, meaning billed ahead of the work performed, flag jobs where billing has outrun progress, which is how a busy season turns into a cash hole in a quiet one. Full overhead bills all 12 months whether the phone rings or not, and the forecast is built that way.
FLAT MONTHLY FEE. NO SOFTWARE INVOICE.
Three tiers, priced by your trailing twelve month revenue. ControlQore comes with Strategic and Platinum, and it never appears as its own line item on an SPM invoice. Which tier you're in depends on how much of the work you want off your desk.
Built for subs doing $1M to $12M. Above $12.5M we quote.
| Last 12 months revenue | Core | Strategic | Platinum | One-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.5M | Quoted | Quoted | Quoted | Quoted |
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.
CFO work. Your own bookkeeper keeps doing the books.
We build your plan every month. Your team does the work.
You get the CFO work: job costing built to match the way you estimate, a 13 week cash forecast, WIP every month, and a monthly meeting that ends with decisions.
Your bookkeeper still does the books.
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.
We build the plan, track it and adjust it every month.
We only work with trade subcontractors. We know what to look for, and we fix problems while they're still small. 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 pay for it.
Our team does the bookkeeping and the reconciliations. We don't do payroll.
Strategic, plus a controller who handles payables and receivables the way an in-house controller would. You approve every payment.
We manage the money side for you, every week.
Everything in Strategic, plus our team does the controller work. We handle your bills and receivables the way an in-house controller would: we 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.
Our team does the payables and receivables. We don't do payroll, pay applications or collections.
