{
  "slug": "trucking-cost-per-mile",
  "title": "Trucking Cost Per Mile Calculator",
  "heading": "Cost Per Mile Calculator",
  "category": "financial",
  "url": "https://www.revenuelab.fyi/toolbox/trucking-cost-per-mile",
  "summary": "Owner-operator fixed and variable cost per mile, and the rate you need.",
  "description": "Cost per mile is fixed costs spread over the miles you actually run plus per-mile variable costs. Once you know it, any load board rate becomes a simple yes or no.",
  "formula": "CPM = (annual fixed ÷ annual miles) + fuel/mpg + maintenance + tires + driver pay per mile.",
  "dateModified": "2026-09-30",
  "run_url": "https://www.revenuelab.fyi/api/public/calc?tool=trucking-cost-per-mile",
  "inputs": [
    {
      "id": "miles",
      "label": "Annual miles",
      "kind": "number",
      "hint": null,
      "default": 100000,
      "unit": null,
      "min": 1000,
      "max": null
    },
    {
      "id": "truckPayment",
      "label": "Truck + trailer payment (monthly)",
      "kind": "number",
      "hint": null,
      "default": 2400,
      "unit": "$",
      "min": 0,
      "max": null
    },
    {
      "id": "insurance",
      "label": "Insurance (monthly)",
      "kind": "number",
      "hint": null,
      "default": 1100,
      "unit": "$",
      "min": 0,
      "max": null
    },
    {
      "id": "permits",
      "label": "Permits, IFTA, plates (annual)",
      "kind": "number",
      "hint": null,
      "default": 4200,
      "unit": "$",
      "min": 0,
      "max": null
    },
    {
      "id": "fuelPrice",
      "label": "Diesel price",
      "kind": "number",
      "hint": null,
      "default": 3.85,
      "unit": "$/gal",
      "min": 0,
      "max": null
    },
    {
      "id": "mpg",
      "label": "Fuel economy",
      "kind": "number",
      "hint": null,
      "default": 6.5,
      "unit": "mpg",
      "min": 1,
      "max": null
    },
    {
      "id": "maintenance",
      "label": "Maintenance + tires",
      "kind": "number",
      "hint": null,
      "default": 0.19,
      "unit": "$/mi",
      "min": 0,
      "max": null
    },
    {
      "id": "driverPay",
      "label": "Driver pay",
      "kind": "number",
      "hint": null,
      "default": 0.6,
      "unit": "$/mi",
      "min": 0,
      "max": null
    },
    {
      "id": "deadheadPct",
      "label": "Deadhead miles",
      "kind": "number",
      "hint": null,
      "default": 12,
      "unit": "%",
      "min": 0,
      "max": 50
    },
    {
      "id": "targetMargin",
      "label": "Target profit margin",
      "kind": "number",
      "hint": null,
      "default": 15,
      "unit": "%",
      "min": 0,
      "max": 60
    }
  ],
  "outputs": [
    {
      "id": "rate",
      "label": "Rate per loaded mile to hit margin",
      "format": "currency",
      "hint": null,
      "primary": true
    },
    {
      "id": "cpm",
      "label": "Total cost per mile",
      "format": "currency",
      "hint": null,
      "primary": false
    },
    {
      "id": "cpmLoaded",
      "label": "Cost per loaded mile (with deadhead)",
      "format": "currency",
      "hint": null,
      "primary": false
    },
    {
      "id": "fixedCpm",
      "label": "Fixed cost per mile",
      "format": "currency",
      "hint": null,
      "primary": false
    },
    {
      "id": "fuelCpm",
      "label": "Fuel cost per mile",
      "format": "currency",
      "hint": null,
      "primary": false
    },
    {
      "id": "annualCost",
      "label": "Total annual operating cost",
      "format": "currency",
      "hint": null,
      "primary": false
    }
  ],
  "worked_example": {
    "inputs": [
      "Annual miles: 100000",
      "Truck + trailer payment (monthly): 2400 $",
      "Insurance (monthly): 1100 $",
      "Permits, IFTA, plates (annual): 4200 $",
      "Diesel price: 3.85 $/gal",
      "Fuel economy: 6.5 mpg",
      "Maintenance + tires: 0.19 $/mi",
      "Driver pay: 0.6 $/mi",
      "Deadhead miles: 12 %",
      "Target profit margin: 15 %"
    ],
    "outputs": [
      "Rate per loaded mile to hit margin: $2.466",
      "Total cost per mile: $1.844",
      "Cost per loaded mile (with deadhead): $2.096",
      "Fixed cost per mile: $0.462",
      "Fuel cost per mile: $0.592",
      "Total annual operating cost: $184,431"
    ]
  },
  "how_to": {
    "title": "How to use this",
    "steps": [
      "Enter annual miles.",
      "Enter truck + trailer payment (monthly) ($).",
      "Enter insurance (monthly) ($).",
      "Enter permits, ifta, plates (annual) ($).",
      "Enter diesel price ($/gal).",
      "Enter fuel economy (mpg).",
      "Enter maintenance + tires ($/mi).",
      "Enter driver pay ($/mi).",
      "Enter deadhead miles (%).",
      "Enter target profit margin (%).",
      "Read your rate per loaded mile to hit margin on the right — it updates as you type.",
      "Hit Share to keep the scenario or send it to someone."
    ]
  },
  "scenarios": [
    {
      "name": "Conservative",
      "description": "Lower-end numbers — what if things land soft?",
      "values": {
        "miles": 60000,
        "truckPayment": 1450,
        "insurance": 650,
        "permits": 2500,
        "fuelPrice": 2.31,
        "mpg": 3.9,
        "maintenance": 0.11399999999999999,
        "driverPay": 0.36,
        "deadheadPct": 7,
        "targetMargin": 9
      }
    },
    {
      "name": "Typical",
      "description": "Defaults — the most common real-world setup.",
      "values": {
        "miles": 100000,
        "truckPayment": 2400,
        "insurance": 1100,
        "permits": 4200,
        "fuelPrice": 3.85,
        "mpg": 6.5,
        "maintenance": 0.19,
        "driverPay": 0.6,
        "deadheadPct": 12,
        "targetMargin": 15
      }
    },
    {
      "name": "Ambitious",
      "description": "Higher-end numbers — what if things really pop?",
      "values": {
        "miles": 160000,
        "truckPayment": 3850,
        "insurance": 1750,
        "permits": 6700,
        "fuelPrice": 6.16,
        "mpg": 10.4,
        "maintenance": 0.30400000000000005,
        "driverPay": 0.96,
        "deadheadPct": 19,
        "targetMargin": 24
      }
    }
  ],
  "limitations": [
    "Results are estimates before tax, fees, and inflation unless an input explicitly covers them.",
    "Rates are treated as fixed for the whole period — variable-rate products will drift from this projection.",
    "This is educational maths, not financial advice. Check anything contractual with the lender or your accountant."
  ],
  "faq": [
    {
      "q": "Why does deadhead raise cost per loaded mile?",
      "a": "Empty miles burn fuel and wear without revenue, so all costs must be recovered over the loaded portion only. At 12 percent deadhead your loaded rate needs to be about 14 percent higher."
    },
    {
      "q": "Should driver pay be included for an owner-operator?",
      "a": "Yes — pay yourself as a line item. Leaving it out makes cheap loads look profitable and hides the fact that you're funding the truck with your own labor."
    }
  ],
  "related": [],
  "license": "CC-BY-4.0",
  "citation": "RevenueLab — Trucking Cost Per Mile Calculator (https://www.revenuelab.fyi/toolbox/trucking-cost-per-mile)"
}