> For the complete documentation index, see [llms.txt](https://help.modelreef.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://help.modelreef.io/use-cases/logistics-transport-and-fleet/fuel-and-maintenance-forecasting.md).

# Fuel & Maintenance Forecasting

This use case explains how to forecast fuel and maintenance costs for logistics, transport and fleet based businesses using Model Reef.

You will:

* Use utilisation drivers such as kilometres or hours to drive fuel and maintenance.
* Separate price and volume effects on fuel cost.
* Model routine and major maintenance events.
* Connect fuel and maintenance to route profitability, asset planning and cashflow.

The aim is to move fuel and maintenance from a single line guess to a driver based, transparent structure that can be stress tested in scenarios.

## When to use this pattern

Use this pattern when:

* Fuel and maintenance are major cost categories.
* You want to understand sensitivity to fuel price, efficiency and utilisation.
* You need to plan major services, overhauls or rebuilds.
* You want fuel and maintenance decisions visible in P\&L, cash and valuation.

You will usually combine this with:

* **Fleet Utilisation and Cost Modelling**
* **Route and Region Profitability**
* **Asset Replacement Planning**

***

## Architecture overview

Fuel and maintenance forecasting uses:

1. Utilisation drivers
   * Kilometres or hours per fleet group, region or vehicle type.
2. Fuel cost structure
   * Fuel burn per kilometre or hour.
   * Fuel price and taxes.
   * Efficiency improvements or deterioration.
3. Maintenance cost structure
   * Routine maintenance cost per kilometre or hour.
   * Major services or overhauls based on intervals.
   * Tyres and other wear items.
4. Financial integration
   * COGS and Opex variables for fuel and maintenance.
   * Cashflow impact through payment timing.
   * Scenario analysis for price and utilisation shocks.

***

{% stepper %}
{% step %}

### Define utilisation drivers

Ensure your model already has utilisation drivers from fleet modelling, for example:

* `Kilometres per Period - Linehaul Fleet`.
* `Kilometres per Period - Last Mile Fleet`.
* `Operating Hours per Period - Bus Fleet`.

If not, create these based on:

* Historical odometer or telematics data.
* Planned schedule and route patterns.
* Contract commitments and forecasts.

These drivers will be the base for both fuel and maintenance calculations.
{% endstep %}

{% step %}

### Build fuel burn and price drivers

In the Data Library, define fuel related drivers such as:

* `Fuel Burn per 100 km - Linehaul Fleet`.
* `Fuel Burn per 100 km - Last Mile Fleet`.
* `Fuel Price per Litre` by region or country.
* `Fuel Efficiency Modifier` to capture improvements or deterioration over time.

Calculate fuel cost per kilometre as:

* `Fuel Cost per km = (Fuel Burn per 100 km ÷ 100) × Fuel Price per Litre × Fuel Efficiency Modifier`.

You can vary fuel price over time to reflect known or expected changes in fuel markets or tax regimes.
{% endstep %}

{% step %}

### Create fuel cost variables

For each fleet group or region, create COGS variables such as:

* `COGS - Fuel - Linehaul North`.
* `COGS - Fuel - Last Mile Metro`.

Define formulas such as:

* `COGS - Fuel - Linehaul North = Kilometres per Period - Linehaul North × Fuel Cost per km - Linehaul Fleet`.

Set appropriate timing:

* Occurrence when kilometres are driven.
* Payment delay based on supplier terms (for example 14 or 30 days).

This ensures that:

* Fuel expense hits P\&L when utilisation occurs.
* Cash outflows follow supplier payment terms.
* AP and cash effects are visible in Balance Sheet and Cashflow outputs.
  {% endstep %}

{% step %}

### Model routine maintenance cost

Routine maintenance often scales with utilisation. In the Data Library, define drivers such as:

* `Routine Maintenance Cost per km - Linehaul Fleet`.
* `Routine Maintenance Cost per km - Last Mile Fleet`.
* Or per hour where that is more appropriate.

Then create COGS or Opex variables such as:

* `COGS - Routine Maintenance - Linehaul North`.
* `COGS - Routine Maintenance - Last Mile Metro`.

Formulas typically look like:

* `Routine Maintenance Cost = Kilometres per Period × Maintenance Cost per km`.

Again, use timing to reflect payment terms with workshops or internal recharge arrangements.
{% endstep %}

{% step %}

### Model major maintenance, overhauls and tyres

Major maintenance events and tyres do not always scale linearly. To capture these, you can:

* Schedule major services at intervals based on utilisation, for example every X kilometres.
* Use schedules or seasonality style drivers to reflect expected timing.
* Represent costs as one off or lumpy variables in the periods where major work is expected.

Examples:

* `COGS - Major Overhaul - Truck Group A` scheduled every three to five years.
* `COGS - Tyres - Linehaul Fleet` based on expected tyre life in kilometres.

You can approximate this by:

* Averaging major costs into a cost per kilometre if you want a smooth view.
* Or explicitly scheduling major events if you want to see lumpy cash outflows.
  {% endstep %}

{% step %}

### Integrate with route profitability and asset planning

Once fuel and maintenance costs are driven by utilisation:

* Route and region level profitability can include realistic running costs.
* You can compare routes with different distance, speed and road conditions.
* Asset Replacement Planning can incorporate the rising cost of maintaining older vehicles.

For example, use a driver such as:

* `Maintenance Escalation for Vehicles Over X Years Old`.

Apply this modifier to maintenance cost per kilometre as the fleet ages to reflect higher maintenance costs for older units.
{% endstep %}

{% step %}

### Use scenarios for fuel price and utilisation shocks

Clone your base model into scenario models to explore:

* Fuel price spikes or reductions.
* Efficiency improvements from newer vehicles or driver training.
* Changes in utilisation due to new contracts, lost work or network redesign.
* Accelerated or deferred major maintenance.

In each scenario, adjust:

* Fuel price and efficiency drivers.
* Maintenance cost per kilometre and major event schedules.
* Utilisation drivers per fleet group and region.

Compare scenarios using:

* Total fuel and maintenance cost.
* Cost per kilometre or per route.
* Margin and cash impacts.
* Required pricing changes to maintain profitability.
  {% endstep %}
  {% endstepper %}

***

{% hint style="info" %}

### Check your work

* Utilisation drivers align with historical data when the model is calibrated.
* Fuel burn and unit cost assumptions are based on real fleet performance and current fuel prices.
* Maintenance cost patterns and major events roughly match workshop records or fleet manager expectations.
* The split between routine and major maintenance is useful for planning but not unnecessarily complex.
  {% endhint %}

***

## Troubleshooting

<details>

<summary>Fuel cost in the model is much higher or lower than actuals</summary>

Review fuel burn, price and utilisation assumptions and confirm that distance units are consistent across all drivers and variables.

</details>

<details>

<summary>Maintenance cost appears too smooth or too lumpy</summary>

Adjust the balance between cost per kilometre and explicit major events to reflect the level of detail you need.

</details>

<details>

<summary>Scenario results are hard to interpret</summary>

Use dashboards that separate fuel and maintenance from other costs and focus on unit cost metrics such as cost per kilometre to clarify patterns.

</details>

***

## Related guides

* [Build a Dilution / Cap Table Impact Model](/how-tos/investment-and-transactions/build-a-dilution-cap-table-impact-model.md)
* [Build a Discount Rate Scenario Model](/how-tos/valuation/build-a-discount-rate-scenario-model.md)
* [Divisional Structures](/help/building-your-model/divisional-structures.md)
* [Overriding Variables](/syntax/scenario-syntax/overriding-variables.md)
