Skip to main content

Audit XLS Skill

What is Excel Auditing?

Excel auditing is the process of systematically reviewing a spreadsheet for errors — broken formulas, hardcoded values that should be formulas, inconsistent calculations, and structural problems that could produce incorrect outputs. In financial services, where spreadsheet models drive investment decisions worth millions or billions of dollars, auditing is not optional — it is a critical quality control step. Financial models are complex systems. A typical 3-statement model might have thousands of cells with interdependent formulas across multiple tabs. Over weeks of development, multiple people edit the model: an analyst builds the initial version, an associate adds a scenario, a VP pastes in updated numbers, and an MD requests a last-minute change. Each edit creates opportunities for error:
  • A formula gets pasted over with a hardcoded number (looks right today but will not update when assumptions change)
  • A SUM range misses a newly inserted row (totals are wrong but look plausible)
  • Someone changes a formula in one row but not in the row below it (inconsistent patterns)
  • A cross-tab reference breaks when a tab gets renamed or a row gets inserted
  • A circular reference is introduced without anyone noticing
These errors are especially dangerous because they are often silent — the model still runs, the numbers look plausible, and the output seems reasonable. But the answer is wrong. Worked example: Consider a DCF model where the WACC is calculated in cell B25 as =0.106*0.80 + 0.04125*0.20. This produces 9.31%, which is correct. But the formula hardcodes all four inputs instead of referencing cells. Three months later, the risk-free rate changes from 4.0% to 4.5%. The analyst updates the risk-free rate input cell but the WACC does not change because it does not reference that cell. The entire DCF valuation is now wrong by approximately 3-5% — enough to shift a recommendation from “buy” to “hold.” The error is invisible because the WACC of 9.31% still looks reasonable.

Detailed Worked Example

Let us walk through a systematic audit of a simplified DCF model spreadsheet.
1

Determine Scope and Initial Scan

The model has 4 tabs: Assumptions, Income Statement, Balance Sheet, Cash Flow / DCF.Initial scan results:
2

Formula-Level Checks

Check 1: Excel ErrorsCheck 2: Hardcoded Values in Formula CellsCheck 3: Inconsistent FormulasCheck 4: Off-by-One Ranges
3

Model Integrity Checks

Balance Sheet Balance:Root cause analysis: The BS imbalance starting in Year 2 traces to the SG&A hardcode in IS cell D15 (Finding #3). The hardcoded SG&A breaks the NI calculation, which breaks the RE roll-forward, which breaks the BS. Years 4-5 show #REF! due to Finding #1 (deleted column reference).Cash Tie-Out:The cash difference matches the BS imbalance — same root cause.Retained Earnings Roll-Forward:
4

Audit Report

Why It Matters

The stakes of spreadsheet errors in finance are enormous:
  • Investment decisions — A DCF model with a broken formula might value a company at 50pershareinsteadof50 per share instead of 35, leading to a recommendation to overpay for an acquisition.
  • Client deliverables — A comps table with pasted-over formulas cannot be updated when new data arrives. The analyst will need to rebuild it from scratch.
  • Regulatory filings — Models used for fairness opinions or SEC filings face legal scrutiny. Errors can have regulatory and legal consequences.
  • Internal credibility — Presenting a model to an investment committee and having someone find an error undermines the entire analysis.
Research has consistently shown that the majority of complex spreadsheets contain errors. In finance, where models routinely have 10,000+ formula cells, the probability of at least one error is extremely high. Systematic auditing catches these errors before they cause harm.

Key Concepts

How It Works

Triggers when: “audit this sheet”, “check my formulas”, “find formula errors”, “debug model”, “model won’t balance”, or “something’s off in my model.”

Step 1: Determine Scope

Step 2: Formula-Level Checks (All Scopes)

Step 3: Model-Integrity Checks (Model Scope Only)

Balance Sheet:
  • Total Assets = Total Liabilities + Equity (every period)
  • Retained Earnings rolls forward correctly
  • If the BS does not balance, quantify the gap per period and trace the break point
Cash Flow Statement:
  • CF Ending Cash = BS Cash (every period)
  • CFO + CFI + CFF = Change in Cash
  • D&A, CapEx, and working capital changes tie to source schedules
Income Statement:
  • Revenue build ties to segment/product detail
  • Tax expense = Pre-tax income x tax rate
  • Share count ties to dilution schedule
Model-Type-Specific Bugs:
  • Discount rate applied to wrong period (mid-year vs. end-of-year convention)
  • Terminal value not discounted back to present value
  • WACC uses book values instead of market values
  • FCF includes interest expense (should be unlevered)
  • Tax shield double-counted
  • Debt paydown does not match cash sweep mechanics
  • PIK interest not accruing to principal balance
  • Management rollover not reflected in equity returns
  • Exit multiple applied to wrong EBITDA (LTM vs NTM)
  • Transaction fees not deducted from Day 1 equity
  • Accretion/dilution uses wrong share count (pre- vs. post-deal)
  • Synergies not phased in over the integration period
  • Purchase price allocation does not balance
  • Foregone interest income on cash not included
  • Working capital changes have wrong sign (increase in AR should be negative on CF)
  • Depreciation does not match PP&E schedule
  • Debt maturity schedule does not match principal payments
  • Dividends exceed net income without explanation

Step 4: Report

Output a findings table with severity levels:
Claude reports findings but does not change anything without explicit permission. Report first, fix on request.

Common Mistakes

The mistake: The BS shows a 2.3MgapinYear2.TheauditoradjustsaBSlineitemby2.3M gap in Year 2. The auditor adjusts a BS line item by 2.3M to make it balance instead of tracing the root cause.Why it happens: Plugging the gap is faster than tracing the error through interconnected formulas.The fix: Never plug a gap. Trace the error back to its source: identify which period first shows the imbalance, then check the RE roll-forward, cash tie-out, and PP&E roll-forward for that period. The root cause is almost always a broken formula in one of these four areas.
The mistake: The audit verifies that all formulas calculate correctly but does not check whether cells that should be formulas have been overwritten with hardcoded values.Why it happens: Hardcoded cells do not show errors — they show perfectly reasonable numbers. They are invisible to a formula-only audit.The fix: Check every cell in the projection columns. If a cell contains a number but its neighbors contain formulas, it is likely a hardcoded override. Use Excel’s Ctrl+` (grave accent) to toggle formula view, which makes hardcodes immediately visible.
The mistake: The audit covers all visible tabs but misses a hidden tab called “old_calcs” that contains overrides affecting visible calculations.Why it happens: Hidden tabs are not visible in the tab bar. Hidden rows are not visible in the sheet.The fix: Right-click the tab bar and check for hidden sheets. Use Ctrl+Shift+9 (unhide rows) and Ctrl+Shift+0 (unhide columns) to check for hidden data. A hidden tab with active formulas can silently feed incorrect values into the visible model.
The mistake: The model works perfectly at 10% revenue growth but breaks at 0% growth (produces division by zero) or negative growth (produces negative working capital).Why it happens: The model was built and tested with a specific set of assumptions. No one tested what happens at the boundaries.The fix: Set revenue growth to 0% and check every formula. Set growth to -5% and check again. Set EBITDA to negative and verify the model handles it (taxes, leverage ratios, coverage ratios). A model that breaks under stress scenarios is not reliable.
The mistake: All formulas are technically correct (no #REF!, no hardcodes, consistent patterns) but the model’s logic is wrong — for example, CapEx is modeled as a percentage of EBITDA instead of revenue.Why it happens: The audit focuses on formula mechanics and misses whether the formula represents the correct financial concept.The fix: For each key formula, verify not just that it computes correctly but that it represents the right calculation. CapEx should be a percentage of revenue (or linked to a PP&E schedule), not a percentage of EBITDA. Working capital should be driven by DSO/DIO/DPO, not arbitrary dollar amounts.
The mistake: The model has a circular reference for interest expense that uses iterative calculation, but the iteration toggle is turned off. All interest-dependent cells show zero.Why it happens: The model was built on a computer with iterative calculation enabled. When opened on a different computer, the setting does not carry over.The fix: If the model uses intentional circular references, add a circuit breaker toggle in the Assumptions tab and document the iterative calculation requirement. The audit should verify that the toggle works and that interest calculations produce reasonable values.
The mistake: The IS shows Net Income of 52.3M,buttheCFtabstartswithNetIncomeof52.3M, but the CF tab starts with Net Income of 50.0M. Both are formulas — the CF tab references the wrong cell on the IS.Why it happens: Someone inserted a row on the IS tab, shifting the Net Income row down by one. The CF tab’s reference did not update because it was an absolute reference (DD25 instead of a named range or dynamic reference).The fix: Use named ranges for key outputs (Net_Income, Total_Assets, Ending_Cash) so references do not break when rows are inserted. During the audit, verify that every cross-tab reference points to the correct source cell by tracing precedents.
The mistake: All formulas are correct, the BS balances, cash ties out, but the model projects revenue growing at 50% annually for 10 years, producing a 30Bcompanyfroma30B company from a 200M starting point.Why it happens: The audit focused on mechanical accuracy and did not question whether the assumptions produce reasonable outputs.The fix: After the mechanical audit, do a logic and reasonableness check. Flag: revenue growth >30% sustained for >3 years, terminal value >75% of EV, EBITDA margins exceeding industry norms, hockey-stick projections with no supporting thesis.

Daily Workflow

The investment committee meeting is in 2 hours. The associate asks you to do a quick audit of the DCF model before the presentation.Workflow:
  1. Set scope to “model” (full workbook audit)
  2. Check BS balance for all projection periods — this is the single highest-priority check
  3. Check cash tie-out for all periods
  4. Verify WACC inputs match current market data (risk-free rate, beta, ERP)
  5. Check that the sensitivity table center cell equals the base case output
  6. Scan for hardcoded overrides in the projection columns
  7. Verify terminal value as a percentage of EV (flag if >75%)
  8. Report findings with severity levels. Critical findings must be fixed before IC. Warnings can be noted and fixed after.
A first-year analyst just completed their first 3-statement model. You are the associate responsible for reviewing it before it goes to the VP.Workflow:
  1. Full model audit: formula-level checks + integrity checks + logic checks
  2. Pay special attention to: working capital signs (the #1 first-model error), RE roll-forward, and D&A consistency
  3. Check that all inputs have cell comments citing their source
  4. Verify that projection formulas reference the Assumptions tab (not hardcoded rates)
  5. Test with scenario toggle: do all three scenarios produce reasonable outputs?
  6. Run edge cases: 0% growth, negative EBITDA
  7. Provide a marked-up list of findings for the analyst to fix, organized by priority
  8. Re-audit after fixes to verify nothing was introduced during the repair
An analyst says “my model won’t balance and I’ve been staring at it for 2 hours.” Time to systematically find the bug.Workflow:
  1. Check the BS balance row for every period. Identify the first period where the gap appears.
  2. In that period, check the RE roll-forward: Prior RE + NI - Dividends = Ending RE. If this does not hold, the error is in the NI calculation or the RE formula.
  3. If RE ties, check the cash tie-out: CF Ending Cash = BS Cash. If cash does not tie, there is a missing cash flow item.
  4. If cash ties, check PP&E: Beginning PP&E + CapEx - D&A = Ending PP&E.
  5. If PP&E ties, check debt: Beginning Debt - Repayments + New Issuances = Ending Debt.
  6. The error is almost always in one of these four areas. Once found, fix the root cause and verify all subsequent periods automatically correct.

Practice Exercise

Scenario: You receive a 3-statement model for a retail company and are asked to audit it before an investment committee presentation. The model has 3 tabs (IS, BS, CF) plus an Assumptions tab. Given the following findings from your initial scan:
  1. BS balances in Years 0-2 but shows a $1.5M gap in Year 3
  2. Two cells on the IS show #DIV/0! errors (Years 4-5 tax rate calculations)
  3. The CF tab has a hidden row (Row 45) containing an old WACC calculation
  4. Year 2 SG&A on the IS is 82.0M but the Assumptions tab shows SG&A should be 18% of revenue (88.2M revenue x 18% = $15.9M? That does not make sense)
  5. The sensitivity table shows the same value ($24.50) in all 25 cells
  6. D&A on the CF is 12.0M but D&A on the IS is 14.5M
Your tasks:
  1. Classify each finding as Critical, Warning, or Info
  2. For the BS imbalance, describe the debugging process you would follow
  3. For the #DIV/0! errors, identify the most likely cause and fix
  4. For the sensitivity table, explain why all cells show the same value and how to fix it
  5. For the D&A mismatch, trace the likely impact on other parts of the model
The BS imbalance in Year 3 is almost certainly caused by the D&A mismatch (Finding #6). If D&A is 14.5MontheISbutonly14.5M on the IS but only 12.0M is added back on the CF, then 2.5M of non-cash expense is treated as if it consumed cash. This overstates the reduction in PP&E by 2.5M relative to the cash impact, creating a BS gap. But the gap is 1.5M,not1.5M, not 2.5M — which means the D&A mismatch may interact with another error (perhaps the Year 3 SG&A issue) to produce the net $1.5M gap.

How to Add to Your Local Context

1

Install the Plugin

2

Add Firm Audit Standards

Edit skills/audit-xls/SKILL.md:
3

Set Color Convention

Best Practices

These are the most important habits for effective model auditing:
  • BS balance first — If the balance sheet does not balance, everything downstream is suspect. Fix this before looking at anything else.
  • Search for hardcodes aggressively — They are the #1 source of silent bugs and the hardest to find because the numbers look correct.
  • Check sign conventions — Positive vs. negative for cash outflows is extremely common and creates errors that look plausible.
  • Test edge cases — Set revenue growth to 0% and negative. Set EBITDA to negative. See if the model breaks.
  • Check hidden tabs — Hidden worksheets can contain overrides, stale calculations, or circular reference breakers that affect visible outputs.
  • Trace root causes, never plug gaps — A balance sheet that was forced to balance by plugging is worse than one that openly shows an imbalance.