What a published test found
In June 2026 a financial-training firm published a comparison of four AI tools, each asked to build Apple’s integrated three-statement model from the latest 10-K and fourth-quarter results release, with three years of history and four of forecast. It graded the first attempt on the scale it uses for analysts in training. On that scale even the strongest tool scored below a weaker trainee.
The failures it reported are more useful than the ranking. Historical line items were wrong in places while still adding up to the correct subtotals. Values that should have flowed from assumptions were typed in. No tool forecast shares outstanding correctly. None handled debt correctly, most leaned on plugs to make the statements meet, and because no tool calculated interest from the cash and debt balances, no model contained a circular reference at all. Working capital was, by the firm’s account, mostly handled well.
The examples below are invented, with numbers small enough to check on paper. Each is a failure a reviewer has to catch, because an AI-built model rarely announces where it is weak.
A history that adds up and is still wrong
Suppose the filing reports revenue of 1,200, gross profit of 480, SG&A of 210 and R&D of 90, for operating profit of 180. The model shows SG&A of 230 and R&D of 70. Operating profit is still 180, so a reviewer who ties subtotals sees nothing.
The damage arrives in the forecast. With revenue up 5% to 1,260, a 40% gross margin, SG&A growing 3% and R&D 15%, the filed history gives operating profit of 184.2. The model’s history gives 186.6. The gap is 2.4 in the first year and widens every year after, because the faster-growing line started too small. The remedy is unglamorous: tie every historical line, not every subtotal, to the filing, and note the page.
| Line | Filing | Model | Next year, filing | Next year, model |
|---|---|---|---|---|
| Gross profit | 480 | 480 | 504.0 | 504.0 |
| SG&A (+3%) | 210 | 230 | 216.3 | 236.9 |
| R&D (+15%) | 90 | 70 | 103.5 | 80.5 |
| Operating profit | 180 | 180 | 184.2 | 186.6 |
Working capital with the sign the wrong way round
Net income is 100, depreciation 30, and receivables rise from 150 to 180. Customers owe 30 more than they did, which is cash not yet collected, so operating cash flow is 100 plus 30 less 30, or 100. A formula that adds the increase instead reports 160.
Cash is now 60 too high, twice the movement, because the error both drops a deduction and adds it back. The balance sheet should fail its check by 60. If the model has a plug, it does not, and the overstated cash runs into every later year. Test the direction on one line: raise receivables and cash must fall.
A debt balance that does not move
Take opening debt of 500, an EBITDA margin of 20%, and a simplifying assumption that 40% of EBITDA is left to repay debt. On revenue of 1,000, EBITDA is 200, repayment 80 and closing debt 420. An AI tool that types 420 into the closing balance produces a model that is right today.
Now cut revenue to 800. EBITDA falls to 160 and repayment to 64, so closing debt should be 436. The typed cell still says 420. Leverage reads 2.63 times instead of 2.73 times, and if the covenant is 2.70 times, the model reports headroom on a breach. The cash flow statement and the balance sheet now disagree by 16, which a plug quietly absorbs. The test is to flex revenue and watch debt: if it does not move, it was never calculated.
Read as a table
| Case | Closing debt | EBITDA | Leverage |
|---|---|---|---|
| Revenue 1,000 | 420 | 200 | 2.10x |
| Revenue 800, debt calculated | 436 | 160 | 2.73x |
| Revenue 800, debt typed in | 420 | 160 | 2.63x |
| Covenant | 2.70x |
Interest, circularity and the two honest answers
Interest on average debt depends on closing debt, which depends on the cash left after interest. That loop is a circular reference, and the finding that no tool forecast interest from the balances at all means the question was never faced. A reviewer should ask which of two defensible choices the model made.
Opening debt is 500 at 8%, with 120 of cash before interest to repay it and no tax. Charging interest on the opening balance gives 40.00, repayment of 80 and closing debt of 420.00. Charging it on the average gives 36.67 and closing debt of 416.67, found by iteration: 40, then 36.80, then 36.67. The difference is 3.33 of interest in one year.
Either is honest if it is stated. Average-balance interest needs iterative calculation switched on and a circuit breaker, a single switch cell that sets interest to the opening-balance figure, so that an error caught in the loop can be cleared rather than spread. Opening-balance interest accepts a small timing error for a model that calculates without iteration. A hardcoded interest line is not a third answer.
| Convention | Interest | Repayment | Closing debt |
|---|---|---|---|
| Opening balance | 40.00 | 80.00 | 420.00 |
| Average balance | 36.67 | 83.33 | 416.67 |
What the five have in common
Each error survives a glance and fails a test. The history passes because subtotals tie. The sign error and the frozen debt pass because a plug closes the balance sheet. The missing loop passes because nothing is circular. The share count passes because the division works. What catches them is a reviewer who changes something and predicts what should happen before looking.
That is the analyst test in practice, and it is why modelling skill matters more when a tool drafts the model, not less. A tool gets a model started quickly; the person who signs it off is answerable for every cell. The guide on auditing an AI-built model sets out the checks in order, and the three-statement and DCF models are a place to rehearse them on a workbook whose answers are known.
Become a Financial Modelling Pro ($999, 2-day sprint). Two live days building a three-statement model from a blank workbook, checks and all.
The L3VLUP Weekly
The week in finance, in your inbox
This week's edition: Houlihan Lokey's spring week is open, and an offer above its DCF
Get the next one
One email a week: the deadlines ahead, the deals worth knowing and the line to have ready when an interviewer asks what is happening in the market.
Free, one email a week, and you can leave at any point.