Markdown Editor

Financial Model Specification Template (FAST Standard)

Model purpose, timeline, sheet map, inputs register, calculation blocks, outputs, FAST conventions, scenarios, checks, version control, tests, limitations

Finanzas, inversión, contabilidadCompletaFAST Standard 02c (CC BY 4.0); ICAEW Financial Modelling Code (name)CC BY 4.0financialmodelspecificationmath

Cómo usar: Use it before building or rebuilding a budget, forecast, project finance or transaction model, and as the baseline for model review. Fill purpose, decisions and scope with the decision owner first, then the inputs register with data owners. The main pitfall is adopting a modelling standard by name without listing which rules apply, so nobody can test compliance.

Vista previa

Financial Model Specification: [Model name]

Specification for a spreadsheet-based financial model, written before the model is built or rebuilt and kept up to date while it is in use: purpose, users and decisions, scope and timeline, architecture and sheet map, inputs register, calculation logic and key formulas, outputs, design conventions, scenarios and sensitivities, checks and error flags, version control, testing and review, and known limitations. Design conventions are informed by the FAST Standard (version 02c, July 2019, FAST Standard Organisation, CC BY 4.0); the ICAEW Financial Modelling Code is cited by name as further reading. Replace every [bracketed] value and every row marked Example. This is a document format, not financial, investment, tax, legal or accounting advice.

Document control

FieldValue
Document ID[FMS-NNN] Example: FMS-001
Model name and ID[Model name], [MOD-NNN] Example: Corvid Integrated Planning Model, MOD-CCG-001
Model type[Integrated three-statement / project finance / valuation / budget / transaction] Example: integrated three-statement planning and covenant model
Platform[Microsoft Excel version / Google Sheets / other] Example: Microsoft Excel (Microsoft 365), single workbook, no macros
Model file location[Path or document management link]
Model version covered[vX.Y] Example: v3.0
Model owner[@head-of-fpa]
Builder[@financial-modeller]
Reviewer[@independent-reviewer]
Model risk tier[High / Medium / Low per policy] Example: Medium (feeds board budget and lender covenant tests)
Version[1.0]
Status[Draft / In review / Approved / Superseded]
Owner[@head-of-fpa]
Approvers/reviewers[@cfo], [@independent-reviewer]
Last updatedYYYY-MM-DD
Classification[Confidential: finance only]

Approvals

RoleNameDecisionDate
Model owner[@name][Specification agreed]YYYY-MM-DD
Decision owner (main user)[@name][Specification agreed]YYYY-MM-DD
Independent reviewer[@name][Review scope agreed]YYYY-MM-DD
Chief Financial Officer[@name][Approved for build / Approved for use]YYYY-MM-DD

Revision history

VersionDateAuthorChange summary
0.1YYYY-MM-DD[@name]Purpose, scope and inputs agreed
0.9YYYY-MM-DD[@name]Example: Calculation logic, checks and test plan added for model v3.0 rebuild
1.0YYYY-MM-DD[@name]Example: Approved after independent review; model v3.0 released for FY2027 budget

Contents

1. Purpose, users and decisions

[Two or three paragraphs: the business question, the decisions, the users and the consequence of an error.]

Example: MOD-CCG-001 is Corvid Commerce Group's single source for the annual budget, the quarterly rolling forecast and the quarterly covenant tests. It turns operational drivers (ARR movements, commerce orders, services days, hiring plan, capital projects, FX rates) into a monthly income statement, balance sheet and cash flow for the parent, each of the four operating subsidiaries and the group. The board approves the budget from its outputs and the lenders receive covenant calculations derived from it, so an error could lead to a wrong funding decision or a misstatement to lenders.

IDDecision supportedDecision ownerFrequencyKey outputs used
DEC-001 (Example)Approve the annual budget and capex envelopeBoardAnnualBudget P&L, cash flow, capex, KPIs
DEC-002 (Example)Re-allocate spend and hiring within the yearExecutive committeeQuarterlyRolling forecast, scenario outputs
DEC-003 (Example)Confirm covenant compliance and liquidity headroomCFO, treasurerQuarterly and on demandCovenant tests, headroom, 18-month cash
DEC-004 (Example)Size dividend and facility drawingsBoard, treasurerAnnualCash flow, net debt, leverage
User groupUseAccess
FP&A team (Example)Run cycles, update inputs, produce outputsEdit inputs and controls
Budget holdersReview their cost centre outputsRead-only extract
TreasurerCovenant and liquidity outputsRead-only model
Board and lendersReceive outputs in reports, never the modelNo model access

Out of scope: [list]. Example: statutory consolidation and tax filings, transfer pricing calculations, valuation for impairment testing (Impairment Test Memo, finance/impairment-test-memo), weekly cash (13-Week Cash Flow Forecast, finance/13-week-cash-flow-forecast).

2. Scope, timeline and granularity

DimensionSpecification
Timeline start (Example)2026-01-01 (FY2026 actuals loaded as the base year)
Period lengthCalendar month
Timeline end2031-12-31 (72 monthly columns)
Actuals and forecast boundaryInput cell "Last actual month"; columns up to it read actuals, later columns calculate
Annual viewsBuilt on presentation sheets by summing months with annual flags; no separate annual calculation axis
EntitiesCC-HOLD Corvid Commerce Group plc (EUR, listed parent), CC-DE Corvid Commerce GmbH (EUR), CC-UK Corvid Commerce Ltd (GBP), CC-US Corvid Commerce Inc (USD, subscription sales only), CC-VN Corvid Commerce Vietnam LLC (VND, cost-plus service centre with no external revenue), group eliminations
SegmentsSubscription platform, commerce, professional services, central
Cost detailFunction (cost of sales, sales and marketing, research and development, general and administrative) by entity; cost-centre detail stays in the budget submission files
Headcount detailRole family by entity and month; individual positions only for open roles
CurrencyCalculations in local currency per entity; translation to EUR at average rates (flows) and closing rates (balances)
UnitsEUR thousand on presentation sheets; full units in input sheets where source data is in full units (marked by the units column)
Day countActual days in the month over 365 for interest; 30-day months are not used
Sign conventionInflows and assets positive; outflows and liabilities negative in calculations; presentation sheets show costs in brackets

3. Architecture and sheet map

The FAST Standard groups sheets into four functional classes: foundation (inputs, timing, indexation), workings (calculations), presentation (statements, charts, summaries) and control (checks, scenario control, change log, contents). The sheet map follows that grouping.

Sheet IDSheet nameClassContentTime axis
S01 (Example)ContentsControlTable of contents, model purpose, flow description, colour key, standards usedNone
S02 (Example)ChecksControlAll checks, master check, alertsMonthly
S03 (Example)ScenariosControlScenario selector and scenario input tableNone
S04 (Example)ChangeLogControlVersion, change, author, reviewer, dateNone
S05 (Example)Inp_MacroFoundationFX rates, inflation, interest benchmarksMonthly
S06 (Example)Inp_OpsFoundationARR movements, orders, AOV, services days, hiring plan, cost driversMonthly
S07 (Example)Inp_FinFoundationFacilities, leases, tax rates, dividend policy, covenant limitsConstants and monthly
S08 (Example)TimeFoundationPeriod dates, period flags, actual and forecast flags, annual and quarter flagsMonthly
S09 (Example)ActualsFoundationMonthly ledger trial balance mapped to model lines (import sheet)Monthly
S10 to S17 (Example)Rev, People, Opex, Capex, WC, Debt, Tax, ConsolWorkingsCalculation blocks listed in section 5Monthly
S18 to S22 (Example)IS, BS, CF, Covenants, KPIPresentationOutputs listed in section 6Monthly with annual summaries

Import of actuals: the ledger extract is pasted as values into S09 through a fixed mapping table; no direct external links to other workbooks. If several workbooks are unavoidable, exchange data through dedicated import and export sheets.

4. Inputs register

IDInputUnitBase value or rangeSourceOwnerUpdatedBudget reference
INP-001 (Example)EUR/USD rate, budgetUSD per EUR1.10Treasury view[@treasurer]Annual, frozenASM-001
INP-002 (Example)EUR/GBP rate, budgetGBP per EUR0.86Treasury view[@treasurer]Annual, frozenASM-002
INP-003 (Example)EUR/VND rate, budgetVND per EUR28,500Treasury view[@treasurer]Annual, frozenASM-003
INP-004 (Example)General cost inflation% per year2.5%Consensus forecasts[@head-of-fpa]AnnualASM-004
INP-005 (Example)Pay review, effective 1 April%3.5%HR benchmark[@chro]AnnualASM-005
INP-006 (Example)New ARR, expansion, contraction, churn by monthEUR k per monthSales planCRM pipeline and plan[@cro]MonthlyASM-006, ASM-007
INP-007 (Example)Commerce orders and AOV by monththousand, EUR1,200k orders at EUR 45 for FY2027Commerce plan[@commerce-director]MonthlyASM-008
INP-008 (Example)Services days and day ratedays, EUR50,000 days at EUR 200Services plan[@services-director]QuarterlyASM-009
INP-009 (Example)Effective tax rate by entity%Group 25%Tax plan[@head-of-tax]AnnualASM-010
INP-010 (Example)Term loan balance and rateEUR k, %30,000 at 4.0%Facility agreement[@treasurer]On changeASM-011
INP-011 (Example)Receivable, inventory, payable days (quarter-end balance / quarter flow x 90)days31, 52, 43Working capital plan[@financial-controller]QuarterlyASM-012
INP-012 (Example)Covenant limitsxLeverage 3.00x maximum; interest cover 4.00x minimumFacility agreement[@treasurer]On changeNot in budget
INP-013 (Example)Capital projects: amount, month, asset class, useful lifeEUR k, monthsCAP-001 to CAP-004Capex register[@cfo]QuarterlyBudget section 8
INP-014 (Example)Discount rate for appraisal outputs%10%Group hurdle rate[@cfo]AnnualNot in budget

Input rules:

  • Every input row has a label, a unit, a source note and an owner in a dedicated comments column.
  • Constants (single values) and time series (one value per period) are clearly distinguished by layout and format.
  • Data validation restricts inputs to plausible ranges (for example, rates between 0% and 25%); values outside the range trigger an input alert on S02.
  • Scenario inputs sit in one table on S03, selected by a single scenario switch (section 8).

5. Calculation logic and key formulas

5.1 Calculation block catalogue

IDBlockSheetLogic in wordsKey inputsOutputs
CALC-001 (Example)ARR corkscrewS10 RevOpening ARR plus new, expansion, less contraction and churn, equals closing ARR; next month opens with this closingINP-006ARR, customers
CALC-002 (Example)Subscription revenueS10 RevAverage of opening and closing ARR divided by 12CALC-001Revenue by entity
CALC-003 (Example)Commerce revenue and costS10 RevOrders times AOV; cost at product, freight and fulfilment ratesINP-007Revenue, cost of sales
CALC-004 (Example)People costS11 PeopleFTE by role family times loaded cost, pay review from the review month flagINP-005Cost by function
CALC-005 (Example)Fixed asset corkscrew and depreciationS13 CapexOpening cost plus additions less disposals; straight-line depreciation from the month after commissioningINP-013PPE, intangibles, D&A
CALC-006 (Example)Working capitalS14 WCBalance = flow of the month times days over days in monthINP-011Receivables, inventories, payables
CALC-007 (Example)Debt corkscrew and interestS15 DebtOpening plus drawings less repayments; interest on average balance at the rate times actual days over 365INP-010Debt, interest
CALC-008 (Example)TaxS16 TaxProfit before tax times effective rate per entity; payments on account per local calendarINP-009Tax charge, tax payable
CALC-009 (Example)Translation and consolidationS17 ConsolLocal flows at average rate, balances at closing rate, translation difference to equity; eliminate intercompanyINP-001 to INP-003Group statements
CALC-010 (Example)CovenantsS21 CovenantsLTM covenant EBITDA (EBITDA plus permitted add-backs) and LTM finance charges by rolling 12-month sums; covenant net debt at month end (borrowings plus lease liabilities less freely available cash)INP-012Ratios, headroom

5.2 Key formulas

ARR corkscrew (CALC-001), for month t:

ARRtclose=ARRtopen+Newt+Expansiont−Contractiont−Churnt,ARRt+1open=ARRtclose\text{ARR}_{t}^{\text{close}} = \text{ARR}_{t}^{\text{open}} + \text{New}_{t} + \text{Expansion}_{t} - \text{Contraction}_{t} - \text{Churn}_{t}, \qquad \text{ARR}_{t+1}^{\text{open}} = \text{ARR}_{t}^{\text{close}}

Subscription revenue (CALC-002):

Revenuet=ARRtopen+ARRtclose2×12\text{Revenue}_{t} = \frac{\text{ARR}_{t}^{\text{open}} + \text{ARR}_{t}^{\text{close}}}{2 \times 12}

Working capital balance (CALC-006), receivables shown, on the ASM-012 convention of the flow of the three months ending in month t; inventories use commerce cost of sales and payables use total cost of sales:

Receivablest=(∑k=t−2tRevenuek)×DSO90\text{Receivables}_{t} = \left( \sum_{k=t-2}^{t} \text{Revenue}_{k} \right) \times \frac{\text{DSO}}{90}

Interest (CALC-007):

Interestt=Debttopen+Debttclose2×i×Dayst365\text{Interest}_{t} = \frac{\text{Debt}_{t}^{\text{open}} + \text{Debt}_{t}^{\text{close}}}{2} \times i \times \frac{\text{Days}_{t}}{365}

Covenants (CALC-010):

Leveraget=Debtt+Lease liabilitiest−(Casht−Trapped casht)∑k=t−11tCovenant EBITDAk\text{Leverage}_{t} = \frac{\text{Debt}_{t} + \text{Lease liabilities}_{t} - (\text{Cash}_{t} - \text{Trapped cash}_{t})}{\sum_{k=t-11}^{t} \text{Covenant EBITDA}_{k}}

The model also reports the management ratio (borrowings less all cash, excluding leases, over LTM EBITDA) on a separate, clearly labelled row, because the budget pack uses it as a headline; the covenant row is the only one that feeds the compliance certificate.

Discounting for appraisal outputs: discount factors are calculated on their own line from the period flags and the discount rate, and present values are their product with the cash flow line. The spreadsheet NPV function is not used, because it assumes equally spaced periods and discounts the first cash flow in the range by one full period, hiding the timing assumption.

DFt=1(1+d)τt,NPV=∑tCFt×DFt\text{DF}_{t} = \frac{1}{(1+d)^{\tau_{t}}}, \qquad \text{NPV} = \sum_{t} \text{CF}_{t} \times \text{DF}_{t}

where the time in years from the valuation date to the cash flow is calculated from period end dates on S08.

5.3 Worked check of the logic

Example: with the FY2027 budget inputs, ARR opens at EUR 86,000k and closes at EUR 106,000k. If the monthly movements are spread evenly, subscription revenue is close to (86,000 + 106,000) / 2 = EUR 96,000k, the figure in the budget. Management leverage at 2027-12-31 is (30,000 - 26,400) / 21,600 = 0.17x; covenant leverage, with lease liabilities of 6,400 and trapped cash of 1,000, is (30,000 + 6,400 - 25,400) / 21,600 = 11,000 / 21,600 = 0.51x. Net finance cost is 1,200: term loan interest 1,200 plus lease interest 360 less interest income 360 (Annual Budget ASM-011). These are the first regression tests in section 11.

6. Outputs and reports

IDOutputSheetUsersFormatLeaves finance?
OUT-001 (Example)Monthly and annual income statement by segment and entityS18 ISExecutive committee, boardTable, EUR kYes, via budget pack and MMR
OUT-002 (Example)Balance sheetS19 BSCFO, treasurerTableYes, summary only
OUT-003 (Example)Cash flow and net debtS20 CFTreasurer, boardTable and chartYes
OUT-004 (Example)Covenant tests and headroomS21 CovenantsTreasurer, lendersTableYes, via compliance certificate
OUT-005 (Example)KPI dashboard (ARR, customers, orders, FTE, margins)S22 KPIExecutive committeeTable and chartsYes
OUT-006 (Example)Scenario comparisonS03 ScenariosExecutive committeeTableInternal

Output rules:

  • Each presentation sheet states the units (for example EUR thousand), the scenario shown and the model version in its header.
  • The scenario name and the master check status are printed on every output page.
  • Charts match the data type: lines for time series, bars for comparisons, a waterfall for bridges.
  • Outputs that go to lenders use the facility agreement definitions; see Covenant Compliance Certificate (finance/covenant-compliance-certificate).

7. Design conventions

7.1 Principles

The FAST acronym sets four priorities: models are flexible (users can run scenarios and adapt the model over time, which comes from simplicity rather than a switch for every case), appropriate (assumptions are reflected faithfully without detail or precision beyond what the decision needs), structured (a consistent layout of workbooks, sheets and formulas keeps logic intact as authors change) and transparent (simple formulas and clear layout that another person can follow).

7.2 Conventions for this model

IDConvention (own wording)FAST rule referenceTest by
DC-001 (Example)Separate sheets by class: foundation, workings, presentation, control1.01-01Sheet map review
DC-002 (Example)Each column has one purpose; all series sheets use the same monthly time axis in the same columns1.01-02, 1.01-03, 2.01-01, 2.01-02Column header comparison
DC-003 (Example)Logic flows top to bottom and left to right; backward references only for opening balances, shaded2.01-04 to 2.01-06Precedent tracing
DC-004 (Example)Nothing is hidden except unused future columns2.01-08Unhide all and compare
DC-005 (Example)Calculations sit in separate blocks that list their inputs locally in formula order; balances use corkscrews2.02-01 to 2.02-05Block review
DC-006 (Example)Time axis, period end date, master check and alert indicators sit in a frozen header on every series sheet2.03-01, 2.03-02, 2.03-05Visual check
DC-007 (Example)Input sheets carry a comments column and explain themselves2.04-02, 2.04-03Input register vs sheet
DC-008 (Example)Contents sheet with model description, flow and colour key; a list of qualifications and weaknesses2.05-03 to 2.05-05, 2.06-01, 2.06-02S01 review
DC-009 (Example)One formula per row, consistent across the row; temporary code marked3.02-01, 3.02-02Row consistency scan
DC-010 (Example)Short formulas that can be explained quickly; no nested IF; flags instead of IF; INDEX rather than CHOOSE3.03-01 to 3.03-07, 4.01-01Formula length scan
DC-011 (Example)No constants embedded in formulas except universal ones (12 months, 100%)3.04-01Constant scan
DC-012 (Example)Every row has a unique label with units; balances say "balance"; opening and closing clearly marked3.05-01 to 3.05-13Label scan
DC-013 (Example)No links to links (daisy chains); no OFFSET or INDIRECT; no NPV function3.06-02, 4.01-02, 4.01-03Function inventory
DC-014 (Example)Timing flags drive period logic and are created only when needed3.07-01 to 3.07-03Flag inventory
DC-015 (Example)No merged cells; defined cell styles for inputs, calculations, links and checks4.02-01, 4.02-02Style audit

7.3 Departures from the conventions

IDDepartureReasonApproved by
DEV-001 (Example)One Excel name used for the error tolerance (0.001)Displaying it locally in every check block adds noise; FAST allows this exception[@head-of-fpa]
DEV-002 (Example)Data table used for the two-way sensitivity on S03Array-type feature is the clearest way to show the grid; calculation set to automatic except tables[@head-of-fpa]

The ICAEW Financial Modelling Code and the Best Practice Spreadsheet Modelling Standards (BPM, Spreadsheet Standards Review Board) are alternative style frameworks; if the organisation adopts one of them instead, replace the rule references in 7.2 and keep the same table.

8. Scenarios and sensitivities

8.1 Scenario mechanics

  • A single selector on S03 chooses the live scenario; the selected values flow to the input sheets through one lookup row per scenario input.
  • Scenario values are stored side by side in one table with a column per scenario; the base case is a column like the others.
  • Every output carries the live scenario name. Stored results for comparison are pasted as values on S03 by a documented step, with the model version and date.
Scenario IDNameDriver changesOwner
SCN-001 (Example)BaseBudget or latest forecast inputs[@head-of-fpa]
SCN-002 (Example)UpsideCommerce orders at budget from Q3; new ARR +10%[@head-of-fpa]
SCN-003 (Example)DownsideCommerce orders -10% for Q2 to Q4; US churn +2 points[@head-of-fpa]
SCN-004 (Example)Lender stressEBITDA -30% from next quarter; no new drawings; dividend suspended[@treasurer]

The scenarios match those in Rolling Forecast (finance/rolling-forecast) section 7.

8.2 Required sensitivities

IDSensitivityRangeOutput
SEN-001 (Example)Commerce volume-20% to +10% in steps of 5%EBITDA, closing cash
SEN-002 (Example)Subscription churn+0 to +3 pointsARR, EBITDA
SEN-003 (Example)EUR/USD1.00 to 1.25Revenue, EBITDA, leverage
SEN-004 (Example)Interest rate on the term loan+0 to +300 basis pointsInterest cover
SEN-005 (Example)Two-way: commerce volume against churnGrid of SEN-001 and SEN-002Leverage

Break-even outputs: the model reports the EBITDA fall at which each covenant breaches (as in the management report) and the lowest month-end liquidity in each scenario.

9. Checks and error flags

IDCheckTypeRuleToleranceLocation
CHK-001 (Example)Balance sheet balancesErrorTotal assets + total liabilities and equity (signed) = 0 every month and entity0.001S02, S19
CHK-002 (Example)Cash flow ties to balance sheet cashErrorOpening cash + net cash flow = closing cash0.001S02, S20
CHK-003 (Example)Corkscrew continuityErrorEvery opening balance equals the previous closing balance0S02
CHK-004 (Example)Segment and entity totalsErrorSum of segments = sum of entities = group0.001S02
CHK-005 (Example)Actuals importErrorImported trial balance sums to zero and maps every account0S02, S09
CHK-006 (Example)TranslationErrorTranslated balance sheet balances; translation difference posted to equity0.001S02, S17
CHK-007 (Example)FlagsErrorEach month has exactly one actual or forecast flag; annual flags sum to 12 per year0S02, S08
CHK-008 (Example)Input rangesAlertInputs within validation rangesn/aS02
CHK-009 (Example)Covenant breachAlertLeverage above 2.50x (warning) or 3.00x (breach) in any test periodn/aS02, S21
CHK-010 (Example)Liquidity floorAlertLiquidity headroom below the treasury minimum in any monthn/aS02, S20
CHK-011 (Example)ReasonablenessAlertGross margin per segment outside 5 points of last 12 monthsn/aS02

Master check = sum of absolute error check values; shown in the frozen header of every sheet and on every output page. Outputs are not released while the master check is not zero. Alerts are listed separately and explained in the cycle's commentary.

10. Version control and change management

ItemRule
Model of record (Example)One file in the finance document library, read-only except for the FP&A modeller group
File naming[MOD-ID][vMajor.Minor][YYYY-MM-DD].xlsx
Major versionLogic, structure or output definition changes; requires review (section 11) and an update of this specification
Minor versionInput updates and actuals loads only; requires preparer and checker sign-off on S04
Change logS04 records version, date, change description, sheets affected, author, reviewer, test evidence
Change requestsRaised as CR-NNN with reason, expected effect on outputs, urgency; approved by the model owner
Back-upDaily library back-up; each released version kept for [7] years
AccessEdit: FP&A modellers; read: treasury, controllership; outputs only for others
Comparison toolWorkbook comparison run for every major version; differences explained in the change log
CR IDChangeReasonVersionReviewerStatus
CR-021 (Example)Add CC-VN Corvid Commerce Vietnam LLC as a separate column setEntity became a cost-plus service centre in 2026 (no external revenue)v3.0[@independent-reviewer]Released
CR-022 (Example)Interest day count changed from 30/360 to actual/365Match facility agreementv3.0[@independent-reviewer]Released
CR-023 (Example)Add lender stress scenario SCN-004Refinancing discussionsv3.1[@head-of-fpa]In test

Where a model falls within the organisation's model risk framework, record it in the model inventory and follow Model Risk Management Policy (finance/model-risk-management-policy).

11. Testing and model review plan

11.1 Review layers

LayerWhoScopeWhen
Builder testing (Example)[@financial-modeller]All test cases below, checks at zero, convention scanBefore each release
Peer review[@fpa-analyst]Logic of changed blocks, inputs against sources, outputs against previous versionEach major version
Independent review[@independent-reviewer] (internal team outside FP&A or external model reviewer)Full specification compliance, rebuild of key calculations, scenario behaviour, conventionsInitial release, then every [24] months or on major change
Lender model audit (if required by contract)[External model auditor]As defined in the facility agreement[Before financial close or refinancing]

11.2 Test cases

IDTestInput setExpected resultResult
TC-001 (Example)Budget regression: FY2027 revenueSCN-001, budget inputs160,000[Pass / Fail]
TC-002 (Example)Budget regression: FY2027 EBITDASCN-00121,600[Pass / Fail]
TC-003 (Example)Budget regression: closing cash 2027-12-31SCN-00126,400[Pass / Fail]
TC-004 (Example)Leverage 2027-12-31: management and covenant definitionsSCN-0010.17x management; 0.51x covenant[Pass / Fail]
TC-005 (Example)Zero test: all drivers set to zeroTest inputsNo revenue, no variable cost, fixed cost only; checks zero[Pass / Fail]
TC-006 (Example)Doubling test: all volumes doubledTest inputsRevenue and variable cost double; fixed cost unchanged[Pass / Fail]
TC-007 (Example)FX invariance: EUR entity onlyRates changedEUR entity results unchanged[Pass / Fail]
TC-008 (Example)Timeline: last actual month moved forward by oneActuals loaded for MarchMarch reads actuals; April onwards forecast; checks zero[Pass / Fail]
TC-009 (Example)Downside scenario reproduces rolling forecastSCN-003Revenue 153,000; EBITDA 18,500; closing cash 22,400[Pass / Fail]
TC-010 (Example)Interest calculation against independent recalculationFacility inputsMatches within 0.1[Pass / Fail]

11.3 Traceability matrix

RequirementSectionCalculation or outputCheckTest
REQ-001 Board budget P&L (Example)1, 6CALC-001 to CALC-004, OUT-001CHK-004TC-001, TC-002
REQ-002 Cash and net debt6CALC-006, CALC-007, OUT-003CHK-002TC-003
REQ-003 Covenant tests1, 6CALC-010, OUT-004CHK-009TC-004, TC-010
REQ-004 Scenarios8SCN-001 to SCN-004CHK-001TC-009
REQ-005 Actuals and forecast blend2S09, S08 flagsCHK-005, CHK-007TC-008
REQ-006 Multi-currency2CALC-009CHK-006TC-007

11.4 Review findings

IDFindingSeverityResponseStatus
RF-001 (Example)Lease interest calculated on closing balance, not averageMediumCorrected in v3.0 (CALC-007 applied to leases); budget net finance cost of 1,200 now shows lease interest and interest income separatelyClosed
RF-002 (Example)Two inputs without source notes on Inp_OpsLowNotes addedClosed

Model validation for regulated or high-risk models uses Model Validation Report (ai-data/model-validation-report); model design documentation for risk models uses Model Development Document (finance/model-development-document).

11.5 How to run a review and what reviewers most often find

Give the reviewer the specification, the model, the input register and the expected results before the review starts, and agree the scope in writing: which sheets, which versions and which outputs. A reviewer who receives only the workbook will test what is easy to test, usually formula consistency, and miss the questions that matter to the decision makers, such as whether the covenant calculation uses the facility definitions.

Reviewers should work from outputs back to inputs. Start with the numbers that leave the model (the budget P&L, closing cash, covenant ratios) and rebuild them independently, in a separate small workbook or by hand, from the input register. Where the rebuild and the model disagree, trace the difference to a block, then to a row. Only after the key outputs agree should the reviewer scan the whole model for convention breaches, because a model can follow every layout rule and still compute the wrong thing.

Findings that recur in planning models of this kind:

  • Definitions that drift from the contract. Covenant net debt that leaves out lease liabilities, nets trapped or pledged cash, or uses management EBITDA instead of the agreement's Consolidated EBITDA. The fix is a covenant block that reads the definitions from an input sheet referencing clause numbers, with a separate row for the management ratio.
  • Double counting between operating expense and capital expenditure, typically capitalised development whose people cost is also left in the expense lines. Test it by reconciling gross spend by function to the sum of expensed and capitalised amounts.
  • Interest on the wrong balance: closing instead of average, or leases and cash deposits left out of net finance cost.
  • Timing errors at year boundaries, such as a pay review or a price increase applied from the first month of the year instead of its effective month.
  • Hard-coded plugs left from an earlier cycle, often in working capital or tax rows, that make the balance sheet balance while hiding an error.
  • Currency translation applied twice, or balances translated at average instead of closing rates.

Record each finding with a severity, the owner of the fix and the version in which it was closed, as in the table above. A finding is closed only when the regression tests in section 11.2 pass on the corrected version; re-run the full test set, not just the test for the changed block, because fixes in one calculation often move another.

12. Known limitations and qualifications

IDLimitationEffect on usersMitigation
LIM-001 (Example)Tax at an effective rate per entity, not a full computationTax cash timing approximate; deferred tax not modelledTax team reviews the annual tax line
LIM-002 (Example)Monthly granularityIntra-month liquidity troughs not visibleUse 13-week cash forecast for short-term liquidity
LIM-003 (Example)Working capital by days measuresSeasonal stock build approximatedInventory input override by month allowed
LIM-004 (Example)No intercompany interest or transfer pricing detailEntity profits indicative onlyStatutory and TP analysis outside the model
LIM-005 (Example)Five-year horizon with monthly detailLong-range years are directionalStrategic plan uses annual summaries only
LIM-006 (Example)Scenario inputs are deterministicNo probability of outcomesProbability-weighted risks reported in the forecast pack

13. Glossary and references

13.1 Glossary

TermMeaning in this template
AlertA check that flags a business result needing attention, not a model error
Calculation blockA group of rows that performs one calculation with its inputs shown locally
CorkscrewBalance calculation: opening plus increases less decreases equals closing, carried to the next period
Daisy chainA link that points to another link instead of the original source
FlagA row of 1s and 0s that switches logic on or off by period
LTMLast twelve months
Master checkSingle cell summarising all error checks
Model of recordThe only version of the model approved for producing outputs
ScenarioA named, stored set of input values selected by one switch
SensitivityChange of one or two inputs over a range to show the effect on outputs

13.2 References

ReferenceVersion or date checkedUse
FAST Standard, FAST Standard Organisation (fast-standard.org)Version 02c, July 2019; licensed CC BY 4.0 (licence announced 2019-10-07), checked 2026-10-25Design principles and rule references in sections 3 and 7, adapted in own words
ICAEW Financial Modelling Code (ICAEW)2024 edition, name onlyAlternative style framework
Best Practice Spreadsheet Modelling Standards (BPM), Spreadsheet Standards Review BoardName onlyAlternative style framework
[Group model risk policy][Version]Tiering, inventory and review frequency
[Facility agreement][Date]Covenant definitions, any model audit requirement

Standard and licence note

Structure aligned with common financial modelling practice for model specifications. Design conventions informed by the FAST Standard 02c, FAST Standard Organisation, CC BY 4.0 (fast-standard.org): the four FAST principles, the four sheet classes and the rule references in section 7 are adapted from that standard in original wording, with changes (selection, rewording and model-specific examples); the FAST Standard Organisation does not endorse this template. The ICAEW Financial Modelling Code and the SSRB Best Practice Spreadsheet Modelling Standards are cited by name only; no text from them is reproduced. Corvid Commerce Group and every figure are fictional. This template is original text written for this collection. Check the current official version of each cited standard before use. Template licence: MIT.

Plantillas relacionadas