*This rate accounts for your desired profit and covers the cost of deadhead (empty) miles.
Understanding Trucking Rate Per Mile
Calculating your cost per mile is the single most important mathematical operation for owner-operators and fleet managers. Without knowing exactly what it costs to move your truck one mile down the road, you are essentially gambling with your business finances. This calculator helps determine the minimum rate you must negotiate to cover all fixed expenses, variable operating costs, fuel, and your desired driver salary.
The Formula Components
To determine an accurate rate, expenses are broken down into three categories:
Fixed Costs: These are expenses that must be paid regardless of whether the truck moves or sits parked. They include truck and trailer payments, insurance premiums, license plates, permits (IFTA, IRP), parking, and software subscriptions.
Variable Costs: These costs correlate directly with miles driven. They include tires, maintenance, repairs, washouts, tolls, and broker fees. Fuel is often calculated separately due to its price volatility.
Deadhead (Empty Miles): Since you only get paid for loaded miles, your rate must be high enough to pay for the fuel and wear-and-tear accumulated while driving empty to the next pickup.
How to Calculate Your Rate
The mathematical approach used in this calculator follows these steps:
Determine Fuel Cost Per Mile: Divide current diesel price by your truck's average MPG. Example: $4.00 / 6.5 MPG = $0.62 per mile.
Calculate Fixed Cost Per Mile: Divide total monthly fixed costs by total monthly miles. Example: $3,000 / 10,000 miles = $0.30 per mile.
Add Variable Costs: Add maintenance and tire costs (e.g., $0.15 per mile).
Factor in Profit: Divide your desired monthly income by total monthly miles.
Adjust for Deadhead: The final "All-In" rate is adjusted so that the paid (loaded) miles cover the cost of the unpaid (empty) miles.
Strategic Tip: Never accept a load below your Break-Even Point unless it is a strategic move to get out of a bad market area ("dead zone") to a location with higher paying freight.
In this scenario, the Fuel Cost is $0.63/mile. Fixed Cost is $0.23/mile. Profit requirement is $0.55/mile. The base cost to run is roughly $0.98/mile. However, to achieve the salary goal and cover the 10% empty miles, the driver needs to charge a broker roughly $1.70 – $1.80 per loaded mile.
function calculateTruckingRate() {
// 1. Get Inputs using var
var fixedCostsInput = document.getElementById("fixedCosts").value;
var variableCostsInput = document.getElementById("variableCosts").value;
var fuelPriceInput = document.getElementById("fuelPrice").value;
var mpgInput = document.getElementById("truckMpg").value;
var totalMilesInput = document.getElementById("totalMiles").value;
var deadheadInput = document.getElementById("deadhead").value;
var desiredIncomeInput = document.getElementById("desiredIncome").value;
// 2. Parse values
var fixedCosts = parseFloat(fixedCostsInput);
var variableCosts = parseFloat(variableCostsInput);
var fuelPrice = parseFloat(fuelPriceInput);
var mpg = parseFloat(mpgInput);
var totalMiles = parseFloat(totalMilesInput);
var deadheadPercent = parseFloat(deadheadInput);
var desiredIncome = parseFloat(desiredIncomeInput);
// 3. Validate Inputs
if (isNaN(fixedCosts) || isNaN(variableCosts) || isNaN(fuelPrice) ||
isNaN(mpg) || isNaN(totalMiles) || isNaN(deadheadPercent) || isNaN(desiredIncome)) {
alert("Please fill in all fields with valid numbers.");
return;
}
if (mpg <= 0 || totalMiles <= 0) {
alert("MPG and Total Miles must be greater than zero.");
return;
}
// 4. Perform Calculations
// Fuel cost per mile
var fuelCostPerMile = fuelPrice / mpg;
// Fixed cost per mile (distributed over all miles)
var fixedCostPerMile = fixedCosts / totalMiles;
// Profit requirement per mile (distributed over all miles)
var profitPerMile = desiredIncome / totalMiles;
// Total operational cost per mile (Fuel + Variable + Fixed)
var breakEvenPerMile = fuelCostPerMile + variableCosts + fixedCostPerMile;
// Total rate needed per mile (Break Even + Profit) BEFORE deadhead adjustment
var rateAllMiles = breakEvenPerMile + profitPerMile;
// Adjust for Deadhead
// If 15% is deadhead, only 85% of miles are paid (loaded)
// Loaded Miles Ratio = (100 – Deadhead) / 100
var loadedRatio = (100 – deadheadPercent) / 100;
// Prevent division by zero if deadhead is 100%
if (loadedRatio <= 0) loadedRatio = 0.01;
// Required Rate Per Loaded Mile
// This calculates what you must charge for the loaded miles to cover the costs of the empty miles as well
var requiredRatePerLoadedMile = rateAllMiles / loadedRatio;
// 5. Update UI
document.getElementById("resFuelCost").innerText = "$" + fuelCostPerMile.toFixed(3);
document.getElementById("resFixedCost").innerText = "$" + fixedCostPerMile.toFixed(3);
document.getElementById("resBreakEven").innerText = "$" + breakEvenPerMile.toFixed(3);
document.getElementById("resRequiredRate").innerText = "$" + requiredRatePerLoadedMile.toFixed(2);
// Show results
document.getElementById("resultDisplay").style.display = "block";
}