Kiwimesh

Insurance · FinTech

Insurance analytics platform

Actuarial loss reserving, interactively

Chain ladder modelling in Python with Plotly Dash. Replaced days of manual spreadsheet work with an interactive web app analysts can use in real time.

Actuarial scienceData visualisation

AI-Powered Insurance Analytics Platform

Domain: Insurance / FinTech / Actuarial Science Engagement: Client project (backend + data science delivery) Team Size: Backend + Data Science


The Problem

An insurance analytics platform was needed to automate loss reserving -- a critical actuarial process that estimates future claim payouts from historical data. Traditional approaches relied on spreadsheets and manual actuarial calculations, which were:

  • Time-consuming and error-prone
  • Difficult to update as new data came in
  • Not interactive or shareable across teams
  • Lacking visualization for executive reporting

They needed a web-based platform that could run actuarial chain ladder models, visualize results interactively, and allow analysts to upload data, adjust parameters, and export reports.


What We Built

An interactive analytics dashboard combining actuarial science with modern data visualization.

Actuarial Engine

  • Chain Ladder method implementation for loss reserving (industry-standard actuarial technique)
  • Statistical modeling with SciPy and Statsmodels
  • Machine learning augmentation via Scikit-learn
  • NumPy/Pandas-based data processing pipeline
  • Support for multiple reserving triangles and development patterns

Interactive Dashboard (Plotly Dash)

  • Real-time interactive charts and tables
  • AG Grid data tables for spreadsheet-like manipulation
  • Drag-and-drop file upload for claims data (Excel/CSV)
  • Parameter adjustment with immediate visual feedback
  • Multi-tab analysis views

Data Pipeline

  • Excel and CSV ingestion (openpyxl, xlsxwriter)
  • Claims triangle construction from raw data
  • Development factor calculation
  • Ultimate loss projection
  • Export to formatted Excel reports

Technical Highlights

Stack

  • Backend: Flask with SQLAlchemy (MySQL)
  • Analytics: Plotly Dash for interactive dashboards
  • Actuarial: chainladder v0.8.11 (specialized actuarial Python library)
  • Data Science: Pandas, NumPy, SciPy, Scikit-learn, Statsmodels
  • Visualization: Plotly, Matplotlib, dash-ag-grid
  • Deployment: Gunicorn (WSGI production server)

Why This Stack

The chainladder library is a niche but powerful tool used by actuaries globally. Combining it with Plotly Dash gave us interactive visualization without needing a separate frontend framework -- analysts could manipulate data and see results in real time, all served from a single Python application.


Tech Stack

Layer Technology
Backend Flask, SQLAlchemy, Gunicorn
Database MySQL (PyMySQL)
Actuarial chainladder 0.8.11
Data Science Pandas, NumPy, SciPy, Scikit-learn, Statsmodels
Visualization Plotly Dash, Matplotlib, dash-ag-grid
File Handling openpyxl, xlsxwriter, dash_uploader

Outcome

  • Automated loss reserving calculations that previously took days of manual spreadsheet work
  • Interactive dashboards enabling actuaries to explore scenarios and adjust parameters in real time
  • Excel export for regulatory reporting and stakeholder presentations
  • Single Python application serving both computation and visualization

Key Takeaway

This project sits at the intersection of domain-specific expertise and modern web development. We didn't just build a dashboard -- we implemented actuarial mathematics (chain ladder reserving) in a production web application. This demonstrates our ability to work with specialized, domain-heavy requirements and translate them into usable software.

Have a project like this?

Tell us what you're trying to build. Discovery calls this week, scope within 3 business days.