Concrete is one of the most unforgiving trades to job cost. The material clock starts the second the truck leaves the plant. The weather can kill a Tuesday pour and leave you eating a half-day of crew labor with nothing to show for it. The pump truck you rented for 4 hours bills 8. And every yard of overage is real money you can’t put back.
I’m Erin Andrews, owner of Level Accounting & Advisory. We’re a construction-only firm and we work with flatwork, foundation, decorative, and structural concrete contractors. This post covers what makes job costing for concrete contractors different from every other trade — and how to set it up in QuickBooks Online and JobTread so the math reflects how the work actually happens.
For the framework underneath all of this, start with our pillar guide on job costing for contractors.

What’s different about job costing for concrete contractors?
Concrete job costing is hard because three variables move more than in any other trade: yardage delivered (and waste factor on every pour), weather risk (the rain-out problem that costs you a crew day with no revenue), and equipment burden (the pump truck, finishing crew, and tools that show up to job costs as one big lumpy expense if you’re not tracking it). Most concrete contractors I see are pricing per yard or per square foot without ever reconciling actual to estimate at the cost-code level — and they don’t know which mix designs or which customer types are profitable.
Yardage tracking — cost per yard and the waste factor problem
Every concrete pour has two numbers: yards bid and yards delivered. The variance kills margin if you’re not watching it.
What we set up for concrete clients:
- Cost code per mix design. 3000 PSI flatwork is a different cost code than 4000 PSI structural. Decorative or colored mix gets its own code because the per-yard price is materially higher.
- Yards estimated vs. yards ordered vs. yards delivered. All three live on the job. Estimated tells you what you bid. Ordered tells you what dispatch sent. Delivered tells you what the truck actually brought (sometimes short, sometimes you got hit with a short-load fee).
- Waste factor by job type. Driveway: 5–8%. Foundation: 8–12% (because of forms and over-pour). Slab on grade: 4–6%. Decorative: 8–10%.
The math contractors miss: a 12-yard driveway pour at $165/yard with 8% waste is actually 13 yards of cost — $2,145 in concrete alone. Bid for 12 and you’re under by one yard’s worth of margin every job. Across 100 driveways a year that’s $16,500 walking out the door.
Track cost per yard against bid per yard at job close-out, every job. The mix designs that consistently come in over should get a price bump on your next bid.
Weather delays — the rain-out problem as a real cost
Every concrete contractor knows the math: crew shows up at 6am, the radar shifts, by 8am the pour is canceled. You sent four guys home. They got two hours plus drive time. That cost shows up exactly nowhere if your cost code system isn’t built for it.
How to capture it:
- Build a “Weather Rain-Out” cost code that captures crew labor cost on canceled pours
- Tie the cost to the canceled job, not absorbed into shop overhead. If you keep canceling on the same customer because you bid them in February for an April pour, you’ll see it.
- Track short-load fees and reschedule fees from the concrete plant separately — those add up to thousands a year for active shops
This is a piece of data most concrete shops never look at. Once you have a year of weather rain-out data, you can do something useful: bid winter or wet-season jobs with a “weather contingency” line baked in. The shops that survive the slow season are the ones that priced the slow season into their bids.
Equipment burden — the pump truck, mixer, and tool problem
Concrete is equipment-heavy. The pump truck is rented per pour (4-hour minimum, often run longer). Power trowels, vibrators, screeds, finishing tools — they’re either rented or owned, and either way they have a cost per use that should hit the job.
How we structure it:
- Rented equipment — code to the specific job. Pump truck, line pump, laser screed, ride-on trowel — every rental gets a job number. If you’re paying for it for a specific pour, the cost belongs on that pour.
- Owned equipment — internal rental rate. Build an internal hourly or daily rate for owned equipment (mixer, trowels, vibrators, light towers). Charge it to the job at that internal rate. The “rental” doesn’t leave your business — it just allocates the cost of owning the equipment to the job that used it.
- Truck rental and driver time on transport jobs. If you’re driving a Bobcat to a job site, the trailer hours and fuel are real. Code them.
Without this discipline, equipment cost dumps into “Equipment Expense” as a flat monthly hit — and you have no idea whether the foundation jobs are eating it disproportionately because they need the line pump every time.
Cost code structure for concrete
Here’s the starting structure we set up for concrete contractors in the $1M–$15M range:

Materials:
- 10-100 Concrete — 3000 PSI Flatwork
- 10-110 Concrete — 4000 PSI Structural
- 10-120 Concrete — Decorative / Colored / Stamped
- 10-200 Rebar / Wire Mesh
- 10-210 Forms — Lumber & Hardware
- 10-220 Forms — Rented Aluminum / Steel
- 10-300 Sealers / Curing Compound
- 10-400 Sub-Base — Stone / Sand
Labor:
- 20-100 Labor — Site Prep / Forming
- 20-110 Labor — Pour / Place
- 20-120 Labor — Finish / Trowel
- 20-130 Labor — Strip Forms / Cleanup
- 20-200 Labor — Weather Rain-Out (no revenue)
Equipment:
- 30-100 Equipment — Pump Truck Rental
- 30-110 Equipment — Line Pump
- 30-200 Equipment — Owned Tools (internal rate)
- 30-300 Equipment — Bobcat / Skid Steer
Other:
- 40-100 Permits & Inspections
- 50-100 Sub — Excavation
- 50-200 Sub — Site Prep
The codes that matter most for concrete: separate concrete by mix design (so you can see actual margin per mix type), separate the weather rain-out labor (so you stop hiding it), and separate pump-truck rental (so you can bid jobs that need it differently from jobs that don’t). For the full breakdown, read our guide to construction cost codes.
Workers comp class 5213 / 5221 — one of the highest in construction
Concrete work falls under workers comp classes 5213 (concrete construction) or 5221 (concrete or cement work — driveways, sidewalks) in most states. Premium typically runs $9–$18 per $100 of payroll, depending on state and loss history. That’s nearly triple what an electrical contractor pays.
Add up the rest of the burden — FICA, FUTA, SUTA, GL, health, vehicle, fuel, training — and concrete labor burden lands 45–65% on top of base wage. One of the highest in the trades, second only to roofing.
A concrete finisher at $28/hour fully burdened is closer to $42–$46/hour. If you’re bidding labor at base wage plus a generic 30%, you’re underbidding by $4–$6 per hour, every hour, on every job.
The full math, with worked examples, is in our labor burden calculation guide.
Concrete-specific QBO + JobTread setup notes
Three things to do differently if you’re a concrete contractor:
- Mix designs as separate inventory items in QBO. 3000 PSI, 4000 PSI, decorative — each one its own item, mapped to its own cost code. The plant gives you a different price for each, and your margin math depends on tracking it.
- Daily yardage reconciliation. At end of pour day, the foreman reconciles yards estimated vs. yards delivered in JobTread before he leaves the site. Catch overages on day one, not at month-end.
- Equipment internal rate set quarterly. Build internal hourly rates for owned equipment (trowels, mixer, screeds, light towers) and charge them to jobs. Update the rates twice a year as fuel and maintenance shift.
Frequently asked questions
How do I track a pour that crosses two days because of weather?
Same job, additional cost code line. The second day’s labor and any reschedule fees from the plant get coded to the same job, so you can see the full cost of the pour. If you want to know what weather costs you over a year, the data has to be tied to the affected jobs — not buried in shop overhead.
What’s the right gross margin target for a concrete contractor?
Flatwork (driveways, sidewalks): 25–35% gross is realistic. Structural / foundation: 28–38%. Decorative / stamped / colored: 35–45% (the higher labor and material complexity earns the higher margin). If your blended is below 25%, the leak is almost always in yardage waste, equipment cost not being allocated, or labor burden being undercounted.
Should I track each concrete plant separately?
Yes, as vendors in QBO. Different plants have different per-yard pricing, different short-load fees, different reliability. Tracking them separately lets you see which plant is actually cheapest after you factor in reschedule fees and short loads.
Do small concrete shops really need to track equipment rental rates internally?
Yes if you’re over $1M in revenue. The owned equipment is a real cost — depreciation, maintenance, fuel, replacement. If you don’t allocate it to jobs, you’re under-pricing the jobs that use it heavily and over-charging shop overhead. The contractor down the road who’s bidding 8% lower than you and winning everything probably has this dialed in.

The bottom line for concrete contractors
Concrete job costing is about three things: tracking yardage cost per mix design (so waste shows up), capturing weather rain-out labor and reschedule fees on the affected jobs (so you can price the wet season honestly), and allocating equipment cost — rented and owned — to the jobs that actually used it. Add an honest class 5213 labor burden and you’ve got numbers that mean something.
If you’re running a $1M–$15M concrete shop and you can’t tell me what your last 5 pours cost per yard or what weather cost you last quarter, that’s the cleanup we do.
Want us to set up your concrete job costing in JobTread + QBO?
Run a different trade? Read our companion guide on job costing for fencing, deck, and hardscape contractors — material-heavy trades with overlapping problems.
Erin Andrews is the owner of Level Accounting & Advisory, a construction-only accounting firm based in Vero Beach, FL serving contractors nationwide. Level has 20 years of experience in construction accounting and serves specialty trades — including concrete, HVAC, plumbing, electrical, pool, and hardscape — doing $1M–$15M in annual revenue.
Related Posts

Effective Job Costing for Pool Contractors: QBO + JobTread Setup

Job Costing for Fencing, Deck, and Hardscape Contractors
