3-Statement Model Skill
What is a 3-Statement Model?
Every public company reports three core financial statements: the Income Statement (how much the company earned), the Balance Sheet (what the company owns and owes), and the Cash Flow Statement (how cash moved in and out). A 3-statement model is an integrated Excel framework that connects all three statements so that changing one assumption — like revenue growth — automatically flows through to every other statement. Think of the three statements as three lenses on the same business:- The Income Statement (also called the P&L — Profit and Loss) shows the company’s economic performance over a period. Did the company make money? How much revenue came in, and how much did it cost to generate that revenue? The bottom line is Net Income — what the company earned after all expenses, interest, and taxes.
- The Balance Sheet is a snapshot of what the company owns (Assets) and what it owes (Liabilities) at a specific point in time. The difference is Shareholders’ Equity — the residual value belonging to owners. The fundamental accounting equation is: Assets = Liabilities + Equity. This equation must always hold true.
- The Cash Flow Statement reconciles the gap between earnings and cash. A company can report $100M in net income but actually have less cash at the end of the year than the beginning — because it invested in equipment, paid down debt, or had customers who have not paid yet. The Cash Flow Statement explains where the cash actually went.
Detailed Worked Example
Let us build a simplified 3-statement model for RetailCo, a fictional retail company, for one projection year. Historical Data (Year 0 Actuals):- Revenue: $1,000M
- COGS: $600M (60% of revenue)
- SG&A: $200M (20% of revenue)
- D&A: $50M (5% of revenue)
- Interest Expense: $20M
- Tax Rate: 25%
- Beginning PP&E: $400M
- Beginning Total Debt: $300M
- Beginning Retained Earnings: $250M
- Beginning Cash: $80M
- Beginning AR: 120M; AP: $80M
- Revenue growth: 8%
- COGS: 59% of revenue (margin improvement)
- SG&A: 19% of revenue (operating leverage)
- D&A: 5% of revenue
- CapEx: 7% of revenue
- DSO stays at 36.5 days; DIO stays at 73 days; DPO stays at 48.7 days
- Debt repayment: $30M mandatory amortization
- No new equity issuance; No dividends
Working Capital Schedule
Balance Sheet
Integrity Checks
| Check | Formula | Result |
|---|---|---|
| BS Balance | Assets - L - E | 797.7M = $0 |
| Cash Tie-Out | CF Ending Cash - BS Cash | 140.7M = $0 |
| NI Link | IS Net Income - CF Starting NI | 122.7M = $0 |
| RE Roll | Prior RE + NI - Dividends - Ending RE | 122.7 - 372.7 = $0 |
| PP&E Roll | Prior PP&E + CapEx - D&A - Ending PP&E | 75.6 - 421.6 = $0 |
| Debt Roll | Prior Debt - Repayment - Ending Debt | 30 - 0 |
Why It Matters
The 3-statement model is the foundation upon which all other financial analysis is built:- DCF models rely on projected free cash flows, which come from the 3-statement model
- LBO models need operating projections and cash flow for debt paydown — both from the 3-statement model
- Credit analysis requires projected leverage ratios and interest coverage — derived from the 3-statement model
- Scenario planning uses the integrated model to test “what if” questions: What if revenue grows 5% instead of 10%? What if margins compress? What if interest rates rise?
Key Concepts
| Term | Definition | Why It Matters |
|---|---|---|
| Revenue | Total sales or income generated by the company’s business activities. | The top line — everything else in the model flows from revenue assumptions. |
| COGS | Cost of Goods Sold. Direct costs of producing goods or services. | Revenue minus COGS = Gross Profit. This measures production efficiency. |
| EBITDA | Earnings Before Interest, Taxes, Depreciation, and Amortization. | The most common measure of operating profitability, used in virtually every valuation multiple. |
| Net Income | The bottom line — revenue minus all expenses, interest, and taxes. | Links to Retained Earnings on the BS and starts the CF statement. |
| Working Capital | Current Assets minus Current Liabilities. Includes Accounts Receivable, Inventory, and Accounts Payable. | Changes in working capital consume or release cash. Growing companies often consume working capital. |
| D&A | Depreciation and Amortization. Non-cash expenses that spread the cost of assets over their useful life. | Reduces earnings but does not consume cash. Added back on the Cash Flow Statement. |
| CapEx | Capital Expenditures. Money spent on long-term assets like equipment and buildings. | Consumes cash but does not appear as an expense on the IS (it is capitalized on the BS). |
| Retained Earnings | Cumulative net income minus cumulative dividends. | The link between the IS and BS: Prior RE + Net Income - Dividends = Current RE. |
| Free Cash Flow | Cash generated by operations minus capital expenditures. | The cash available to distribute to investors or reinvest in the business. |
| DSO/DIO/DPO | Days Sales Outstanding, Days Inventory Outstanding, Days Payable Outstanding. | Key drivers of working capital. DSO = AR / Revenue x 365. DIO = Inventory / COGS x 365. DPO = AP / COGS x 365. |
How It Works
Triggers when: asked to fill in, complete, or populate a 3-statement model template, complete a partially filled IS/BS/CF framework, or link integrated financial statements.Environment: Office JS vs Python/openpyxl
- Office JS (Excel Add-in)
- Python/openpyxl (Standalone .xlsx)
range.formulas = [["=D14*(1+Assumptions!$B$5)"]] — never range.values for derived cells. No separate recalc; Excel computes natively.Merged cell pitfall: Do NOT call .merge() then set .values on the merged range. Instead write value to top-left cell alone, then merge and format the full range.Core Linkages (Must Always Hold)
These are the mathematical connections that make the model “integrated.” If any of these break, the model has an error:| Check | Formula | Expected Result |
|---|---|---|
| Balance Sheet Balance | Assets - Liabilities - Equity | = 0 |
| Cash Tie-Out | CF Ending Cash - BS Cash | = 0 |
| Net Income Link | IS Net Income - CF Starting Net Income | = 0 |
| Retained Earnings | Prior RE + NI - Dividends - BS Ending RE | = 0 |
| Equity Financing | Change in Common Stock/APIC (BS) - Equity Issuance (CFF) | = 0 |
Sign Convention Reference
Getting signs right is one of the trickiest parts of 3-statement modeling:| Statement | Item | Sign Convention | Why |
|---|---|---|---|
| CFO | D&A, SBC | Positive (add-back) | Non-cash expenses that reduced Net Income but did not use cash |
| CFO | Increase in AR | Negative (use of cash) | Revenue was recognized but cash was not collected yet |
| CFO | Increase in AP | Positive (source of cash) | Expenses were recognized but not yet paid |
| CFO | Increase in Inventory | Negative (use of cash) | Cash was spent on inventory not yet sold |
| CFI | CapEx | Negative | Cash spent on long-term assets |
| CFF | Debt issuance | Positive | Cash received from borrowing |
| CFF | Debt repayments | Negative | Cash used to pay back debt |
| CFF | Dividends | Negative | Cash distributed to shareholders |
Scenario Analysis
The model supports Bear/Base/Bull scenario analysis via a toggle:| Scenario | Description |
|---|---|
| Base Case | Management guidance or consensus estimates |
| Upside Case | Above-guidance growth, margin expansion |
| Downside Case | Below-trend growth, margin compression |
$B$3 is the scenario selector cell (1 = Bear, 2 = Base, 3 = Bull).
Step-by-Step User Verification
After Mapping the Template
After Populating Historicals
After Building IS Projections
After Building BS
Quality Checks by Statement
Income Statement:- Revenue figures match source data for historical periods
- All expense line items sum to reported totals
- Subtotals (Gross Profit, EBIT, EBT, Net Income) calculate correctly
- Tax calculation handles losses correctly (use MAX function:
=MAX(0, EBT) * Tax Rate)
- Assets = Liabilities + Equity for every period
- Cash balance matches Cash Flow Statement ending cash
- Retained Earnings rolls forward correctly
- Debt balances tie to debt schedule
- Net Income at top of CFO matches IS Net Income
- Non-cash add-backs (D&A, SBC) tie to source schedules
- Working capital changes have correct signs
- CapEx ties to PP&E schedule
- Ending Cash matches Balance Sheet Cash
Formatting Standards
| Element | Fill | Font |
|---|---|---|
| Section headers (IS / BS / CF titles) | Dark blue #1F4E79 | White bold |
| Column headers (FY2024A, FY2025E, etc.) | Light blue #D9E1F2 | Black bold |
| Input cells (historicals, assumption drivers) | Light grey #F2F2F2 or white | Blue #0000FF |
| Formula cells | White | Black |
| Cross-tab links | White | Green #008000 |
| Check rows / key totals | Medium blue #BDD7EE | Black bold |
Circular Reference Handling
Interest expense creates circularity: Interest depends on debt balance, which depends on cash flow, which depends on interest. Two approaches:- Beginning balance method (preferred): Calculate interest on beginning-of-period debt. This eliminates the circular reference entirely.
- Iterative calculation: Enable iterative calculation in Excel (File > Options > Formulas > Enable iterative calculation). Set maximum iterations to 100, maximum change to 0.001.
Common Mistakes
1. Balance sheet does not balance
1. Balance sheet does not balance
=Assets - Liabilities - Equity. If the result is not zero, trace the gap period by period. Start with the first period that shows an imbalance. Check: (1) RE roll-forward, (2) Cash tie-out, (3) PP&E roll-forward, (4) Debt balance links. The error is almost always in one of these four areas.2. Working capital sign errors
2. Working capital sign errors
3. Cash does not tie to balance sheet
3. Cash does not tie to balance sheet
4. Circular references from interest expense
4. Circular references from interest expense
5. Depreciation mismatch between statements
5. Depreciation mismatch between statements
6. PP&E roll-forward does not tie
6. PP&E roll-forward does not tie
7. Dividends exceed net income without explanation
7. Dividends exceed net income without explanation
=MIN(Dividend_Target, Net_Income)) or add a payout ratio assumption (=Net_Income x Payout_Ratio). If the company intentionally pays dividends exceeding earnings (drawing down retained earnings), add a cell comment explaining the rationale.8. Hardcoded projection cells that should be formulas
8. Hardcoded projection cells that should be formulas
=Year1_Revenue * (1 + Growth_Rate).Why it happens: The analyst computed the number mentally or in a calculator and typed it in, intending to add the formula later but forgetting.The fix: Every projection cell must be a formula. Run a systematic check: for each projection column, verify that no cell contains a hardcoded number that should be a formula. Hardcodes in projection columns are silent bugs — the number looks right today but will not update when assumptions change.9. Tax calculation ignores losses
9. Tax calculation ignores losses
=EBT * Tax_Rate mechanically produces a negative tax when EBT is negative.The fix: Use =MAX(0, EBT) * Tax_Rate if the company cannot recognize tax benefits (e.g., it has no deferred tax assets). If the company can carry losses forward, build an NOL schedule: losses create NOL balances that offset future taxable income. The NOL schedule prevents tax on income up to the cumulative loss carryforward.10. Inconsistent formulas across projection years
10. Inconsistent formulas across projection years
Daily Workflow
Scenario 1: Earnings Model Update After Quarterly Results
Scenario 1: Earnings Model Update After Quarterly Results
- Update the historical column with Q3 actual results (revenue, margins, EPS, working capital, CapEx)
- Compare actuals to your prior estimates — where did the model miss?
- Revise projection assumptions for the remaining quarters and out-years
- Recalculate the full model — IS, BS, CF all update through formulas
- Run integrity checks: BS balance, cash tie-out, RE roll-forward
- Extract updated metrics for your DCF and comps models
- Draft the earnings note with the revised estimates and updated price target
Scenario 2: Building a Model for a New Coverage Initiation
Scenario 2: Building a Model for a New Coverage Initiation
- Pull 3 years of historical financials from 10-K filings (revenue, COGS, SG&A, D&A, interest, taxes, all BS items, CF items)
- Build the Assumptions tab with projection drivers (growth rates, margin assumptions, working capital days, CapEx intensity)
- Build the IS projection: revenue build, cost structure, EBIT, interest, taxes, net income
- Build the BS: working capital (AR, Inventory, AP driven by DSO/DIO/DPO), PP&E (roll-forward from CapEx and D&A), debt (roll-forward from repayments), RE (roll-forward from NI)
- Build the CF: start with NI, add backs, working capital changes, CapEx, debt changes
- Run integrity checks for every period
- Add scenario toggle (Bear/Base/Bull) using CHOOSE functions
- Hand off to the senior analyst for review and approval
Scenario 3: Stress-Testing a Credit Model for a Leveraged Issuer
Scenario 3: Stress-Testing a Credit Model for a Leveraged Issuer
- Update the model with the latest quarterly actuals
- Build three interest rate scenarios: base (current SOFR + spread), stress (+200bps), severe stress (+400bps)
- Model the impact on interest expense, net income, and cash flow
- Calculate key credit metrics for each scenario: Debt/EBITDA, Interest Coverage, Fixed Charge Coverage, FCF/Debt
- Compare metrics against covenant thresholds
- Identify the breakeven assumptions: at what growth rate and interest rate does the company breach covenants?
- Present a traffic-light summary (green/yellow/red) for each metric and scenario
Practice Exercise
Scenario: Build a 2-year projection for TechGrowth Inc., a high-growth software company. Given Historical Data (Year 0):- Revenue: $300M
- COGS: $90M (30% of revenue)
- S&M: $105M (35% of revenue)
- R&D: $60M (20% of revenue)
- G&A: $24M (8% of revenue)
- D&A: $15M (5% of revenue)
- Interest Expense: $5M
- Tax Rate: 22%
- Cash: 45M; PP&E: $100M
- Total Debt: 30M
- Retained Earnings: 85M
- Year 1: Revenue growth 20%, Year 2: Revenue growth 15%
- COGS: stable at 30%
- S&M: 33% Year 1, 31% Year 2 (operating leverage)
- R&D: stable at 20%
- G&A: 7.5% Year 1, 7% Year 2
- D&A: 5% of revenue; CapEx: 7% of revenue
- DSO: 55 days; DPO: 36.5 days
- Stock-based compensation: 10M Year 2 (non-cash, add to APIC on BS)
- Debt repayment: $10M/year
- No dividends
- Build the full Income Statement for Years 1-2 (include SBC as an operating expense below G&A)
- Calculate working capital changes (remember: DSO and DPO drive AR and AP)
- Build the Cash Flow Statement (remember to add back both D&A and SBC as non-cash items)
- Build the Balance Sheet (remember: SBC increases APIC on the equity side)
- Run all five integrity checks (BS balance, cash tie, NI link, RE roll, PP&E roll)
- Calculate key metrics: EBITDA margin, FCF margin, Debt/EBITDA