Job Costing for Contractors: Know What You'll Make Before You Send the Quote
Here's the story every contractor knows. You win a $14,000 job. Feels great. The crew finishes, the materials invoice comes in, you pay out the sub you brought on for the tricky part, and a few weeks later you do the math: you cleared barely enough to cover your truck payment. The job wasn't bad. The price was bad. And you didn't know it was bad until the money had already moved.
That gap, between sending a quote and finding out what it actually made you, is where small businesses quietly bleed. You can't fix a thin price after the fact. You can only fix it before you hit send. Job costing is the practice of knowing your margin while you build the quote, not after the job closes.
What job costing actually means (without the accounting jargon)
Job costing is simple: for every line on a quote, you track two numbers. What you charge (the price) and what it costs you (materials, labor, the sub, the dump fee). Subtract one from the other and you've got your margin, the money you actually keep.
A roofer quoting a tear-off knows shingles cost them about $82 a square and they're charging $130. A 24-square roof is $3,120 in shingle revenue against $1,968 in shingle cost. That single line makes 37%. Stack up every line, and you can see whether the whole job clears the 35-40% you need to keep the lights on, or whether you just talked yourself into working for free.
Why most contractors don't do it
Not because they don't care about profit. Because the tools make it annoying. Pricing software treats cost like an afterthought, buried two screens deep. Spreadsheets mean retyping every job. So most people quote off gut and gut is usually too low, because the customer in front of you is pushing on price and your cost is an abstraction.
The fix is to put cost where you're already working: right on the quote, next to the price, updating live as you build it.
How it works in RadiusOS
When you build a quote on Pro or above, each line has a cost field next to the price. Type what the line costs you, and RadiusOS shows your margin, per line and for the whole job, in dollars and as a percentage. The number updates as you adjust. If a job's margin comes back at 22%, you see it before you send, and you can bump the price, trim the scope, or walk away. After is too late. Before is leverage.
Two things matter here. First, set your costs once on your price list and every quote built from those items carries the cost automatically, no retyping. Second, and this is the part contractors always ask about: your customer never sees the cost or the margin. Those numbers are yours. The quote that lands in the homeowner's inbox shows only the price. The cost column lives in your workspace and nowhere else, not on the emailed copy, not on the PDF, not on the page they sign.
It pairs with photographing the estimate
If you use Snap to Quote, photograph an adjuster's estimate or your own walkthrough and let AI draft the line items, the margin shows up there too. Lines that match your price list pull their cost automatically, so an AI-drafted quote isn't just fast, it's a quote you can actually judge the profit on before you send it.
The bottom line
You don't need accounting software to stop quoting blind. You need your cost next to your price at the moment you're deciding what to charge. That's the whole game. Know your margin before you send the quote, and the thin jobs stop sneaking up on you.
Job costing is included on every paid plan, starting at $19/mo. Start free to set up your pipeline, or read how cost and margin work on quotes.
More in Industry Guide
Send a Roofing Quote Your Customer Can Sign From Their Phone in 60 Seconds
How a Phoenix roofer stopped chasing signed estimates by email. Mobile signature, signed PDF, pipeline auto-advance. Included on every RadiusOS plan.
Get a Real Estate Service Agreement Signed From Your Client's Phone
How agents replace DocuSign for buyer rep and listing service agreements. Send on Tuesday, signed before the showing on Saturday. Built into RadiusOS on every plan.
Send a Photography Contract Your Client Can Sign From Their Phone
Wedding and portrait photographers: replace the DocuSign and PDF-attachment workflow. Mobile signature, signed PDF, deposit reminder. Included on every RadiusOS plan.
Ready to try a smarter CRM?
AI-powered deal scoring, automated follow-ups, and a pipeline that fits your workflow. Start free - no credit card required.
Get started free →