Build a Full Financial Model from Scratch
This guide walks you through building a full financial model in Model Reef without relying on an existing template. You will create structure, variables, timing logic and drivers, then review the automatically generated financial statements and valuation outputs.
Before you start
You should have:
A clear idea of how the business makes money (products, services, contracts).
A basic sense of cost structure (COGS, opex, staff, capex, debt).
Any historical data you want to use (optional but recommended).
You do not need a spreadsheet. All modelling is done directly inside Model Reef using variables and drivers.
What you will build
By the end of this guide you will have:
A branch structure that represents the business.
Core variables for revenue, COGS, opex, staff, tax, assets, liabilities and equity.
Timing rules that control accruals, cash timing, AR and AP.
Automatically generated P&L, Balance Sheet, Cashflow Statement and Cash Waterfall.
A baseline valuation using FCFF and FCFE.
Create a new model
Go to your workspace and click New Model.
Choose:
Currency for the model.
Base periodicity (monthly is typical, weekly for high frequency cash).
Model start date and end date.
Confirm and open the empty model.
Model Reef now creates an empty structure with a single root branch and blank statements.
Design the branch structure
Branches represent business units, entities, products or projects.
Decide how you want to segment the business. Common patterns:
Divisions (Retail, Online, Wholesale).
Entities (HoldCo, OpCo A, OpCo B).
Projects (Project A, Project B).
In the branch panel:
Create one branch for each division or entity.
Keep the root branch as Group or Consolidated.
For shared costs:
Plan a Shared or Central branch for overheads.
You now have the structural backbone for your model.
Add core revenue variables
Revenue is the main driver of the model.
For each revenue stream:
Select the appropriate branch.
Create a Revenue variable with a clear name, for example:
Revenue - Online SubscriptionsRevenue - Retail Stores
In the revenue modal, set:
Start date and end date for the revenue stream.
Units and price:
Either enter units and price directly.
Or link to drivers (for example units and price drivers in the Data Library).
Frequency (monthly, quarterly, annual) and any seasonality.
Delay for cash timing to model AR (for example 30 days, 45 days, 60 days).
Repeat for each major revenue stream.
Add COGS and margin structure
For each revenue stream or group of streams:
Create COGS variables in the same branch or in a COGS sub branch.
Set:
Type to COGS.
Behaviour:
Cost per unit (linked to the same unit driver as revenue).
Percentage of revenue (via formula:
COGS = Revenue × cost_margin).
Delay for supplier payment terms to create AP.
Check the P&L preview in the variable modal to ensure:
Revenue and COGS patterns look sensible.
Gross profit and gross margin behave as expected.
Add opex and staff
Create Opex variables for major expense categories:
Rent, utilities, marketing, software, other overheads.
For each opex variable:
Choose a frequency (monthly, quarterly).
Decide whether amounts are fixed or driver based.
Set delays for payment timing (for AP behaviour).
Create Staff variables for payroll:
Use staff type variables to model salary, superannuation and payroll tax.
Link to headcount drivers or enter fixed headcount values.
Set pay frequency (weekly, fortnightly, monthly) and delays.
Opex and staff will automatically flow into EBITDA and net cashflows.
Add tax, capex and debt
Tax
Open the tax settings or create a Tax variable if your configuration allows.
Set the effective tax rate per entity or consolidated group.
Choose tax payment frequency (monthly, quarterly, annual).
Capex and depreciation
For each major asset:
Create an Asset variable.
Enter purchase cost and purchase date.
Set depreciation method (straight line, reducing balance or units).
Set asset life.
Confirm:
Depreciation appears below EBITDA in the P&L.
Capex appears in Investing Cashflow.
Asset balances decline over time.
Debt
For each loan:
Create a Liability variable.
Define:
Principal.
Interest rate.
Term and amortisation pattern.
Drawdown timing.
Set payment frequency and any bullet repayments.
Confirm:
Interest appears in the P&L.
Loan balances adjust in the Balance Sheet.
Drawdowns and repayments appear in Financing Cashflow.
Configure equity and opening balances
If you are modelling an existing business:
Use opening balance tools or variables to enter:
Opening cash.
Existing assets and liabilities.
Opening retained earnings and share capital.
For new capital injections:
Create Equity variables with:
Injection amounts.
Timing of injections.
Confirm:
Share capital increases in the Balance Sheet.
Cash increases in the Cashflow Statement.
Review statements and Cash Waterfall
Open the system reports:
P&L
Check Revenue, COGS, Gross Profit, Opex, Staff, EBITDA, Depreciation, EBIT, Interest, Tax and NPAT.
Balance Sheet
Ensure Assets = Liabilities + Equity.
Confirm AR, AP, loans and equity behave as expected.
Cashflow Statement
Verify Operating, Investing and Financing sections.
Cash Waterfall
Check the bridge from EBITDA to net cash:
Change in Net Working Capital.
Capex.
Debt movements.
Equity movements.
Dividends.
If anything looks wrong, trace back to the underlying variables using drilldown.
Check your work
Use this checklist:
Branch structure matches the real business.
Every major revenue stream has at least one revenue variable.
COGS correctly links to units or revenue.
Opex and staff are modelled with sensible timing and frequencies.
Tax, capex and debt rules are configured.
Balance Sheet balances in every period.
Cash Waterfall reconciles to Cashflow Statement.
Valuation outputs look broadly plausible.
Troubleshooting
Related guides
Last updated