Skip to main content
Uncategorized

Interest Rate Risk and Duration in Banks Explained

At the end of 2022, U.S. banks were sitting on roughly $620 billion in unrealized losses on their securities portfolios — the product of buying long-duration bonds when rates were …

8 MIN READ

At the end of 2022, U.S. banks were sitting on roughly $620 billion in unrealized losses on their securities portfolios — the product of buying long-duration bonds when rates were near zero and then watching the Fed raise rates 525 basis points. Most banks survived it. A few didn’t, and the ones that failed weren’t undone by bad loans. They were undone by interest rate risk.

That distinction matters. Interest rate risk is not an exotic specialty topic for bank treasury teams. It is the mechanism that turned otherwise healthy balance sheets into ticking problems between 2021 and 2023. Anyone reading bank financials — analysts, investors, examiners, counterparties — needs to understand how it works.

U.S. Banking Industry Unrealized Securities Losses, 2020–2024

The losses peaked in late 2022 and began recovering as the portfolio aged and rates stabilized, but the question of how to read a bank’s exposure from public data didn’t go away.

Asset yields versus funding costs over time
The spread between what banks earn on assets and pay for funding (FDIC).

What Interest Rate Risk Actually Is

Banks engage in maturity transformation. They fund long-dated assets — loans, agency MBS, Treasuries — with shorter-dated liabilities, principally deposits. When rates move, those two sides of the balance sheet respond at different speeds. That lag is where interest rate risk lives.

It shows up in two forms worth distinguishing.

Repricing (earnings) risk is the effect of rate changes on net interest income. If a bank’s liabilities reprice faster than its assets — deposits ratchet up before the loan book turns over — rising rates compress the margin. You can watch this happen in real time on UBPR Schedule A, which reports net interest income (UBPR code 4074A) on a tax-equivalent basis, or in the call report on Schedule RI, item 1 (interest and fee income) and item 2 (interest expense).

Price (value) risk is what happens to the market value of fixed-rate assets when rates move. A 30-year fixed-rate bond bought at par in 2020 is worth considerably less if rates rise 3 points. The call report captures this on Schedule RC-B, which breaks out available-for-sale and held-to-maturity securities, with unrealized gains and losses reported in RCON8641 (AFS fair value) and RCON1771 (HTM amortized cost). The gap between those numbers is the embedded exposure.

Both forms matter. The error is treating them as separate problems rather than two faces of the same structural mismatch.

Duration: The Number That Tells You How Much

Duration is the sensitivity measure for price risk. Expressed in years, it tells you approximately how much a fixed-income asset’s value moves for a 1-percentage-point change in rates.

Approximate price change ≈ −Duration × Δ rates

A bond with a duration of 6 loses roughly 6% of its value if rates rise 1 point. The same bond gains about 6% if rates fall 1 point. A portfolio of 30-year mortgage-backed securities might carry a duration of 7 to 10 years. A portfolio of 90-day Treasury bills has a duration close to zero.

Duration is not reported directly in public bank filings — the FFIEC 031/041/051 call reports don’t require it on a portfolio basis. What the call report does provide is the maturity and repricing structure of the securities book on Schedule RC-B, broken into buckets: under 1 year, 1–3 years, 3–5 years, 5–10 years, 15+ years. That bucketing is a duration proxy. A bank whose AFS and HTM securities are heavily weighted toward the 10-year-plus bucket is carrying long duration. You don’t need the exact number to know the exposure is large.

How a Rate Shock Moves Through a Bank

Walk through a 200-basis-point rate increase at a typical community bank holding a long-duration securities portfolio.

The securities book takes an immediate hit. Fixed-rate MBS and Treasuries fall in price; the longer the duration, the bigger the drop. On the AFS side, those losses flow through accumulated other comprehensive income (AOCI) and reduce reported equity — visible in RCON3210 on the call report. On the HTM side, under the AOCI opt-out most banks elected, the unrealized losses don’t touch reported capital at all until the securities are sold. That opt-out created the specific problem that surfaced in 2023.

Funding costs start climbing. How fast depends on the bank’s deposit beta — the fraction of a rate increase that passes through to deposit costs. A beta of 0.40 means a 100bp Fed hike eventually translates to a 40bp increase in the bank’s cost of deposits. Low-beta banks, typically those with sticky, relationship-driven retail deposits, absorb the rate increase more slowly and protect margin longer. High-beta banks feel it immediately.

Asset yields eventually rise too. New loan originations price off higher market rates, floating-rate loans (tied to prime or SOFR) reprice quickly, and maturing fixed-rate loans roll into new paper at better yields. But “eventually” is doing real work in that sentence. A bank with a large book of 5- to 7-year fixed-rate commercial real estate loans doesn’t see those yields move for years. The gap between when liabilities reprice and when assets reprice is the earnings compression window.

Whether the bank comes out ahead or behind from a rate increase depends on the specifics: asset duration, liability structure, deposit beta, and the mix of fixed versus floating. This is asset-liability management — the ongoing effort to keep those mismatches inside acceptable bounds.

Why 2023 Went From Risk to Failure

Interest rate risk usually degrades earnings over several quarters. It becomes an acute survival problem only when it collides with funding instability.

The specific sequence in 2023: banks had accumulated large long-duration securities portfolios during the low-rate era, booking substantial unrealized losses after 2022’s rate moves. Held to maturity, those securities would eventually repay par. The problem was that several banks simultaneously faced deposit outflows — concentrated, uninsured, and technology-amplified — that forced them to liquidate those depressed securities before maturity. Paper losses became realized losses. Realized losses destroyed capital. Capital destruction triggered more outflows.

The duration and the unrealized losses were the loaded weapon. The funding instability was the trigger.

This is why examiners and serious analysts never look at a bank’s rate exposure in isolation. The UBPR and call report data needed to assess this aren’t segregated into an “IRR section” — the picture requires reading securities structure (Schedule RC-B), unrealized positions (RCON8641, RCON3472), deposit composition (Schedule RC-E), uninsured deposits (RCON5597), and net interest margin together. The combination is the exposure.

Reading Rate Exposure From Public Data

Here is what the call report and UBPR actually give you:

Securities maturity structure. Schedule RC-B shows the maturity/repricing breakdown of the AFS and HTM portfolios. Weight in the 5-year-plus buckets is a direct indicator of duration. A bank with 60% of its securities portfolio in the 10-year-plus bucket is carrying meaningfully different rate risk than one holding mostly short paper.

Unrealized gains and losses. RCON8641 (AFS fair value) versus RCON1771 (HTM amortized cost). The difference between HTM amortized cost and an estimated fair value doesn’t appear directly, but the AFS unrealized position shows up in RCON3472. Comparing AFS unrealized losses to reported tier 1 capital (RCON8274) gives you the “what if they had to sell” stress test.

AFS versus HTM split. A large HTM bucket is not inherently bad, but it means the reported capital ratio is not reflecting the full impact of rate moves. Pull Schedule RC-B and compare the two buckets explicitly.

Net interest margin trend. UBPR code 4074A (tax-equivalent NIM) across quarters tells you whether repricing risk is already showing up in earnings. A margin that compressed 40–60bp as rates rose signals a liability-sensitive book.

Deposit composition. Schedule RC-E breaks out time deposits, money market, savings, and demand. Brokered deposits (RCON2365) and uninsured deposits (RCON5597) are the funding stability indicators that turn duration risk into liquidity risk.

The BankRegReports platform pulls all of these fields for every U.S. bank — commercial banks, savings institutions, credit unions via the NCUA 5300 — across more than 24 years of quarterly history, pre-computed and peer-grouped. If you want to see how a specific bank’s securities duration proxy changed between 2020 and 2023, or how its unrealized AFS losses compared to peer capital ratios, the data is already structured for that comparison.

import bankregreports

brr = bankregreports.BankReg("brr_xxxxxxxxxxxx")

# Pull securities unrealized losses and NIM for Silicon Valley Bank
irr = brr.interest_rate_risk(rssd_id=1696656, quarters=12)
print(irr)

# rssd_id       date    afs_unrealized_loss_000s  htm_book_000s  nim_te  tier1_capital_000s
# 1696656  2022-12-31           -15,153,000          91,321,000   1.93%       15,822,000
# 1696656  2022-09-30           -16,021,000          91,004,000   2.11%       15,866,000
# 1696656  2022-06-30           -11,986,000          88,470,000   2.08%       15,998,000

The BankRegReports Data API exposes these fields programmatically. The interactive documentation at https://api.bankregreports.com/api/v1/docs/ shows the full parameter set for securities, margin, and deposit composition endpoints.

AFS Unrealized Loss as % of Tier 1 Capital — Community Banks vs. Large Banks, 2021–2024

Frequently Asked Questions

What is interest rate risk for a bank? The danger that changes in market interest rates will hurt a bank’s earnings or the value of its assets. It arises because banks fund longer-dated assets with shorter-dated liabilities, so the two sides reprice at different speeds when rates move.

What is duration? A measure of how sensitive a fixed-income asset’s value is to interest rate changes, expressed in years. A bond with a duration of 5 falls roughly 5% in value if rates rise 1 percentage point. Longer duration means larger price swings for a given rate move.

How do rising interest rates affect banks? Rising rates reduce the value of fixed-rate securities, increase funding costs, and eventually lift yields on new and floating-rate assets. Whether a bank benefits or suffers depends on its asset-liability structure, the duration of its securities, and its deposit beta.

Why did interest rate risk cause bank failures in 2023? Banks held long-duration securities with large unrealized losses after rates rose. When uninsured depositors withdrew funds rapidly, the banks were forced to sell those depressed securities, turning paper losses into realized losses that destroyed capital. Duration created the exposure; unstable funding triggered it.

What is the difference between repricing risk and price risk? Repricing risk is the effect of rate changes on net interest income when assets and liabilities reprice at different speeds. Price risk is the effect of rate changes on the market value of fixed-rate assets, particularly securities. Both are forms of interest rate risk, and a bank facing both simultaneously is the dangerous case.

How can I assess a bank’s interest rate risk from public data? Review the maturity and repricing structure of its securities book on Schedule RC-B, its AFS unrealized losses relative to tier 1 capital (RCON3472 vs. RCON8274), the AFS/HTM split, deposit composition including uninsured and brokered deposits, and the net interest margin trend over multiple quarters. BankRegReports presents these fields for every U.S. bank with peer benchmarks and historical trends.

The field that most analysts skip is the HTM bucket. If it’s large and rates have moved, the reported capital ratio is not telling the full story — and that’s exactly the number regulators and counterparties are relying on.


The data referenced in this post is available through the BankRegReports Data API. The BankRegAPI Python SDK (pip install bankregreports) returns clean, UBPR-validated data from FFIEC, FDIC, Federal Reserve, NCUA, and SEC EDGAR in a single call. Get a free API key →