Field Ops
Excavation & Earthwork Production Tracking
Earthwork bids come down to a single number the estimator built the whole job on: dollars per cubic yard, or dollars per hour of equipment time. Everything in the field — cut, fill, haul, compaction — either holds that number or blows through it, and the only way to know which is happening is to track production daily against the dirt model, not wait for the end-of-month cost report.
Published September 25, 2026 · 8 min read
Key takeaway
Track earthwork production in cubic yards moved per crew/equipment set per day, not just machine hours, and compare it against the bid quantity and unit rate continuously. A haul-cycle or soil-condition problem that shows up in week two is a manageable adjustment; the same problem discovered at 70% complete is a loss.
The dirt model versus the field reality
An earthwork estimate is built from a cut/fill balance — cubic yards to cut from high areas, cubic yards to fill low areas, and how many yards (if any) have to be hauled off-site or brought in. That balance drives an equipment and crew plan: so many yards per day per excavator, so many haul trucks to keep up with a given cut rate, so many compaction passes per lift.
The field reality diverges from that model constantly — different soil than the geotech report assumed, groundwater, unsuitable material that has to be undercut and replaced, haul roads that get worse as the season goes on. None of that is unusual. What separates a job that adjusts and holds margin from one that quietly bleeds is whether production is being measured against the model in real time or only discovered at the schedule review.
The core production metrics
- •Cubic yards moved per day: cut, fill, and haul-off tracked separately, since they have different unit costs and different equipment requirements.
- •Cycle time per haul truck: load, haul, dump, return — the number that determines whether you have the right truck count for the excavator's cut rate.
- •Equipment hours vs. production hours: an excavator can run 10 hours and produce far less than plan if it is waiting on trucks, hitting rock, or down for maintenance — hours alone hide this.
- •Compaction passes and density test results: fill that fails density testing has to be reworked, which is lost production that never should have counted as "complete" in the first place.
- •Cost per cubic yard, actual vs. bid: the number that ultimately tells you whether the job is making or losing money on dirt.
Cost-coding earthwork the right way
A clean earthwork cost-code structure separates activities that have very different unit costs: 02-100 clearing/demo, 02-200 excavation/cut, 02-300 embankment/fill, 02-400 haul (on-site and off-site, ideally split), 02-500 compaction/testing, 02-600 fine grading. Lump all of it into one "sitework" code and you lose the ability to tell whether the problem is the cut, the haul, or the compaction — which matters because the fix for each is completely different (more excavators vs. more trucks vs. more roller passes and lift-thickness discipline).
Daily production should be logged in cubic yards per cost code per equipment set, the same discipline used for any per-unit trade. Field PM's <a href="/features/daily-reports">daily reports</a> support a quantity field per cost code, so an operator or foreman logs yards moved for the day directly against the cut, fill, or haul code, and the productivity factor (actual yards/hour vs. bid yards/hour) calculates automatically without a separate spreadsheet.
A worked example: haul-cycle bottleneck
A cut package is bid at 40,000 CY with a 30-CY excavator producing roughly 250 CY/hour and a fleet of 6 haul trucks each cycling one 15-CY load every 12 minutes (5 loads/hour, 75 CY/hour/truck × 6 = 450 CY/hour capacity — plenty of truck capacity on paper). Two weeks in, actual production is running 160 CY/hour, well under the excavator's rated 250.
The daily reports show the excavator logging full hours but the haul cycle time has crept from 12 minutes to 19 minutes per truck (haul road degradation from weather), dropping effective truck capacity to about 285 CY/hour combined — now below what six trucks were supposed to cover, and the excavator is sitting idle between loads waiting on trucks. Tracking cycle time daily surfaces this in week two: the fix is haul-road maintenance or an added truck, both cheap relative to discovering at 60% complete that the whole cut package is running 35% over its planned duration.
Weather, wet weather days, and the reality of dirt work
Earthwork is more weather-exposed than almost any other trade — a rain event does not just stop work for the day, it can shut down haul roads and fill placement for days afterward while material dries out. A delay log that distinguishes "rained out" from "waiting on trucks" from "hit rock, redesign pending" is essential, both for honest productivity analysis and for any weather-day claim under the contract.
The other honest trade-off in earthwork tracking: survey and quantity verification (cross-sections, GPS grade checks) are still the ground truth for cut/fill volumes, and field-logged cubic yards from equipment operators are an estimate, not a survey. Production tracking is a leading indicator to catch problems early — it does not replace a proper survey-based quantity reconciliation at key milestones.
Frequently asked questions
What is the best unit for tracking earthwork production?+
Cubic yards moved per day, tracked separately for cut, fill, and haul (since each has a different unit cost), compared against the bid production rate. Equipment hours alone can look normal while yards moved fall well short of plan.
How should earthwork cost codes be structured?+
Split by activity with meaningfully different unit costs: clearing/demo, excavation/cut, embankment/fill, haul (on-site vs. off-site), compaction/testing, and fine grading. Lumping everything into one sitework code hides which activity is actually driving a cost overrun.
Why does haul cycle time matter more than truck count?+
Truck capacity is a function of cycle time, not just truck count — a haul road that degrades over the season can silently cut effective capacity even with the same number of trucks, leaving the excavator idle. Tracking cycle time daily catches this before it shows up as a schedule slip.
How does Field PM support earthwork job costing?+
Field PM's <a href="/features/daily-reports">daily reports</a> support a quantity-installed field per cost code, so cubic yards moved for cut, fill, and haul roll into an automatic productivity factor and feed real-time budget-vs-actual on the <a href="/features/pm-dashboard">PM dashboard</a>, without a separate tracking spreadsheet.
Run the numbers in the field, not the spreadsheet
Field PM turns daily reports into live job costing, productivity, and billing — built for self-perform contractors. 30-day free trial · no credit card · unlimited foremen, QA/QC, safety & subs always free.
Start free trial →Keep reading