# Build a Cash Waterfall Model

This guide explains how to build and interpret a Cash Waterfall view in Model Reef. The Cash Waterfall shows how accrual based performance (EBITDA) converts to cash, including working capital, capex, debt and equity movements.

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

You should already have:

* Revenue, COGS, opex and staff variables.
* Some capex and debt modelling, even if simple.
* Reasonable delay settings for revenue and expense cash timing.

If not, consider following the Full Financial Model guide first.
{% endhint %}

{% hint style="info" %}
What you will build

* A model where all major flows are represented as variables.
* A Cash Waterfall that:
  * Starts from Revenue, COGS, Opex and Staff.
  * Bridges through Change in Net Working Capital.
  * Shows capex, debt, tax, equity and dividends.
  * Ends at Net Change in Cash that matches the Cashflow Statement.
    {% endhint %}

***

## Steps

{% stepper %}
{% step %}

### Ensure core variables are in place

Confirm that you have:

* **Revenue variables** with realistic delays for customer payment terms.
* **COGS and Opex variables** with delays for supplier payment terms.
* **Staff variables** with pay timing and any lags.
* **Tax** configuration with a usable effective tax rate.
* **Asset variables** representing capex.
* **Liability variables** for loans and other debt.
* **Equity and Dividends** where relevant.

The Cash Waterfall is only as complete as the variables you feed into it.
{% endstep %}

{% step %}

### Configure delays and payment terms

The Cash Waterfall relies heavily on working capital timing:

* For each revenue variable:
  * Set delay to reflect Days Sales Outstanding, for example:
    * 0 days for prepayment.
    * 30 to 60 days for typical invoice terms.
* For each COGS, Opex and Staff variable:
  * Set delay to reflect Days Payable Outstanding and payroll timing.
* For tax:
  * Configure tax payment frequency and delays.

These settings control AR, AP and other payables that will appear in Change in Net Working Capital.
{% endstep %}

{% step %}

### Review P\&L and Cashflow Statement

Before opening the Cash Waterfall:

* Review the **P\&L**:
  * Ensure Revenue, COGS, Opex, Staff, Depreciation, Interest, Tax and NPAT look reasonable.
* Review the **Cashflow Statement**:
  * Confirm Operating, Investing and Financing cashflows make sense.
  * Check that Closing Cash reconciles with the Balance Sheet.

If these are materially wrong, fix variables first.
{% endstep %}

{% step %}

### Open the Cash Waterfall

* Navigate to the **Cash Waterfall** report or dashboard.
* Confirm the structure:
  * Revenue.
  * COGS.
  * Opex.
  * Staff.
  * EBITDA.
  * Change in Net Working Capital.
  * Tax.
  * Capex.
  * Interest.
  * Debt movements.
  * Equity injections.
  * Dividends.
  * Net Change in Cash.
    {% endstep %}

{% step %}

### Interpret Change in Net Working Capital

Change in Net Working Capital captures the effect of timing differences between P\&L and cash:

* Positive Change in Net Working Capital typically means:
  * Cash is being tied up (for example growing AR or inventory like behaviour).
* Negative Change in Net Working Capital means:
  * Working capital is releasing cash (for example reducing AR or extended AP).

Use this to understand whether growth is cash hungry or cash generative.
{% endstep %}

{% step %}

### Analyse capex and financing flows

In the Cash Waterfall:

* Confirm **Capex** matches your asset variable definitions.
* Check **Interest Paid** and **Debt Movements**:
  * Drawdowns increase cash.
  * Repayments decrease cash.
* Look at **Equity injections** and **Dividends**:
  * Equity increases cash.
  * Dividends reduce cash.

Together these show how financing decisions impact net cash.
{% endstep %}

{% step %}

### Validate reconciliation to Cashflow Statement

The final **Net Change in Cash** in the Cash Waterfall should match:

* The Net Cashflow in the Cashflow Statement.
* The change in the Cash balance on the Balance Sheet.

If they do not match, check for:

* Missing or misclassified variables.
* Incorrect category mappings.
* Edge cases in working capital modelling.
  {% endstep %}
  {% endstepper %}

***

## Check your work

{% hint style="success" %}

* All material revenue, cost, tax, capex, debt, equity and dividend flows are present as variables.
* Delays and payment terms correctly generate AR and AP behaviour.
* Change in Net Working Capital behaves intuitively.
* Net Change in Cash in the Cash Waterfall matches the Cashflow Statement.
  {% endhint %}

***

## Troubleshooting

<details>

<summary>Change in Net Working Capital is volatile or unintuitive</summary>

Recheck delay settings and ensure they reflect real payment terms.

</details>

<details>

<summary>Cash Waterfall does not match Cashflow Statement</summary>

Inspect variable types and categories; an incorrectly typed variable may appear in the wrong section.

</details>

<details>

<summary>Capex or debt missing from the waterfall</summary>

Confirm asset and liability variables are correctly set up as Assets and Liabilities, not generic Opex.

</details>

***

## Related guides

* [Fund Cash Flow (Capital Calls/Distributions)](/use-cases/portfolio-funds-vc-pe-and-family-offices/fund-cash-flow-capital-calls-distributions.md)
* [Getting Started](/help/getting-started.md)
* [Gross Profit Logic](/help/financial-outputs-and-valuation/gross-profit-logic.md)
* [Naming & Autocomplete](/syntax/variables-syntax/naming-and-autocomplete.md)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://help.modelreef.io/how-tos/core-modelling/build-a-cash-waterfall-model.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
