Project Finance & Financial ModellingCash-flow waterfalls, debt sizing and coverage ratios · Lesson 11 of 20

The cash-flow waterfall and reserve accounts

Article · 14 min · 8 min lecture

Video lecture

The cash-flow waterfall and reserve accounts

9 chapters · about 8 min · full transcript

Coming soon

Chapter 1 of 9

Equity is always last

  • The order in which project cash is paid
  • Reserve accounts and lock-up tests
  • Cash sweeps and why sponsors care

The narrated lecture is in production

Every chapter is scripted and ready. Browse the chapters and read the full transcript now — the video will appear here when it’s published.

Chapters

What the waterfall does

In project finance, cash does not flow freely to shareholders. The loan agreement and accounts agreement define a strict cash-flow waterfall (cascade): the order in which project cash is applied each period. Senior obligations are paid first; equity receives cash only after every higher-priority item is satisfied and certain tests are met.

A typical operating-period waterfall

 1. Revenue received into the proceeds account
 2. Operating costs and taxes
 3. Senior lenders' fees and expenses
 4. Senior interest (and hedging payments)
 5. Senior principal repayment
 6. Top-up of debt service reserve account (DSRA)
 7. Top-up of maintenance reserve account (MRA)
 8. Mezzanine / subordinated debt service (if any)
 9. Cash sweep (mandatory prepayment), if triggered
10. Distribution lock-up test → if passed, distributions to equity
                              → if failed, cash trapped in the project

Exact ordering varies by deal, but the principle is universal: equity is last.

Reserve accounts

ReservePurposeTypical sizing (illustrative)
Debt service reserve account (DSRA)Covers debt service if CFADS temporarily falls shortOften the next 6 months of senior debt service
Maintenance reserve account (MRA)Smooths lumpy lifecycle costsBased on forecast major maintenance over a forward period
Other reservesSpecific risks (e.g., decommissioning, tax, change in law)Deal-specific

The DSRA can be funded in cash at financial close (part of the uses) or through a bank letter of credit instead, which improves equity returns but adds fees.

Distribution tests (lock-up)

Equity distributions are usually permitted only if:

  • The historic (and sometimes projected) DSCR is above a lock-up level (e.g., 1.10x–1.20x, deal-specific).
  • Reserve accounts are fully funded.
  • No default is continuing.

If the test fails, cash is trapped. If performance deteriorates further to a lower default level (e.g., 1.05x), lenders gain remedies. These thresholds protect lenders by keeping cash in the project when it is most needed.

Cash sweeps

A cash sweep uses a portion of excess cash to prepay debt. It can be:

  • Mandatory, triggered by poor performance or specific events (e.g., merchant tail, refinancing risk).
  • Target repayment profile, sweeping cash to keep debt on a target balance.

Sweeps reduce lenders' risk but defer equity returns.

Worked example: one period through the waterfall

Illustrative. A fictional water treatment SPV in Dubai, semi-annual period, values in USD M:

Revenue received                         12.0
Operating costs and tax                  (4.5)
CFADS                                     7.5
Senior interest                          (2.4)
Senior principal                         (3.6)
Total senior debt service                (6.0)   → DSCR = 7.5 / 6.0 = 1.25x
DSRA top-up (already full)                0.0
MRA contribution                         (0.4)
Cash available after reserves             1.1
Lock-up test: DSCR 1.25x ≥ 1.15x lock-up → PASS
Distribution to equity                    1.1

If CFADS had been 6.6 instead, DSCR would be 1.10x, below the lock-up threshold. The 0.2 remaining after the MRA contribution would be trapped in the project rather than distributed.

Accounts structure

Lenders usually control a set of project accounts held with an account bank: proceeds, operating, debt service, reserves, distribution and compensation accounts. Transfers follow the waterfall. This control is part of the lenders' security package.

Why sponsors care

Equity returns depend not just on the project's performance but on when cash can leave the SPV. Lock-ups, sweeps and reserve funding can significantly delay distributions. Sponsors negotiate these terms carefully and model them precisely.

Common mistakes

  • Modelling distributions without lock-up tests.
  • Forgetting the DSRA initial funding in the uses at financial close.
  • Mis-ordering the waterfall compared with the loan agreement.
  • Assuming trapped cash is lost (it is usually released once tests are passed again, subject to terms).

Modelling the waterfall

In the model, build the waterfall as a sequence of rows where each line takes the lower of the cash available and the amount due, and passes the remainder to the next line. Include a "cash available after this item" row after each step so reviewers can follow the flow. Add checks that no line pays more than the cash available and that trapped cash is carried forward correctly. Then test the logic with a deliberately weak period to make sure lock-up and reserve top-ups behave as the loan agreement requires.

Quick self-check

Trace one period by hand from revenue to distributions. If you cannot explain every line in plain language, neither can the lenders' model auditor.

Hands-on: waterfall rows in Excel

CFADS                      =Revenue-Opex-Tax
Senior fees paid           =MIN(CFADS, Fees_due)                 Cash_1 =CFADS-Senior_fees_paid
Senior interest paid       =MIN(Cash_1, Interest_due)            Cash_2 =Cash_1-Interest_paid
Senior principal paid      =MIN(Cash_2, Principal_due)           Cash_3 =Cash_2-Principal_paid
DSRA target                =Next_6m_debt_service
DSRA top-up                =MIN(Cash_3, MAX(0, DSRA_target-DSRA_opening))    Cash_4 =Cash_3-DSRA_top_up
MRA contribution           =MIN(Cash_4, MRA_due)                 Cash_5 =Cash_4-MRA_contribution
DSCR (period)              =CFADS/(Interest_due+Principal_due)
Lock-up pass               =AND(DSCR>=Lockup, DSRA_closing>=DSRA_target, Default_flag=0)
Distribution               =IF(Lock_up_pass, Cash_5+Trapped_opening, 0)
Trapped closing            =IF(Lock_up_pass, 0, Trapped_opening+Cash_5)
Check (no overpayment)     =--(MIN(Cash_1,Cash_2,Cash_3,Cash_4,Cash_5)<-0.001)   must be 0

Whether trapped cash is released with the next passing period, swept to lenders after a number of failed tests, or used for specific purposes depends on the loan agreement; model the actual clause.

Hands-on: the Dubai example in Python

def run_period(cfads, interest, principal, dsra_gap, mra, lockup, trapped=0.0):
    cash = cfads
    paid = {}
    for item, due in [("interest", interest), ("principal", principal), ("dsra", dsra_gap), ("mra", mra)]:
        paid[item] = min(cash, due)
        cash -= paid[item]
    dscr = cfads / (interest + principal)
    passed = dscr >= lockup and paid["dsra"] >= dsra_gap
    dist = cash + trapped if passed else 0.0
    return round(dscr, 2), passed, round(dist, 2), round(0.0 if passed else trapped + cash, 2)

print(run_period(7.5, 2.4, 3.6, 0.0, 0.4, 1.15))   # (1.25, True, 1.1, 0.0)
print(run_period(6.6, 2.4, 3.6, 0.0, 0.4, 1.15))   # (1.1, False, 0.0, 0.2)

How to measure success

  • Every waterfall row cites the loan agreement clause it implements.
  • The no-overpayment check is zero in every period and scenario.
  • Distributions, trapped cash and reserve balances reconcile to cash flow each period.

Key takeaways

  • The waterfall applies cash in strict priority: opex and tax, senior debt, reserves, junior debt, then equity.
  • DSRA and MRA protect debt service against temporary shortfalls and lumpy maintenance.
  • Lock-up tests trap cash when DSCR falls below agreed levels; default levels trigger lender remedies.
  • Model the waterfall exactly as the loan agreement defines it.

Check your understanding

Quick questions to lock in the lesson. They don’t count towards your certificate.

  1. In a typical waterfall, which is paid before equity distributions?
  2. CFADS is 9.0 and senior debt service is 7.5. The lock-up DSCR is 1.15x. Can distributions be made (assuming reserves are full and no default)?
  3. What is the main purpose of a DSRA?

Put it into practice

Draw the waterfall for a project you know or a hypothetical one, and run two periods through it: one passing and one failing the lock-up test.

Enrol for free to save your progress

Reading is always free. Enrol to keep your place, take the final assessment and earn a verifiable certificate.