3-Statement Financial Model Template Completion | Skills Pool
스킬 파일
3-Statement Financial Model Template Completion
Complete, populate and fill out 3-statement financial model templates (Income Statement, Balance Sheet, Cash Flow Statement) . Use when asked to fill out model templates, complete existing model frameworks, populate financial models with data, complete a partially filled IS/BS/CF framework, or link integrated financial statements within an existing template structure. Triggers include requests to fill in, complete, or populate a 3-statement model template
anthropics7,637 스타2026. 3. 9.
직업
카테고리
금융 및 투자
스킬 내용
Complete and populate integrated financial model templates with proper linkages between Income Statement, Balance Sheet, and Cash Flow Statement.
⚠️ CRITICAL PRINCIPLES — Read Before Populating Any Template
Environment — Office JS vs Python:
If running inside Excel (Office Add-in / Office JS): Use Office JS directly. Write formulas via range.formulas = [["=D14*(1+Assumptions!$B$5)"]] — never range.values for derived cells. No separate recalc; Excel computes natively. Use context.workbook.worksheets.getItem(...) to navigate tabs.
If generating a standalone .xlsx file: Use Python/openpyxl. Write ws["D15"] = "=D14*(1+Assumptions!$B$5)", then run recalc.py before delivery.
Office JS merged cell pitfall: Do NOT call .merge() then set .values on the merged range — throws InvalidArgument because the range still reports its pre-merge dimensions. Instead write value to top-left cell alone, then merge + format the full range: ws.getRange("A1").values = [["INCOME STATEMENT"]]; const h = ws.getRange("A1:G1"); h.merge(); h.format.fill.color = "#1F4E79";
관련 스킬
All principles below apply identically in either environment.
Formulas over hardcodes (non-negotiable):
Every projection cell, roll-forward, linkage, and subtotal MUST be an Excel formula — never a pre-computed value
When using Python/openpyxl: write formula strings (ws["D15"] = "=D14*(1+Assumptions!$B$5)"), NOT computed results (ws["D15"] = 12500)
The ONLY cells that should contain hardcoded numbers are: (1) historical actuals, (2) assumption drivers in the Assumptions tab
If you find yourself computing a value in Python and writing the result to a cell — STOP. Write the formula instead.
Why: the model must flex when scenarios toggle or assumptions change. Hardcodes break every downstream integrity check silently.
Verify step-by-step with the user:
After mapping the template → show the user which tabs/sections you've identified and confirm before touching any cells
After populating historicals → show the user the historical block and confirm values/periods match source data
After building IS projections → run the subtotal checks, show the user the projected IS, confirm before moving to BS
After building BS → show the user the balance check (Assets = L+E) for every period, confirm before moving to CF
After building CF → show the user the cash tie-out (CF ending cash = BS cash), confirm before finalizing
Do NOT populate the entire model end-to-end and present it complete — break at each statement, show the work, catch errors early
Formatting — Professional Blue/Grey Palette (Default unless template/user specifies otherwise)
Keep colors minimal. Use only blues and greys for cell fills. Do NOT introduce greens, yellows, oranges, or multiple accent colors — a clean model uses restraint.
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
That's 3 blues + 1 grey + white. If the template has its own color scheme, follow the template instead.
Font color signals what a cell is (input/formula/link). Fill color signals where you are (header/data/check).
Model Structure
Identifying Template Tab Organization
Templates vary in their tab naming conventions and organization. Before populating, review all tabs to understand the template's structure. Below are common tab names and their typical contents:
Common Tab Names
Contents to Look For
IS, P&L, Income Statement
Income Statement
BS, Balance Sheet
Balance Sheet
CF, CFS, Cash Flow
Cash Flow Statement
WC, Working Capital
Working Capital Schedule
DA, D&A, Depreciation, PP&E
Depreciation & Amortization Schedule
Debt, Debt Schedule
Debt Schedule
NOL, Tax, DTA
Net Operating Loss Schedule
Assumptions, Inputs, Drivers
Driver assumptions and inputs
Checks, Audit, Validation
Error-checking dashboard
Template Review Checklist
Identify which tabs exist in the template (not all templates include every schedule)
Note any template-specific tabs not listed above
Understand tab dependencies (e.g., which schedules feed into the main statements)
Locate input cells vs. formula cells on each tab
Understanding Template Structure
Before populating a template, familiarize yourself with its existing layout to ensure data is entered in the correct locations and formulas remain intact.
Identifying Row Structure
Locate the model title at top of each tab
Identify section headers and their visual separation
Find the units row indicating $ millions, %, x, etc.
Note column headers distinguishing Actuals vs. Estimates periods
Confirm period labels (e.g., FY2024A, FY2025E)
Identify input cells vs. formula cells (typically distinguished by font color)
Identifying Column Structure
Confirm line item labels in leftmost column
Verify historical years precede projection years
Note the visual border separating historical from projected periods
Check for consistent column order across all tabs
Working with Named Ranges
Templates often use named ranges for key inputs and outputs. Before entering data:
Review existing named ranges in the template (Formulas → Name Manager in Excel)
Common named ranges include: Revenue growth rates, cost percentages, key outputs (Net Income, EBITDA, Total Debt, Cash), scenario selector cell
Ensure inputs are entered in cells that feed into these named ranges
Projection Period
Templates typically project 5 years forward from last historical year
Verify historical (A) vs. projected (E) columns are clearly separated
Confirm columns use fiscal year notation (e.g., FY2024A, FY2025E)
Margin Analysis
Note: The following margin analysis should only be performed if prompted by the user or if the template explicitly requires it. If no prompt is given, skip this section.
Calculate and display profitability margins on the Income Statement (IS) tab to track operational efficiency and enable peer comparison.
Core Margins to Include
Margin
Formula
What It Measures
Gross Margin
Gross Profit / Revenue
Pricing power, production efficiency
EBITDA Margin
EBITDA / Revenue
Core operating profitability
EBIT Margin
EBIT / Revenue
Operating profitability after D&A
Net Income Margin
Net Income / Revenue
Bottom-line profitability
Income Statement Layout with Margins
Display margin percentages directly below each profit line item:
Gross Margin % below Gross Profit
EBIT Margin % below EBIT
EBITDA Margin % below EBITDA
Net Income Margin % below Net Income
Credit Metrics
Note: The following Credit analysis should only be performed if prompted by the user or if the template explicitly requires it. If no prompt is given, skip this section.
Calculate and display credit/leverage metrics on the Balance Sheet (BS) tab to assess financial health, debt capacity, and covenant compliance.
Core Credit Metrics to Include
Metric
Formula
What It Measures
Total Debt / EBITDA
Total Debt / LTM EBITDA
Leverage multiple
Net Debt / EBITDA
(Total Debt - Cash) / LTM EBITDA
Leverage net of cash
Interest Coverage
EBITDA / Interest Expense
Ability to service debt
Debt / Total Cap
Total Debt / (Total Debt + Equity)
Capital structure
Debt / Equity
Total Debt / Total Equity
Financial leverage
Current Ratio
Current Assets / Current Liabilities
Short-term liquidity
Quick Ratio
(Current Assets - Inventory) / Current Liabilities
Immediate liquidity
Credit Metric Hierarchy Checks
Validate that Upside shows strongest credit profile:
Leverage: Upside < Base < Downside (lower is better)
Coverage: Upside > Base > Downside (higher is better)
Liquidity: Upside > Base > Downside (higher is better)
Covenant Compliance Tracking
If debt covenants are known, add explicit compliance checks comparing actual metrics to covenant thresholds.
Scenario Analysis (Base / Upside / Downside)
Use a scenario toggle (dropdown) in the Assumptions tab with CHOOSE or INDEX/MATCH formulas.
Scenario Audit Checks: Toggle switches all statements, BS balances in all scenarios, Cash ties out, Hierarchy holds (Upside > Base > Downside for NI, EBITDA, FCF, margins).
SEC Filings Data Extraction
If the template specifically requires pulling data from SEC filings (10-K, 10-Q), see references/sec-filings.md for detailed extraction guidance. This reference is only needed when populating templates with public company data from regulatory filings.
Completing Model Templates
This section provides general guidance for completing any 3-statement financial model template while preserving existing formulas and ensuring data integrity.
Step 1: Analyze the Template Structure
Before entering any data, thoroughly review the template to understand its architecture:
Identify Input vs. Formula Cells
Look for visual cues (font color, cell shading) that distinguish input cells from formula cells
Common conventions: Blue font = inputs, Black font = formulas, Green font = links to other sheets
Use Excel's Trace Precedents/Dependents (Formulas → Trace Precedents) to understand cell relationships
Check for named ranges that may control key inputs (Formulas → Name Manager)
Map the Template's Flow
Identify which tabs feed into others (e.g., Assumptions → IS → BS → CF)
Note any supporting schedules and their linkages to main statements
Document the template's specific line items and structure before populating
Step 2: Filling in Data Without Breaking Formulas
Golden Rules for Data Entry
Rule
Description
Only edit input cells
Never overwrite cells containing formulas unless intentionally replacing the formula
Preserve cell references
When copying data, use Paste Values (Ctrl+Shift+V) to avoid overwriting formulas with source formatting
Match the template's units
Verify if template uses thousands, millions, or actual values before entering data
Respect sign conventions
Follow the template's existing sign convention (e.g., expenses as positive or negative)
Check for circular references
If the template uses iterative calculations, ensure Enable Iterative Calculation is turned on
Safe Data Entry Process
Identify the exact cells designated for input (usually highlighted or labeled)
Enter historical data first, then verify formulas are calculating correctly for those periods
Enter assumption drivers that feed forecast calculations
Review calculated outputs to confirm formulas are working as intended
If a formula cell must be modified, document the original formula before making changes
Handling Pre-Built Formulas
If formulas reference cells you haven't populated yet, expect temporary errors (#REF!, #DIV/0!) until all inputs are complete
When formulas produce unexpected results, trace precedents to identify missing or incorrect inputs
Never delete rows/columns without checking for formula dependencies across all tabs
Step 3: Validating Formulas
Formula Integrity Checks
Before relying on template outputs, validate that formulas are functioning correctly:
Check Type
Method
Trace precedents
Select a formula cell → Formulas → Trace Precedents to verify it references correct inputs
Trace dependents
Verify key inputs flow to expected output cells
Evaluate formula
Use Formulas → Evaluate Formula to step through complex calculations
Check for hardcodes
Projection formulas should reference assumptions, not contain hardcoded values
Test with known values
Input simple test values to verify formulas produce expected results
Cross-tab consistency
Ensure the same formula logic applies across all projection periods
Common Formula Issues to Watch For
Mixed absolute/relative references causing incorrect results when copied across periods
Broken links to external files or deleted ranges (#REF! errors)
Division by zero in early periods before revenue ramps (#DIV/0! errors)
Circular reference warnings (may be intentional for interest calculations)
Inconsistent formulas across projection columns (use Ctrl+\ to find differences)
Validating Cross-Tab Linkages
Confirm values that appear on multiple tabs are linked (not duplicated)
Verify schedule totals tie to corresponding line items on main statements
Check that period labels align across all tabs
Step 4: Quality Checks by Sheet
Perform these validation checks on each sheet after populating the template:
Income Statement (IS) Quality Checks
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 logic is appropriate (handles losses correctly)
Forecast drivers reference assumptions tab (no hardcodes)
Period-over-period changes are directionally reasonable
Balance Sheet (BS) Quality Checks
Assets = Liabilities + Equity for every period (primary check)
Equity Raised (Year 0) - Beginning Equity Capital (Year 1)
= 0
Sign Convention Reference
Statement
Item
Sign Convention
CFO
D&A, SBC
Positive (add-back)
CFO
ΔAR (increase)
Negative (use of cash)
CFO
ΔAP (increase)
Positive (source of cash)
CFI
CapEx
Negative
CFF
Debt issuance
Positive
CFF
Debt repayments
Negative
CFF
Dividends
Negative
Circular Reference Handling
Interest expense creates circularity: Interest → Net Income → Cash → Debt Balance → Interest
Enable iterative calculation in Excel: File → Options → Formulas → Enable iterative calculation. Set maximum iterations to 100, maximum change to 0.001. Add a circuit breaker toggle in Assumptions tab.