Tabellab
Accounting & financial statements

The chain ladder method explained, with an IBNR example

The chain ladder method estimates how much an insurer will finally pay for claims that have already happened, using the way older accident years developed as a guide for the younger ones. You arrange the claims in a triangle, measure how much each year grows from one age to the next, chain those growth factors together and apply them to what has been reported so far. The difference between the projected ultimate claims and the reported claims is the reserve for claims incurred but not reported, or IBNR. This guide runs the chain ladder method on a five-year motor triangle in Excel: $37.9 million reported to date, $44.6 million projected ultimate and an IBNR of $6,739 thousand.

Updated 21 Oct 2026 6 min read By Tabellab team

What the chain ladder method assumes

Claims are reported and settled years after the accident: a whiplash claim may be reported months later and its cost keeps changing as the case develops. The chain ladder assumes that each accident year will develop like the older years did. If claims from earlier years grew by about 50% between 12 and 24 months, the latest year is expected to grow by the same factor. It needs nothing but the claims triangle itself: no premiums, no expected loss ratio. That makes it the standard first method in reserving, and also explains its weak spots, covered at the end.

Step 1: a cumulative claims triangle

Rows are accident years, columns are development ages in months (12, 24, 36 …). Each cell is the cumulative amount reported for that accident year by that age, here in USD thousands. The oldest year, 2022, has five ages, the newest year, 2026, only one, so the filled cells form a triangle. The last filled cell of each row, the latest diagonal, is what has been reported to date: 37,910 in total. If your system delivers incremental amounts (what was reported in each year), add them up across the row first: =SUM($B3:B3) copied right.

Worked example: chain ladder on a motor claims triangle

Cumulative reported claims in USD thousands (yellow), by accident year and development age in months. Rows 8 to 10 develop the factors, rows 13 to 18 project each accident year.

Worked example: chain ladder on a motor claims triangle
ABCDEF
1Accident year1224364860
2AY 20224,2006,3007,1407,4807,560
3AY 20234,6006,8007,7508,100
4AY 20245,0007,6008,550
5AY 20255,3007,900
6AY 20265,800
7
8Age-to-age factor (volume-weighted)1.4971.1321.0461.0111.000
9CDF to ultimate1.7931.1981.0581.0111.000
10% reported55.8%83.5%94.6%98.9%100.0%
11
12Accident yearReported to dateAge (months)CDFUltimateIBNR
13AY 20227,560601.0007,5600
14AY 20238,100481.0118,18787
15AY 20248,550361.0589,042492
16AY 20257,900241.1989,4601,560
17AY 20265,800121.79310,4004,600
18Total37,91044,6496,739
Key formulas
  • B8=SUM(C2:C6)/SUMIFS(B2:B6,C2:C6,"<>")Volume-weighted 12–24 factor, copy right
  • B9=PRODUCT(B8:$F$8)CDF to ultimate, copy right
  • D17=INDEX($B$9:$F$9,MATCH(C17,$B$1:$F$1,0))CDF for the accident year's age
  • F18=SUM(F13:F17)Total IBNR

Simplified, educational example with a fictional insurer, not actuarial or financial advice. Real reserving uses more years, paid and incurred data, judgement in selecting factors and a tail study.

Step 2: age-to-age factors

An age-to-age factor (link ratio) measures the growth from one age to the next. AY 2022 grew from 4,200 at 12 months to 6,300 at 24 months: a factor of 1.5. The standard chain-ladder choice is the volume-weighted factor: the sum of the next column divided by the sum of the current column, using only the years that have both values:

=SUM(C2:C6)/SUMIFS(B2:B6,C2:C6,"<>")

The SUMIFS keeps only the rows where the next age is filled, so the formula can be copied right. The 12 to 24 month factor is 28,600 ÷ 19,100 = 1.497, then 1.132, 1.046 and 1.011. A simple average of the individual link ratios gives every year the same weight, and a latest-three-years average reacts faster to recent changes. Comparing the three is a quick diagnostic before an actuary selects the factors.

Step 3: cumulative development factors

An age-to-age factor moves a year one step ahead. To reach the end, multiply all the factors from that age onward, including a tail factor for development after the oldest age in the triangle (1.000 here, so the triangle is assumed to be complete at 60 months). This is the cumulative development factor (CDF) to ultimate: =PRODUCT(B8:$F$8) copied right. The CDF at 12 months is 1.497 × 1.132 × 1.046 × 1.011 = 1.793. Its inverse, 55.8%, is the share of the ultimate claims that is typically reported after 12 months.

Step 4: ultimate claims and IBNR

For each accident year, ultimate = reported to date × CDF for its age, and IBNR = ultimate − reported. Each year has a different age, so the CDF is looked up with INDEX and MATCH on the age row. AY 2026 has 5,800 reported after 12 months, so its ultimate is 5,800 × 1.793 = 10,400 and its IBNR 4,600. AY 2022 is fully developed, so its IBNR is 0. In total the ultimate is 44,649 and the IBNR 6,739, and more than two thirds of it sits in the newest year.

Strictly, this "IBNR" also contains the expected growth of claims that are already known (often called IBNER). Most reserving reports show the whole difference as IBNR. The total claims reserve adds the case reserves on known open claims to it. Under IFRS 17, the liability for incurred claims is also discounted for the time value of money, with the same present-value logic as in a present worth analysis.

Where the chain ladder goes wrong

  • Young accident years. One large claim in the first 12 months is multiplied by 1.793. The Bornhuetter-Ferguson method blends in an expected loss ratio and is more stable there.
  • Changes in the process. Faster claims handling or stronger case reserving changes the pattern, so old factors no longer fit the new years.
  • The tail. Long-tailed lines such as bodily injury still develop after the last age. A tail of 1.000 understates the reserve.
  • Paid vs incurred. A paid triangle and an incurred (reported) triangle usually give different ultimates. Running both and explaining the gap is standard practice.

Common mistakes

  • Including empty cells in the factor. Dividing the full columns mixes years with and without the next age and biases the factor down. Use only the years that have both values.
  • Applying the age-to-age factor instead of the CDF. One factor only moves a year one step. The ultimate needs the product of all remaining factors.
  • Using the wrong CDF for a year. The latest year is at 12 months, the oldest at 60. Look the CDF up by age rather than copying it across rows.
  • Mixing incremental and cumulative data. Link ratios only make sense on cumulative amounts.
  • Forgetting the tail. A tail factor of 1.000 assumes nothing changes after the last age. For long-tailed lines that understates the reserve.
  • Trusting the newest year blindly. Its ultimate rests on one data point times the largest CDF. Cross-check it with Bornhuetter-Ferguson or an expected loss ratio.

Frequently asked questions

What is the chain ladder method in simple terms?

It projects how much claims will grow until they are fully settled, by assuming each accident year develops like the older years did. The growth factors come from a triangle of past claims, and the result is the ultimate cost and the IBNR reserve.

How do you calculate IBNR with the chain ladder?

Multiply each accident year's reported claims by its cumulative development factor to get the ultimate claims, then subtract the reported claims. The sum over all accident years is the IBNR.

What is the difference between chain ladder and Bornhuetter-Ferguson?

The chain ladder relies only on the claims reported so far. Bornhuetter-Ferguson takes the unreported share from an expected loss ratio applied to premium, which makes it more stable for young accident years with little data.

Why use volume-weighted factors?

They give large accident years more weight than small ones, which is what the basic chain ladder does. A simple average lets a small, unusual year move the factor as much as a large one.

Practise it in a lab

Related guides

Reading is step one. Doing is step two.

Every guide links to a lab where you build the same calculation in an online spreadsheet and get instant feedback.

Open the lab