> 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/how-tos/operations-and-unit-economics/build-an-opex-planning-model.md).

# Build an Opex Planning Model

{% hint style="info" %}
Before you start

You should have:

* A basic revenue and staffing structure in your model.
* A list of Opex categories you care about for planning and reporting.
* An understanding of Opex variables and categories in Model Reef.

If needed, review:

* **Build a Staffing Cost Model**
* **Model Structure Principles**
  {% endhint %}

## Build an Opex Planning Model

This guide explains how to build a structured Opex planning model in Model Reef using Opex and Staff variables, categories, and drivers. The focus is on building a clear, scalable cost view that ties into P\&L, Cashflow and valuation.

What you will build

* A category based Opex layout (for example marketing, rent, technology, overhead).
* Opex variables that can be fixed, variable or driver based.
* A forecast that flows into:
  * Operating Expenses in P\&L.
  * Payments to Suppliers in Cashflow.
  * Opex lines in the Cash Waterfall.
* A structure you can adapt for budgets and scenarios.

{% stepper %}
{% step %}

### Define your Opex categories

Start with a simple but useful category structure, for example:

* Marketing and advertising.
* Technology and software.
* Rent and premises.
* Professional services.
* Travel and entertainment.
* General and administrative.

These should map cleanly to how you want to see Opex in reports and dashboards.
{% endstep %}

{% step %}

### Create base Opex variables

For each category, create one or more **Opex variables**:

* Name them clearly, such as:
  * `Opex - Marketing - Paid Ads`.
  * `Opex - Technology - SaaS Tools`.
  * `Opex - Rent - Head Office`.
* Assign categories and sub categories consistent with your hierarchy.
* Set the basic amount pattern:
  * Fixed monthly or annual values.
  * Scheduled one offs.
  * Simple escalation over time.

This creates a foundation you can refine with drivers.
{% endstep %}

{% step %}

### Introduce drivers for variable Opex

Some Opex behaves as a function of activity or revenue, for example:

* Marketing spend as a percentage of revenue.
* Payment processing fees linked to transaction volume.
* Customer support costs linked to active users.

To model these:

* Create **drivers** in the Data Library for the underlying activity, for example:
  * `Driver - Marketing ratio to Revenue`.
  * `Driver - Payment fee rate`.
* In the relevant Opex variables, use formulas that reference these drivers and revenue or volume variables, for example:
  * `Opex - Marketing - Paid Ads = Revenue × Marketing ratio driver`.
* Check the resulting Opex pattern as revenue changes.

This ensures that Opex scales coherently with the business.
{% endstep %}

{% step %}

### Add timing and seasonality

For Opex with seasonality or irregular patterns:

* Use scheduling or presets to spike spend in relevant periods, such as:
  * Annual insurance premiums.
  * Periodic marketing campaigns.
  * Project based consulting fees.
* In each Opex variable, configure:
  * Start date and end date.
  * Frequency and schedule.
  * Any payment delays if invoices are paid after services are delivered.

These rules flow through to P\&L and Cashflow automatically.
{% endstep %}

{% step %}

### Review Opex profile and ratios

Open the **P\&L** and review:

* Total Opex by category.
* Opex as a percentage of revenue.
* Key ratios such as marketing spend to revenue or technology spend per customer.

You can build charts that show:

* Opex mix over time.
* Opex per unit (for example per user or per store).
* Opex comparisons across branches or divisions.

This helps you understand cost structure and opportunities for efficiency.
{% endstep %}

{% step %}

### Build Opex planning scenarios

To plan for different cost strategies, create separate models or scenario copies, for example:

* `Model - Opex - Base Plan`.
* `Model - Opex - Cost Control`.
* `Model - Opex - Growth Investment`.

In each:

* Adjust Opex drivers and escalation rates.
* Change variable Opex ratios to revenue.
* Introduce or remove specific spend initiatives.

Compare EBITDA, cash and valuation across these Opex strategy models.
{% endstep %}
{% endstepper %}

### Check your work

* Opex categories reflect how you want to manage and report costs.
* Fixed and variable Opex are clearly separated where helpful.
* Activity linked Opex responds correctly to revenue or other drivers.
* P\&L and Cash Waterfall show a believable cost trajectory.

### Troubleshooting

<details>

<summary>Opex appears too volatile</summary>

Check for aggressive growth rates or schedules that cluster too much spend in short periods.

</details>

<details>

<summary>Too many small variables</summary>

Group immaterial items into a single bucket to keep the model readable.

</details>

<details>

<summary>Hard to see savings from cost initiatives</summary>

Build a dedicated Opex dashboard that shows before and after comparisons, or maintain separate models for different cost strategies.

</details>

### Related guides

* [Fleet Utilisation & Cost Modelling](/use-cases/logistics-transport-and-fleet/fleet-utilisation-and-cost-modelling.md)
* [Tags](/help/permissions-and-collaboration/tags.md)
* [Tax Logic](/help/financial-outputs-and-valuation/tax-logic.md)
* [Allowed Operators](/syntax/formula-syntax/allowed-operators.md)
