Learn · accuracy

The ALM report in a bank: following one loan balance to the page

An ALM report in a bank is only as accurate as the chain behind it: core system, extract, model, general ledger, page. This guide follows one loan balance through that chain, shows where a $14 million break hid, and sets out the tie-outs ALCO Reporting runs before it drafts a single page.

Updated · 12 min read

An ALM report in a bank is the set of results the asset/liability management model produces, net interest income and economic value of equity under rate scenarios, repricing gaps and liquidity projections, and the ALCO pages built from them. Its accuracy is a chain, not a model property: a loan balance starts in the core banking system, is extracted, aggregated into the model, should agree with the general ledger, and ends up on a page the committee reads. A break at any hop flows straight through to every page that depends on it, and when inputs are checked by eye on totals, a break tends to surface after the pages are built, if at all. Botminds' ALCO Reporting reverses the order: its agents prove the model's inputs to the general ledger and the core before a page is drafted, and a break holds exactly the pages it touches until a person fixes it and another approves the fix.

The balance followed here is the loan book of a fictional sample bank, Tessaly Community Bank, in the solution's September 2026 run; the accounts and amounts are sample data. The supervisory text is the FDIC's and the Federal Reserve's own, linked where quoted.

One loan balance, hop by hop, and where it broke

HopWhat the balance is thereThe check at this hopSample month, first run
1 · Core banking system18,422 loans with balances, rates, terms and repricing datesCompleteness of the extract: every loan account and segment the general ledger carriesTwo accounts of purchased commercial real estate participations not in the model's loan extract
2 · ExtractThe file the ALM model loadsExtract totals against the core, by portfolioThe missing accounts were never in the file, so the extract agreed with itself
3 · ALM modelLoans aggregated into instruments with like cash flowsModel totals against the general ledger, at a toleranceModel $2,526.24M
4 · General ledgerThe final trial balance for September 30The reference: the bank's booksGeneral ledger $2,540.45M: a $14.21M break, 0.56% against a 0.25% tolerance
5 · The pagesEvery page that uses loans: margin, NII, EVE, balance sheet, limitsNo page drafted on an input that does not tie21 of 46 pages held; 25 drafted
Fictional sample bank, run R1 of the September 2026 model in ALCO Reporting, October 9, 2026. The break was fixed on October 12 and the rerun tied.

What is an ALM report in a bank?

An ALM report in a bank is the output of its interest rate risk and liquidity measurement, presented to the asset/liability committee and, in summary, the board. The FDIC describes what the measurement system should generate: "summary reports that highlight the bank's sensitivity to changes in market rates given various interest rate scenarios", which "typically indicate the change in net income or net interest income and/or economic value of equity", sometimes with "a gap report highlighting asset/liability mismatches over various time horizons" (FDIC RMS Manual §7.1).

What the FDIC says next is the premise of this page: "A model's accuracy depends on the assumptions and data used. Like any model, inaccurate data or unreasonable assumptions will render inaccurate results." Most of the attention an ALM report gets goes to the second half of that sentence, the assumptions. The first half, the data, fails more quietly, because a model fed an incomplete loan file produces numbers that look entirely reasonable.

What data feeds an ALM model?

An ALM model is fed by every system that holds a balance, a rate or a contractual term: the core banking system for loans and deposits, the investment accounting system for securities, the general ledger for the totals everything must agree with, and the documents that hold terms the systems do not, such as borrowing agreements or partner program contracts. Behavioural inputs, deposit betas and decay rates, prepayment speeds, come from the bank's deposit study and from outside data.

In the sample, the model run loads 2,412 instruments across nine rate scenarios, and ten other sources sit around it: the general ledger trial balance (1,840 accounts), deposit balances and migration from the core (214,806 accounts in 11 products), loan balances, rates and production (18,422 loans), securities holdings (312 positions), partner program balances and agreements, the borrowing capacity statements, the board's policy, the deposit study, and last month's package and minutes. The FDIC asks reviewers to evaluate "The source, completeness, accuracy, and procedures for external data feeds", and each of the eleven is a feed in that sense.

How do you reconcile the ALM model to the general ledger?

Reconcile the ALM model to the general ledger by comparing the model's balances with the trial balance line by line, at a set tolerance, before the scenarios are run, and by reconciling the model to the core banking system by portfolio as well, so a missing segment shows even when totals are close. The FDIC is direct about the order: "The internal control process must be comprehensive enough to ensure that data inputs are accurate and complete prior to running the system and generating reports."

It is equally direct about the method: "Internal control procedures should be established to ensure that input data, such as general ledger balances and contractual terms, are accurately captured. Institutions should verify system inputs by having experienced personnel reconcile the balances to the general ledger." Two details in those sentences are worth reading slowly. Contractual terms are inputs too: a balance that ties with the wrong rate or repricing date passes a balance check and still distorts NII. And the reconciliation belongs to experienced people, not to whoever has time.

The comparison runs in two directions, because each catches a different break. Model against the general ledger catches a segment that never reached the model, as in the sample. Model against the core, by portfolio, catches an aggregation error, such as two portfolios merged, where totals still agree. The FDIC's own example of the second kind: grouping "6 percent, 30 year residential loans together may be appropriate, but grouping together 6 percent fixed-rate loans with 6 percent adjustable-rate loans is not."

What tolerance should ALM inputs tie to?

No regulation sets a tolerance for ALM inputs; it is a materiality judgement the bank should write down and apply per check. The sample bank's settings are 0.25% on balances, $0.25 million on income and 2 basis points on rates. On a loan book of $2,540 million, 0.25% is about $6.4 million, so the $14.21 million break, 0.56%, was outside it by more than double.

Two design choices matter more than the number. The first is to set the tolerance per check, not once for the report: 0.25% of total loans is $6.4 million, but a whole product line, such as a fixed-rate commercial real estate segment, can be smaller than that and still change the NII picture, because it carries different repricing. A check by portfolio, against the core, catches what a total-level tolerance lets through. The second is to treat timing differences as explained, not tolerated. In the sample's rerun, available-for-sale securities in the investment accounting system were $418.4 million against $416.4 million in the general ledger, a $2.04 million difference from an agency purchase traded on September 29 and settling October 1. It was outside tolerance, explained, and sent to the Treasurer with a reason code rather than waved through.

What happens when the ALM model does not reconcile?

When the ALM model does not reconcile, its outputs should not be used until the break is fixed or explained, and every page that depends on the broken input should wait. The FDIC tells its own examiners the same about their reports: "if weaknesses in a model or its assumptions are identified that render its results unreliable, report comments supporting the assigned rating should not rely on (or, at a minimum, should qualify any use of) the resulting data." A bank's committee deserves the same discipline.

In practice, the fix is usually small and the cost is in finding it late. The sample break was two accounts missing from the extract; the fix was to add the participations to the model as a fixed-rate commercial real estate segment. Found on Friday, October 9, before drafting, it cost the analyst part of a Monday. Found after drafting, it would have meant rebuilding the 21 pages that use loans and re-explaining a margin, an NII table and an EVE table, a week before the meeting.

What happens to a break, step by step, in ALCO Reporting

  1. Agent

    Load and check

    Loads the model run and ten other sources; runs 14 checks against the general ledger and the core at the bank's tolerances.

    Never: Never changes a model figure

  2. Agent

    Hold what the break touches

    Finds loans $14.21M short, names the two accounts, holds the 21 pages that use loans and drafts the other 25.

    Never: Never drafts a page on an input that does not tie

  3. A person decides

    Fix the input

    The ALM Analyst adds the participations to the model as a fixed-rate commercial real estate segment.

  4. A person decides

    Approve the fix

    The Treasurer, as checker, approves the fix with the reason code RECON-FIX.

  5. Agent

    Rerun and draft

    Reruns the checks: 13 tie, one timing difference of $2.04M; drafts the 21 held pages on the reconciled run.

  6. A person decides

    Decide the timing difference

    The explained difference goes to the Treasurer to decide, under the reason code TIMING-DIFF.

Fictional sample bank, runs R1 and R2 of September 2026, October 9 to 14. Agents check, hold and draft; the fix and both approvals are people's.

No page is drafted until the ALM model's inputs tie: the check screen in ALCO Reporting

ALCO Reporting, Sources and reconciliation, run 2026-09-R2: 13 of 14 checks closed. Loans, model against general ledger, $2,540.45M both, ties; the note below says that run R1 on October 9 showed the model at $2,526.24M against the general ledger at $2,540.45M, a $14.21M break (0.56%), because accounts 1427-310 and 1427-315 were not in the model's loan extract, fixed October 12 and approved with RECON-FIX, with the pages held on October 9 listed. Below, loans by portfolio, deposits against the general ledger and by product, partner balances, available-for-sale securities with a $2.04M timing difference, and held-to-maturity securities, each with its tolerance. On the right, the agent's five steps and the 11 sources with arrival times.
Fictional sample data. Each check shows the model's figure, the source it is proved against, the difference and the tolerance; a break names the accounts behind it and lists the pages it held.

Why do ALM balances differ from the Call Report?

ALM balances differ from the Call Report for four ordinary reasons, and each should be explainable line by line. Timing: the Call Report is a quarter-end report and the ALM package usually monthly. Valuation: available-for-sale securities are carried at fair value on the balance sheet, while a model works from par, book and cash flows. Scope: the model may include or exclude items such as accrued interest, deferred fees or loans in process differently from the regulatory schedules. And aggregation: the FDIC warns that "models that aggregate information based on Call Report data may not provide the granularity necessary for institutions with significant levels of embedded options."

The comparison also runs the other way: the Call Report can be the one that is wrong. NCUA tells its examiners that a high-risk result from its own estimated NEV tool can come from a wrong Call Report (the NCUA NEV supervisory test explains the tool), so "staff should review the Call Report for completeness and accuracy before reviewing ENT results" (NCUA, Updates to Interest Rate Risk Supervisory Framework). And the FDIC's review of Signature Bank found that, in February 2023, examiners questioned its reporting of pledged securities, "which required SBNY to refile its year-end 2022 Call Report with a multi-billion upward adjustment to pledged securities."

Prior to and during the weekend of SBNY's failure, examiners informed SBNY that pledged securities were still misstated on the bank's liquidity monitoring reports, because management continued to under-report pledged securities and overstate on-balance sheet liquidity on information provided to examiners. This issue persisted until the day SBNY failed, when management finally produced an accurate report of unpledged securities.

FDIC, Supervision of Signature Bank, April 28, 2023

Signature's error was not in a model. It was in the data the liquidity reports were built from, and it survived a refiled Call Report and an examiner's warning. A tie-out of pledged securities in the liquidity report against custody and pledging data and the general ledger is exactly the kind of check this page describes.

Who checks the ALM report, and how do examiners test ALM data?

Three layers check the ALM report: the people who prepare and approve it, an independent review at least annually, and the examiners. The first layer is maker and checker: the analyst reconciles and the Treasurer or CFO reviews. The second must be independent of the first. The FDIC keeps reviewers away from the routine work of reconciling inputs and developing assumptions, says "Independent reviews should be performed at least annually", and that system-input reviews should evaluate, among other things, "The reconciliation of the measurement system's data to the bank's general ledger" and "The accuracy of contractual terms captured within the measurement system."

Examiners test the same chain. The FDIC tells them that "Examination of the system's input process should focus on the procedures for inputting and reconciling system data, categorizing and aggregating account data, ensuring the completeness of account data, and assessing the effectiveness of internal controls and independent reviews." A bank that keeps each month's reconciliation, with the breaks, the fixes and who approved them, hands the examiner that evidence; one that ties totals by eye hands over an assertion.

When the second layer finds a problem, the first has to act on it. The Federal Reserve's review of Silicon Valley Bank found that "Internal audit had findings related to incorrect data inputs, inadequate governance of IRR models, and inaccurate NII position dating back to December 2020 but did not have the internal stature to drive remediation" (Federal Reserve, SVB review, April 2023). A data-input finding open for more than two years is a reconciliation that nobody owned.

Every check, fix and approval on one trail in ALCO Reporting

ALCO Reporting, Audit trail: every agent step and every person's decision on the package, kept and never edited, with a button that exports the evidence for examiners. Entries include: October 13, the agent ran 14 checks on run 2026-09-R2, 13 tie and 1 timing difference explained; October 14, it drafted the 21 pages held since run R1; October 12, Jonah Whitcombe approved the loan input fix, participations added to the model as a fixed-rate CRE segment, reason code RECON-FIX, with evidence; October 12, Elise Marchetti proposed the partner program average life change; other entries for margin notes, questions and page approvals.
Fictional sample data. Internal audit filters the trail by person, agent or reason code, opens the evidence behind each entry and exports it for examiners.

Fourteen tie-outs before any page

The tie-outs worth running before any page is drafted are the ones that test each source against an independent one, by segment, at a stated tolerance. The sample bank runs fourteen. The list below is the shape of them, and a bank of any size can run the same set by hand; the point is the order, not the tool.

Tie-outs to run before an ALM report page is drafted

  1. Loans: model against the general ledger

    Total and by general ledger account; names any account missing from the extract.

  2. Loans: model against the core, by portfolio

    Catches aggregation errors that totals hide.

  3. Deposits: model against the general ledger

    The sample's $2,904.3M tied exactly on the rerun.

  4. Deposits: model against the core, by product

    All 11 products; product codes renamed in the core are the usual break.

  5. Partner or brokered balances against their own system

    Third-party deposits often sit outside the core.

  6. Securities: model against investment accounting

    By portfolio, available-for-sale and held-to-maturity separately.

  7. Investment accounting against the general ledger

    Where trade-date and settlement-date timing differences appear; explain each one.

  8. Income and rates

    Interest income and expense to the general ledger, and weighted rates to the core, at their own tolerances.

  9. Contractual terms on a sample of instruments

    Rate, index, repricing date, caps and floors against the source document.

  10. Pledged and unpledged securities

    Against custody and pledging data, for the liquidity pages.

Our list, following the input controls in FDIC RMS Manual §7.1 (10/2025) and the fictional sample bank's fourteen checks in ALCO Reporting.

Once the inputs tie, the next accuracy question is whether the explanations of what moved are right, which is the subject of net interest margin analysis by driver. The analyst whose week these checks shape is followed in what an ALM analyst does.

Questions people ask

What is ALM reporting?

ALM reporting is the production and presentation of asset/liability management results to management, the ALCO and the board: interest rate sensitivity of earnings and economic value, liquidity, funding and the limits on each. The FDIC expects interest rate risk reports to reach senior management and the board at least quarterly, and the interagency liquidity policy statement expects liquidity reports monthly to senior management.

How often should the ALM model be reconciled to the general ledger?

Every time it is run for a report. A monthly package needs a monthly reconciliation, done before the scenarios are run rather than after the pages are built, and the year's reconciliations are what the annual independent review and the examiner will ask to see.

What is ALM model testing?

ALM model testing covers three things: whether the inputs are right (reconciliation and contractual terms), whether the assumptions are reasonable (deposit studies and sensitivity tests), and whether the outputs hold up (back-testing projected against actual results). The 2010 interagency advisory puts back-testing of the assumptions and the results inside the scope of an independent model review.

Does an outside ALM provider reconcile the data for us?

Some providers check the data they receive for internal consistency, but the reconciliation to the bank's own general ledger remains the bank's control. The FDIC puts input reconciliation among the bank's routine internal control functions, and an independent review is expected to evaluate it at least annually.

What is a good tolerance for ALM data?

There is no regulatory figure. The sample bank uses 0.25% on balances, $0.25 million on income and 2 basis points on rates, applied per check. Whatever the number, it should be written into procedures, applied by segment as well as in total, and any difference inside it that has a known cause should still be explained.

ALCO Reporting.
See it on your own files.

An agentic solution from Botminds. Treasury and finance assemble the ALCO package and explain NII, EVE and liquidity changes Book a demo, or explore how it works.