Ask five contractors what they charge for concrete resurfacing and you'll get five different answers, and at least two of them are underbidding the job without realizing it. Resurfacing gets priced wrong more often than almost anything else in the concrete trade, for a specific reason: it looks like a small job next to a full pour, so it gets estimated like one — a quick per-square-foot number pulled from memory instead of a real cost stack.
Here's what actually goes into a resurfacing bid, and where the money quietly disappears when it's priced too fast.
The Real Cost Stack
Material is the easiest number to get right and the smallest part of the bid. The line items that actually decide whether a job is profitable are the ones contractors estimate from habit instead of from the job in front of them.
Surface prep. Pressure washing, degreasing, patching spalled sections, and grinding down high spots before you can even apply a finish coat. On a driveway with oil stains or existing damage, prep can take longer than the application itself — and it's the step most commonly left out of a fast verbal quote.
Crack and joint repair. Almost no resurfacing job is a clean slab. Filling cracks and re-cutting or resealing control joints before resurfacing is close to universal, and it's real material and labor time that needs its own line, not a rounding error folded into "prep."
Application labor. This varies by system and crew experience, but it should be priced by the hour your actual crew takes, not a generic industry number. Time a job start to finish once, honestly, and use that.
Material waste factor. Overspray, mixing waste, and coverage variance on textured or uneven surfaces typically run 10-15% over the calculated square footage. Price the material for the job you'll actually use, not the job on paper.
Travel and mobilization. Load-in, load-out, and drive time, especially on a smaller single-driveway job where it's a larger share of the day than it is on a big commercial pour.
Equipment wear and consumables. Sprayer tips, hoses, mixing equipment, and general wear don't show up on a single invoice, but they're a real cost per job if you're running this service regularly.
The Mistake That Actually Costs Money
The single biggest underbidding mistake isn't any one line item — it's pricing resurfacing using the same mental math as a small patch job, because it feels similar in scale. A patch job is genuinely small: minimal prep, one bag of material, an hour of labor. A resurfacing job covering an entire driveway or patio has full-surface prep, a real material order, and enough application time to matter, but it's easy to anchor on "it's just a coating" and quote it too close to the patch-job number.
The fix is treating resurfacing as its own line in your pricing sheet, with its own labor-hour assumption, not a variation on either a full replacement or a small patch.
Pricing Models: Square Foot, Flat Rate, or Custom Bid
Most resurfacing bids land on one of three models, and each one fits a different situation.
Per square foot is the fastest to quote and the easiest for a customer to compare against another bid, which makes it the default for straightforward residential driveways and patios. Its weakness is that it can undercharge on jobs with disproportionate prep work — heavy staining, extensive cracking — since the per-square-foot rate doesn't flex for a harder-than-average surface unless you build a prep-severity adjustment into your rate sheet.
Flat rate works well once you've done enough jobs of a similar type and size to price from experience rather than a formula — a standard single-car driveway, for instance. It's faster to quote once you have the pattern, but it's easy to underprice a flat-rate job that turns out to be more complicated than the template you're pricing it from.
Custom bid is worth the extra time on anything nonstandard: unusual surface damage, municipal or HOA specs, large commercial square footage, or anything where a quick per-square-foot number would be guessing. It takes longer to produce, but it's the only model that actually prices the job in front of you instead of an average job.
A lot of contractors default to per-square-foot out of habit for everything, including jobs that would be priced more accurately — and more profitably — as a custom bid.
A Worked Example: 400 Square Feet
Here's a rough shape of what a bid should account for on a standard 400 square foot driveway section — treat the ranges as a framework to plug your own real numbers into, not a quote to copy:
| Line item | What it covers |
|---|---|
| Material | Coverage for 400 sq ft plus 10-15% waste factor |
| Surface prep | Pressure washing, degreasing, minor grinding |
| Crack/joint repair | Filling and sealing existing cracks and joints |
| Application labor | Crew hours to apply and finish |
| Travel/mobilization | Load-in, load-out, drive time |
| Callback reserve | See below |
| Margin | Your target profit, added last, not absorbed into the middle |
Run your own real numbers through each line before you quote the next job, and compare the total to what you've historically been charging. For a lot of contractors new to pricing resurfacing as its own service, that comparison is where the underbidding shows up.
What Margin Should You Actually Be Targeting
General contracting benchmarks commonly cite a 20-35% gross margin as the healthy range for specialty trade work, with resurfacing's low material cost and fast turnaround generally supporting the upper half of that range rather than the lower half — it's a service built around speed and low overhead, and a bid that doesn't reflect that is leaving money on the table. Treat that as a floor to check your number against, not a ceiling: if your bid, after every real cost line above, doesn't clear something in that range, the fix is the bid, not accepting a thinner job.
The trap is calculating margin only against material cost, since that's the number that's easiest to see. Material at under $1 a square foot looks like it supports almost any price — but margin has to be calculated against the full cost stack above, prep and labor included, or the number you're celebrating isn't real.
Pricing Differently by Job Type
A one-off residential driveway and a municipal sidewalk contract aren't priced the same way, even at the same square footage. Municipal and HOA work usually comes with more predictable, larger-volume orders — which supports a lower per-unit price in exchange for guaranteed volume — but it also often comes with bid specs, insurance requirements, and inspection sign-off that add real administrative time worth pricing in separately. A single residential job has none of that overhead, but it also doesn't have the volume to smooth out a bad week. Know which one you're bidding before you reach for a number.
If you're weighing whether a spray-applied or traditional overlay system fits a given job better, that choice changes your material cost and labor-hour assumptions directly — Spray-On Concrete vs. Traditional Overlays: Which System Wins More Bids in 2026 breaks down the cost and time differences by system.
Build In a Callback Reserve
Every resurfacing job carries some callback risk, whether it's a touch-up on an edge or a customer who wants a section redone. Contractors who don't price for this either eat the cost of every callback out of pure profit, or start avoiding jobs with any complexity at all. A small reserve — even 3-5% of the job price — built into the bid rather than absorbed after the fact keeps a single callback from turning a profitable job into a wash.
This matters more in high-volume seasons than slow ones — if your resurfacing calls cluster the way winter demand does in Texas, California, and Florida, a callback reserve is what keeps a fully-booked month profitable instead of just busy.
Signs You're Already Underpricing
A few patterns are worth checking your own numbers against, since underpricing is easier to spot from the outside than from inside a busy schedule:
You're consistently busy but the bank account doesn't reflect it — volume without margin is the clearest sign the per-job price is too low, not that you need more jobs. A single callback wipes out most or all of the profit on the original job, which means there was never a real reserve built in. You're quoting resurfacing fast, from memory, without referencing an actual cost sheet — which almost always means the number is anchored to what you charged last time, not what the job in front of you actually costs. And you find yourself avoiding jobs with any real prep complexity, because they've quietly become unprofitable at your standard rate — a sign the rate isn't accounting for prep variance in the first place.
Any one of these is worth a real look at your numbers instead of another gut-feel quote.
Explaining the Price Without Losing the Job
A resurfacing quote that's priced correctly is sometimes higher than what a customer expected going in, especially if they were mentally comparing it to a lowball verbal estimate from another contractor. The fix isn't discounting to match — it's explaining what the price actually includes.
Walking a customer through the real scope — prep work most customers don't realize is part of the job, the crack and joint repair, the warranty or guarantee behind the work — does more to hold a price than a discount does, and it sets the right expectation if a callback ever does come up. Contractors who only ever state a number, without the scope behind it, are the ones who feel pressure to discount when a customer pushes back. Contractors who walk through the scope first usually don't get that pushback in the first place.