Running an earthwork business without a profitability tracker is like grading a site without a laser level. You might get close, but close costs you money. The dirt, rock, and aggregate hauling industry operates on margins that can evaporate fast when fuel prices spike, equipment breaks down, or a haul route adds unexpected miles. According to the Bureau of Labor Statistics, construction and extraction occupations continue to see wage growth, meaning labor is becoming one of your highest per-hour costs precisely when your estimates may be getting stale.

Yet the majority of small and mid-size earthwork contractors still track jobs using gut instinct, incomplete QuickBooks entries, or nothing at all. If you can not tell within 24 hours whether a job is profitable, you are flying blind. A well-built dirt job profitability tracker changes that. This guide explains exactly how to build one in a spreadsheet, what cost categories to include, which formulas matter most, and how to turn raw numbers into real decisions that grow your business.

Why Earthwork Contractors Struggle With Job Costing

Earthwork job costing is uniquely difficult compared to other construction trades. Unlike a framing crew that can tie labor hours directly to wall sections completed, an excavation or hauling operation has dozens of interacting variables: soil type, moisture content, haul distance, equipment efficiency, load counts, broker fees, gate fees, and weather delays. Any one of these can turn a winning bid into a losing job.

The problem compounds when contractors rely on a single blended hourly rate for all equipment instead of tracking actual machine hours per job. A dozer running in hard caliche is consuming fuel at a rate 30 to 40 percent higher than the same machine pushing sandy loam. If you are billing at the same rate and not tracking actual consumption, you are absorbing that difference out of your margin.

There is also the issue of change orders and scope creep. A site owner calls and asks for an extra 200 yards of cut that was not in the original scope. The contractor does the work, bills it informally, and never reconciles it against actual equipment hours and trucking costs. That small add-on may have actually been performed at a loss because nobody captured the true cost in real time.

Finally, hauling logistics create hidden costs that most estimates never fully account for. Wait times at dump sites, load inspections, scale tickets, fuel for return trips, and driver detention time all add up. Platforms like DirtMatch help contractors reduce dead-head miles and connect with nearby fill or disposal sites, which can directly reduce the hauling cost line in your profitability tracker. But you still need the tracker to see the impact.

What a Dirt Job Profitability Tracker Actually Does

A profitability tracker is not an invoice. It is not a bid sheet. It is a living document that compares what you estimated against what you actually spent, updated as the job progresses, so you can make real-time decisions instead of post-mortem discoveries.

A complete tracker for an earthwork or hauling job should accomplish four things:

  1. Capture all cost categories before the job starts so nothing gets overlooked.
  2. Record actuals as the job runs so you can compare against the estimate daily or weekly.
  3. Calculate margin automatically so you do not have to run manual math under pressure.
  4. Store historical data so future bids get smarter over time.

The tracker does not need to be fancy. Google Sheets or Microsoft Excel works perfectly. What matters is the structure, the discipline to update it, and the habit of reviewing it before jobs close out. The sections below walk you through building each component.

Setting Up Your Spreadsheet Structure

Open a new spreadsheet and create the following tabs. Each tab serves a specific purpose and feeds summary data into your master dashboard.

Tab 1: Job Header

This is your job identification and scope summary. Include the following fields:

This tab should take no more than five minutes to fill out when a job is awarded. It anchors everything else.

Tab 2: Estimate vs. Actual Cost Tracker

This is the core of your profitability tracker. Set it up as a table with the following columns:

Cost Category Estimated Cost Actual Cost Variance Variance %
Labor
Equipment (owned)
Equipment (rented)
Fuel
Trucking and Hauling
Disposal Fees
Material Purchases
Permits and Fees
Subcontractors
Insurance and Bonds
Miscellaneous
Total

The Variance column is simply Actual minus Estimated. The Variance Percentage is Variance divided by Estimated, times 100. Both formulas are one line in Excel or Google Sheets.

Tab 3: Daily Production Log

This tab captures what happened on site each day. Columns should include:

Updating this tab daily takes about 10 minutes and is the single most important habit for accurate job costing. Without it, you end up reconstructing actuals from memory at the end of the job, which is always inaccurate.

Tab 4: Hauling and Trucking Detail

Hauling is often the largest variable cost on a dirt job, and it deserves its own tab. Track the following for each haul:

Date Truck ID / Driver Origin Destination Miles Load Weight (tons) Fuel Cost Disposal Fee Wait Time (hours) Total Cost per Load

Once you have this data for a few jobs, you will start to see patterns. Certain dump sites consistently have long wait times. Certain haul routes burn more fuel than the GPS estimate suggests. This tab becomes a negotiating tool and a scheduling tool over time.

Tab 5: Revenue and Billing Tracker

Track all invoices, pay applications, and change orders here. Columns should include:

This tab helps you monitor cash flow alongside profitability. A job can be profitable on paper but cash-flow negative if retainage is high and pay cycles are slow.

Tab 6: Summary Dashboard

This is the tab you look at first. Pull key metrics from all other tabs using simple formulas:

Building the Core Formulas

You do not need to be a spreadsheet expert to make this work. The following formulas cover 90 percent of what your tracker needs to calculate automatically.

Gross Margin Formula

Gross Margin (%) = ((Contract Value minus Total Cost) / Contract Value) x 100

In Excel syntax: =((B2-C2)/B2)*100 where B2 is Contract Value and C2 is Total Cost.

Target gross margins for earthwork and hauling jobs typically run between 15 and 25 percent depending on job type, region, and competition. If your tracker is showing margins below 10 percent on a regular basis, your estimating assumptions need revision.

Cost per Cubic Yard

This is the unit cost metric that lets you compare jobs across different sizes and scopes.

Cost per CY = Total Job Cost / Total Cubic Yards Moved

Track this metric across every job and you will quickly develop benchmarks for different soil types and site conditions. In many markets, the all-in cost to excavate and haul average soils runs between $8 and $18 per cubic yard depending on haul distance, equipment type, and disposal costs. Rock excavation can push $30 to $60 per cubic yard or higher.

Fuel Cost per Machine Hour

Fuel Cost per Machine Hour = Total Fuel Cost / Total Equipment Hours

Benchmark this against manufacturer specs. A mid-size excavator like a Cat 320 consumes roughly 4.5 to 6 gallons per hour under load. A large dozer like a Cat D8 can consume 8 to 12 gallons per hour in heavy pushing conditions. If your tracked fuel cost per hour is significantly higher than these benchmarks, you may have idling problems, theft, or equipment that needs maintenance.

Percent Complete

Percent Complete = Total Cost to Date / Estimated Cost at Completion

This formula is critical for percent-complete billing on larger jobs. It also serves as an early warning system. If you are 60 percent through your estimated costs but only 40 percent through the physical work, you are trending over budget and need to investigate immediately.

Labor Cost Tracking for Dirt and Hauling Jobs

Labor is typically the second-largest cost after equipment and fuel on earthwork jobs, and it is the one most contractors underestimate. Loaded labor cost is not just the wage rate. It includes payroll taxes (roughly 7.65 percent for the employer FICA share), workers compensation insurance (which can run 8 to 15 percent of payroll in the excavation and grading classification), general liability allocation, and any benefits.

For most earthwork operations in 2026, a realistic loaded labor rate for an operator or driver falls between $55 and $90 per hour depending on region, classification, and whether the work is union or open shop. In high-cost markets like the dirt exchange in San Francisco or dirt exchange in Seattle regions, loaded rates frequently exceed $90 to $110 per hour for experienced heavy equipment operators.

In your spreadsheet, set up a separate section within the Labor tab that breaks out:

This breakdown lets you see exactly where your labor budget is going and whether you are allocating it correctly across multiple active jobs.

Equipment Cost Tracking: Owned vs. Rented

Owned equipment costs are often invisible in job costing because there is no invoice showing up every week the way a rental bill does. But owned equipment has real costs: depreciation, maintenance, insurance, and the cost of capital tied up in the machine. If you ignore these, you will systematically underprice jobs and wonder why your bank account does not reflect your busy schedule.

A solid approach for owned equipment is to establish an internal rental rate for each machine. The Associated General Contractors of America and similar industry bodies publish guidance on equipment cost recovery rates, and many contractors use a rate between 50 and 85 percent of the local rental market rate as their internal charge-out rate for owned equipment.

For your spreadsheet, create an equipment rate card on a separate reference tab:

Equipment Internal Rate (per hour) Fuel Consumption (gal/hr) Notes
Excavator (mid-size) $125/hr 5.5 Includes maintenance reserve
Dozer (D6 equivalent) $145/hr 7.0
Skid Steer $65/hr 2.5
Semi Truck and Trailer $95/hr 6.0
Articulated Dump Truck $110/hr 7.5

Then on your daily production log, record actual hours per machine. Your estimate vs. actual tab pulls the total equipment cost by multiplying hours times the rate card, automatically.

For rented equipment, the process is simpler: enter the invoice amount directly into the Actual Cost column for Equipment (rented) on your main tracking tab.

Find or Post Dirt, Rock & Aggregate

Join thousands of contractors using DirtMatch to buy, sell, and exchange earthwork materials.

Try DirtMatch Free

Hauling and Disposal Cost Tracking in Detail

On many dirt jobs, especially import and export scenarios, hauling and disposal can represent 40 to 60 percent of total project cost. This is why the hauling detail tab described earlier is so important, and why finding efficient haul routes and nearby disposal or fill sources can make or break your margin.

Key cost drivers to track separately within hauling:

Fuel costs per load: Calculate this by tracking miles driven per round trip, your truck's average loaded MPG (typically 4 to 6 MPG for a loaded semi), and the current diesel price. Do not use a blended estimate across the fleet. Track each truck separately if you have more than two or three units, because fuel efficiency varies significantly by vehicle age and maintenance status.

Disposal and gate fees: These vary enormously by region and material type. Clean fill disposal at a permitted landfill or fill site might run $5 to $20 per ton. Contaminated soil disposal can run $50 to $200 per ton or more. Always verify disposal costs before bidding, and track actuals against your estimate load by load.

Driver wait time: This is the silent killer in hauling profitability. If your drivers are waiting 45 minutes per load at a dump site that you estimated at 20 minutes, you are losing roughly a full load of capacity per truck per day. Track wait times on your hauling log and use the data to renegotiate with dump sites or find alternatives.

One effective strategy for reducing hauling costs is matching your surplus dirt with nearby projects that need fill, or vice versa. The how DirtMatch works page explains how the platform connects contractors who have excess material with those who need it in the same region, cutting haul distances and disposal fees significantly. This kind of match can directly improve the numbers showing up in your hauling cost tracker.

Benchmarking Your Numbers: What Good Looks Like

Once you have three to five jobs tracked through your spreadsheet system, you will have real benchmarks to measure against. Until then, use industry reference points to calibrate your estimates.

Typical Earthwork Cost Benchmarks (2026)

Job Type Typical Cost per CY Typical Gross Margin Key Variable
General excavation (soft soil) $8 to $14 18 to 25% Haul distance
Rock excavation (blasting req.) $35 to $65 15 to 20% Rock hardness, access
Fill placement and compaction $6 to $12 20 to 28% Material source distance
Site clearing and grubbing $1,500 to $4,000/acre 22 to 30% Vegetation density
Grading and finish $4 to $9 20 to 25% Spec tolerance
Aggregate hauling (per ton) $12 to $35 15 to 22% Haul route, weight limits

These are national averages. Regional variation is significant. Markets like dirt exchange in Denver or dirt exchange in Los Angeles have their own cost structures driven by local labor rates, fuel prices, permitting costs, and material availability. Your own tracked data, once you have enough of it, will always be more accurate than any published benchmark.

Red Flags to Watch in Your Tracker

Set up conditional formatting in your spreadsheet to flag the following automatically:

These visual alerts turn your spreadsheet from a passive record-keeper into an active management tool.

Integrating Change Orders Into Your Tracker

Change orders are where many earthwork contractors inadvertently give away money. A site owner asks for additional work, the contractor performs it to maintain the relationship, and the cost gets absorbed into the original contract budget without proper documentation. Your profitability tracker needs a built-in change order management process.

Add a Change Orders tab with the following columns:

CO Number Date Requested Description Estimated Cost Estimated Revenue Margin % Status (Approved/Pending/Denied) Invoice Number

Every change order should flow through this tab before work begins. Your summary dashboard should automatically add approved change order revenue to the contract value and add the associated estimated costs to the total estimated cost, so your projected margin stays current.

A simple rule: never perform additional scope without a written change order, even on a handshake job. Your tracker reinforces this discipline by making the financial impact of unapproved changes immediately visible.

Using Historical Data to Improve Future Bids

The most powerful long-term benefit of a dirt job profitability tracker is the database it creates. After 12 to 18 months of consistent tracking, you will have a library of actual cost data covering different soil types, haul distances, equipment configurations, and crew sizes. This is worth more than any estimating software subscription because it reflects your actual operation.

Create a Bid History tab that pulls summary data from each completed job:

Job # Job Type Total CY Moved Total Revenue Total Cost Gross Margin % Cost per CY Fuel Cost per Hour Labor Hours Key Notes

Sort this table by job type and review it before pricing each new bid. Look for patterns. Are grading jobs consistently more profitable than excavation jobs in your operation? Is a particular dump site consistently adding costs? Are certain crew configurations more efficient?

This data compounds in value over time. A contractor with three years of tracked job data can bid with a confidence and accuracy that competitors using gut instinct simply cannot match. It also makes conversations with bankers, bonding agents, and large project owners much more credible when you can show documented historical performance.

Contractors who pair this kind of data discipline with smarter material sourcing see the biggest margin improvements. Getting started with DirtMatch through get started with DirtMatch gives you access to a network of material matches that can reduce your input costs and improve the numbers you see in your tracker every single time.

Common Mistakes and How to Avoid Them

Even contractors who build a profitability tracker sometimes undermine it with avoidable habits. Here are the most common mistakes and practical fixes.

Mistake 1: Updating the tracker only at job close. This defeats the entire purpose. Set a recurring daily or weekly calendar reminder to update the daily log and the estimate vs. actual tab. Even a five-minute update is enough to catch trends before they become disasters.

Mistake 2: Lumping all equipment into one cost line. Track each machine separately. If your excavator is running over budget but your dozer is under, lumping them together hides the problem and the opportunity.

Mistake 3: Not tracking indirect costs. Every job should carry an allocation for overhead: office staff, insurance, shop costs, small tools, and similar expenses. A common approach is to add a burden rate of 8 to 15 percent to direct job costs to cover overhead. Without this, your margin calculations will look better than reality.

Mistake 4: Ignoring mobilization and demobilization costs. Moving equipment to and from a site costs real money in fuel, driver time, and sometimes permitted oversize loads. These should be estimated and tracked as a separate line item, not buried in equipment hours.

Mistake 5: Using a single diesel price for the whole job. On a long job, fuel prices can shift meaningfully. Track fuel receipts or update your fuel cost assumption monthly using current rack prices in your area.

Mistake 6: Never reviewing the data with your team. Share job cost summaries with your foremen and key operators. When field crews understand how their decisions affect profitability, they make better decisions. This is especially true around idle time, fuel management, and equipment utilization.

Scaling Up: When a Spreadsheet Is Not Enough

A well-built spreadsheet profitability tracker will serve most small and mid-size earthwork contractors through several million dollars in annual revenue. But there are signals that you may need purpose-built job costing software:

Even if you eventually upgrade to dedicated software, the habits and structure you develop building a spreadsheet tracker translate directly. The cost categories, margin targets, and benchmarks you establish in a spreadsheet remain valid regardless of the tool you use to track them.

For hauling and material sourcing efficiency alongside whatever tracking system you use, DirtMatch Pro offers features specifically designed for earthwork contractors who want to optimize material logistics at scale, reducing the hauling cost line that often determines whether a job hits its margin target or falls short.

Final Thoughts: Tracking Is the Discipline That Separates Profitable Contractors

Building a dirt job profitability tracker in a spreadsheet requires about four to six hours of setup time. Once built, it requires 10 to 20 minutes of daily maintenance per active job. That investment pays for itself on the first job where you catch a cost overrun early enough to correct it, or the first bid where your historical data helps you price accurately while a less-disciplined competitor either overpays or walks away from a job they could have won.

The earthwork industry is demanding. Margins are real but thin, and they shrink quickly when any major cost category runs out of control. A profitability tracker does not guarantee success, but it guarantees visibility. And in this business, visibility is the foundation of every good decision you make from the first load to the final invoice.

Start simple. Build the six tabs described in this guide. Commit to daily updates on your next job. Review the summary tab before you submit your next bid. The discipline compounds, and so do the results.