The problem
The maths is old and well known. Redoing it every quarter is what takes the time.
Every quarter, an insurer has to estimate how much money to hold back for claims it will pay later, including accidents that have happened but haven’t been reported yet.
How it works, in plain English: actuaries lay past claims out in a “triangle” showing how each year’s losses grew over time, then use that pattern to project where recent years will end up. A qualified actuary has to sign the final number.
The methods (Chain Ladder, Bornhuetter-Ferguson, Cape Cod) haven’t changed in decades. What eats the time is the process around them: cleaning the same data, rebuilding the same grids, picking factors and writing the same commentary, usually in a spreadsheet held together by tape.
My idea was to leave the judgment to the actuary and speed up the mechanical 80% of the work, so they can spend their time on the 20% that needs them.
Who it’s for
Reserving analysts at mid-size insurers.
Defined before any screen was designed, in a written product plan and UX brief.
Primary
The reserving analyst
Two to ten years in, lives in Excel, sceptical of AI in a regulated deliverable. Uses the tool hard for one or two weeks a quarter, then not at all.
Signs off
The appointed actuary
Puts their name on the reserve. “The AI said so” is not a defence, so every number has to be traceable.
Reads it later
Auditors and regulators
They only ever see the workbook. If the logic isn’t in the cells, it doesn’t exist for them.
Buys it
The chief actuary
Watching a 30-minute demo, looking for one number an actuary could shoot down.
Use cases
Quarter-end, step by step.
The reserve rollQuarter-end
Open the claims dump. The panel finds the claims sheet by its columns and walks through triangles, development factors, tail factor and three reserving methods. Each step writes a formatted sheet of live formulas.
Catching a bad cellBefore it moves the reserve
Eight rule-based checks run without any AI. On the sample data one flags that 2021 spikes at 36 months then falls back: the signature of one large claim reserved high and settled lower.
Explaining the changeFor the boss
Reserve movement since last quarter, by accident year, with an AI-drafted paragraph. The one you’d otherwise write at 9pm on close day.
A second opinionOn method weights
The AI suggests how to weight the three methods for each year and writes them into editable cells. The actuary overrides whatever they disagree with.
Plain-English questionsAd hoc
“Compare Chain Ladder and Cape Cod reserves by accident year.” The chat agent reads the workbook freely but asks before writing to it.
The product
Nine steps in a side panel.
Setup, analysis, output. The redesign grouped the steps into three stages after the first version gave no sense of progress.
Diagnostics: a rule-based check finds the anomaly; plain English explains it.Nothing touches the workbook without a confirm. Sheets are never overwritten.Nine steps grouped into setup, analysis and output. Live formulas
Triangles and factors are written as Excel formulas and named ranges, so an auditor can trace every cell back to the claims data.
Works without an AI key
Triangles, factors, reserves and anomaly checks are all deterministic code. AI only drafts the judgment calls and the commentary.
Three reserving methods
Chain Ladder, Bornhuetter-Ferguson and Cape Cod, with development factors averaged four ways and a fitted tail.
Diagnostics that resist outliers
Triangles are small, so ordinary averages get dragged around by the very outlier they should catch. The checks use robust statistics instead.
Choice of AI vendor
Anthropic, OpenAI or DeepSeek, behind one common interface.
A chat agent that asks first
Fifteen tools. It reads the workbook on its own but pauses for approval before writing.
Setup: finds the claims sheet and its 200 sample claims automatically.Chat mode, with auto-write off by default. How it works
All the maths runs in the panel.
No server. The calculation engine was rewritten in TypeScript so it runs inside Excel, and the AI is an optional layer on top.
Input
Claims file
One row per claim, already in the workbook.
Read
Side panel
Finds the sheet by its 11 required columns.
Compute
Engine
Triangles, factors, reserves, anomaly checks. No AI.
Write
New sheets
Live formulas and named ranges, never overwriting.
Optional
AI analyst
Drafts weights and commentary; asks before writing.
React 18TypeScriptOffice.jsViteClaude / OpenAI / DeepSeekvitest (pro branch)
Product decisions
The main decisions, starting with moving into Excel.
Move from a web app to an Excel add-in
WhyThe first version was a web app. But actuaries live in Excel, and every competitor’s output gets exported to Excel anyway. Starting there removes a step and needs nothing installed on a server.
Trade-offOffice.js is more limited than a web app, and the add-in has to run over HTTPS even locally.
Write formulas, not values
WhyThe person signing the reserve needs to check how each number was made, and a pasted value hides that.
Trade-offMuch more complex writing code than pasting numbers.
AI proposes, the actuary decides
WhyThe actuary signs the reserve. AI suggests tail factors, method weights and commentary, always into cells they can edit.
Trade-offLess “magic” in the demo.
Diagnostics are rules; AI may only explain them
WhyEvery finding has to be traceable to a rule and a cell. The AI can rank and explain findings but is not allowed to invent new ones.
Trade-offSome patterns a model might spot will go unflagged.
Credibility before AI polish
WhyIn a 30-minute demo, one number an actuary can shoot down ends the conversation. So the next phase was premium-based methods, reserve ranges and tests against published results, not more AI.
Trade-offThat work lives on a separate branch that hasn’t been merged back yet.
Property & casualty only
WhyLife and health reserving is different maths entirely. Narrowing to one kind of insurer kept the product coherent.
Trade-offA smaller market.
Where it stands
A working prototype, in two branches.
The main version has the new interface, diagnostics and the three AI vendors. A parallel “pro” branch has the deeper actuarial methods and a test suite. The next job is bringing them together.
Built
- Nine-step workflow writing live formulas
- Chain Ladder, BF and Cape Cod
- Eight rule-based diagnostics
- AI method weights, movement analysis and commentary
- Chat agent with approval before writing
- Three AI vendors
- Browser preview with sample data
In progress
- Merging the pro branch: premium-based Cape Cod and BF, Mack reserve ranges, data quality checks, 26 tests against published results
- Removing the hard-coded 2014–2024 accident years
- Keeping progress between sessions
Next
- Actual-vs-expected roll-forward
- An audit log of AI suggestions and human overrides
- A one-click reserve committee pack
- A first pilot with a reserving team
9
workflow steps (12 in the pro branch)
8
rule-based diagnostic checks
26
tests against published results (pro)
- Mar 2026Synthetic insurance data for six lines of business, to practise on
- AprFirst version: a web app with triangles, Chain Ladder, Cape Cod and a Claude agent
- 14 MayRebuilt as an Excel add-in, the same day the web app was last touched
- 17 JulWritten product plan; the pro branch adds deeper methods and tests overnight
- 28 JulUX brief listing 17 problems; the redesign lands the same morning
- Late AugDiagnostics step and support for three AI vendors
What I learned
What I took away.
- In a regulated job, being able to check the work matters as much as the answer. The most useful thing the tool writes is a formula someone else can follow.
- Moving to where users already work beat building a better standalone app.
- Writing the UX brief after using the prototype surfaced 17 problems I’d stopped noticing. Most were about progress and orientation, not features.
About the visuals: the panel screenshots are the real add-in running on 200 fictional claims. No client or real insurer data appears anywhere on this page.
Next in the lab
Yoda
An open-source meeting recorder, reworked so it runs itself. It notices you’re in a meeting, starts, pauses and stops on its own, and names each recording after your calendar event.