| Line item | Year 1 | Year 2 | Year 3 | Year 4 | Year 5 |
|---|---|---|---|---|---|
| Revenue | $1,000,000.00 | $1,080,000.00 | $1,166,400.00 | $1,259,712.00 | $1,360,488.96 |
| EBITDA | $280,000.00 | $302,400.00 | $326,592.00 | $352,719.36 | $380,936.91 |
| Net income | $166,875.00 | $182,325.00 | $198,927.00 | $216,773.16 | $235,963.01 |
| Cash from operations | $194,094.18 | $216,902.53 | $236,270.74 | $257,104.40 | $279,520.75 |
| Capital expenditure | $50,000.00 | $54,000.00 | $58,320.00 | $62,985.60 | $68,024.45 |
| Ending cash | $234,094.18 | $366,996.71 | $514,947.45 | $679,066.25 | $860,562.54 |
| Ending debt | $230,000.00 | $210,000.00 | $190,000.00 | $170,000.00 | $150,000.00 |
| Total assets | $708,313.36 | $863,553.42 | $1,035,628.70 | $1,225,801.99 | $1,435,437.15 |
| Liabilities and equity | $708,313.36 | $863,553.42 | $1,035,628.70 | $1,225,801.99 | $1,435,437.15 |
| Balance check | $0.00 | $0.00 | $0.00 | $0.00 | $0.00 |
How do the statements connect?
Ending cash = opening cash + net income + depreciation − change in working capital − capex + debt movement − dividendsRevenue and cost assumptions produce net income. Receivable, inventory and payable days convert operations into working-capital balances. Capital expenditure and depreciation roll net PP&E forward. Debt movement and dividends feed financing cash flow, while retained earnings roll forward from net income less dividends.
Worked base case
The sample starts with $120,000.00 of cash and $250,000.00 of debt. Year 1 revenue is $1,000,000.00, EBITDA is $280,000.00, and cash closes at $234,094.18. Total assets and liabilities plus equity differ by $0.00, so the check passes without a cash or equity plug.
Which assumptions matter most?
Test revenue growth, gross margin and receivable days one at a time. Growth changes all three statements; margin changes operating cash generation; receivable days changes the cash tied up in working capital. The workbook includes visible base, downside and upside scenario inputs.
What does the model check?
- The balance sheet balances within one cent in every period.
- Ending cash equals opening cash plus the cash-flow statement movement.
- Debt and retained earnings reconcile from opening to closing balances.
- Opening balances cannot imply negative share capital.
Limitations and failure states
This educational model uses annual periods, constant operating ratios and a user-entered debt movement. It does not model monthly seasonality, deferred taxes, lease accounting, share repurchases, multiple debt tranches or circular cash sweeps. It is not a filing, fairness opinion, credit decision or investment recommendation.
Editable workbook
Send me the three-statement model
The browser model stays free. Enter your email only if you want the editable Excel version with formulas, checks, assumptions and source notes.
Sources, version and review status
Statement definitions and relationships are checked against Beginners’ Guide to Financial Statements. Spreadsheet mechanics use the same deterministic fixtures as the browser model. Version 1.0 was last checked on 2026-08-25. Methodology review is complete; no named external expert reviewer is claimed.
Related models and formulas
Frequently asked questions
What is three-statement financial model?
A three-statement model links an income statement, balance sheet and cash-flow statement through shared operating, working-capital, investment and financing assumptions.
How should I use three-statement financial model?
Use the formula only after matching every input to the same period, unit and definition. Then compare the result with a worked example and the decision you are trying to make.
What is the most common mistake with three-statement financial model?
The most common mistake is forcing the balance sheet to balance with an unexplained cash or equity plug instead of using linked roll-forwards.
Can I calculate three-statement financial model in a spreadsheet?
Yes. Reproduce the displayed equation with separate cells for each input, keep percentages as decimals, and test the spreadsheet against the worked example before replacing the sample figures.