Insurance illustration software is the engine that produces the projected policy values customers see at point of sale. It runs across product types (term, whole life, universal life, variable universal life, indexed UL, RILA, annuities), product variants per type, and carrier-specific contract terms. Every illustration is a regulated document — under NAIC Model Regulation 580, AG 49-A for IUL, AG 53 for non-guaranteed elements, plus state-specific overlays — and every wrong number is a potential market-conduct finding.
This article is the working note for engineering teams building or validating illustration software. The synthetic-policy-and-insured shape needed to stress-test across product types, the validation gates that catch regulatory non-compliance, and the failure modes that ship when the test corpus is too narrow.
What illustrations actually have to do
A compliant illustration produces a year-by-year projection of policy values — death benefit, cash value, premium pattern, dividends, indexed credits, charges — for both the guaranteed and non-guaranteed scenarios. The customer sees this projection. The state insurance department audits this projection. The carrier defends it.
The output has structural requirements:
What every compliant illustration shows
- Side-by-side guaranteed and non-guaranteed columns
- Annual values from issue through age 121 (or contract maturity)
- Surrender value at every projection year
- Loan availability and interest crediting if loans are taken
- Policy charges (cost of insurance, M&E, riders, surrender charges) shown explicitly
- Required disclosure language and disclaimers per the relevant regulation
- Signed acknowledgement section for the applicant
Each row is a code path. Each carrier has its own implementation. Each state has overlays. The matrix is large and the room for error is correspondingly large.
Product-type-specific stress points
| Product | Critical illustration math | Common failure mode | |
|---|---|---|---|
| Term life | Premium-to-coverage relationship; conversion privileges | Conversion-availability windows (typically 70th birthday) | |
| Whole life | Dividend interest rate; paid-up additions; cash-value growth | Dividends illustrated above current scale (hits AG 53) | |
| Universal life | Crediting rate floor; cost-of-insurance schedules; lapse risk | COI projected at current rates rather than guaranteed maximum | |
| Indexed UL (IUL) | Cap, floor, participation rate, multipliers, BIA constraint | Illustrated rate exceeds AG 49-A BIA limit; multiplier not self-funded | |
| Variable UL | Sub-account performance projections; M&E charges; surrender charges | Sub-account performance illustrated at unrealistic returns | |
| RILA (registered indexed-linked annuity) | Buffer / floor structure; cap rate; index-linked credits | Buffer mechanics misrepresented; downside risk understated | |
| Variable annuity | Sub-account performance; living-benefit guarantees; surrender schedules | Living-benefit costs not reflected in projected values | |
| Fixed indexed annuity | Cap, participation, index allocation; bonus tracking | Bonus illustrated without recapture mechanics |
The AG 49-A tier (IUL specifically)
IUL illustrations are subject to the most explicit constraints. A compliant IUL illustration:
- Constraint 1Illustrated rate ≤ BIABIA = 25-year geometric mean of the underlying index with the contract's actual cap, floor, and participation rate applied. Engine has to compute this from history, not from a constant.
- Constraint 2Multiplier self-fundingAny illustrated multiplier (e.g., 110% of indexed return) must be funded by an explicit policy charge. The illustrated benefit minus the illustrated charge must net to zero on average.
- Constraint 3Persistency bonus self-fundingSame logic for bonuses that vest over time — must be funded by charges in the projection.
- Constraint 4Indexed loan illustrated rate capIllustrated rate on indexed loans cannot exceed BIA + 50 bps.
- Constraint 5Disclosure presenceRequired statements about non-guaranteed values, BIA being a benchmark not a forecast, etc.
- Constraint 6Side-by-side guaranteed presentationAG 49-A explicitly requires the guaranteed column to be visible, not just disclosed.
Engines that fail any of these gates are producing non-compliant illustrations. Carriers shipping non-compliant illustrations face market-conduct exam findings.
What the synthetic test corpus has to look like
A working illustration-software test corpus:
Test corpus essentials
- All product types — term, whole, UL, IUL, VUL, RILA, VA, FIA. At least 5-10 illustrations per product.
- Insured profile spread — ages 25 to 75 in 5-year steps. Both genders. Smoker / non-smoker. Standard / preferred / preferred-best ratings.
- Carrier-specific contract spread — at least 2 carriers per product type, with their distinct cap / floor / participation parameters.
- Premium-pattern variations — single, level, target, indexed, blended. Each pattern stresses different parts of the engine.
- 25-year underlying index history — for IUL and FIA products. S&P 500, Russell 1000, Nasdaq-100 at minimum.
- Both compliant and non-compliant test illustrations — non-compliant cases validate the violation-detection code path.
- Edge cases — lapse-prone projections, MEC reclassification scenarios, Section 1035 exchange origins, ILIT-owned policies.
- State-specific test cases — illustrations subject to state-specific overlays (NY Reg 187, California disclosure requirements).
The non-compliant illustrations are the most important and most often missing. A test corpus consisting only of compliant illustrations doesn't exercise the violation-detection code path that's the actual job of a validation engine.
The validation gates
Three gates we run on illustration-software stress tests:
- Gate 1Math reconciliationThe illustration's year-by-year values reconcile across columns. Premium + interest credit − charges = next-year cash value, exactly. Engine bugs at this level are the most embarrassing.
- Gate 2Regulatory complianceAG 49-A constraints, AG 53 dividend-scale rules, Model Reg 580 disclosure requirements. State overlays applied where applicable.
- Gate 3Edge-case behaviorLapse-prone projections produce realistic warnings, not silent failures. MEC reclassification triggers visible disclosure. Section 1035 origin policies preserve basis correctly.
Engines passing all three gates on a comprehensive test corpus are in defensible position for the next NAIC exam. Engines that pass only Gate 1 — and don't have a structured test corpus — are operating at the regulatory risk that the regulator finds the issues before the engineering team does.
Key takeaways
- Insurance illustration software spans 8+ product types, each with distinct illustration math and distinct failure modes.
- AG 49-A imposes the most explicit constraints (on IUL specifically). Six gates: illustrated rate vs BIA, multiplier self-funding, bonus self-funding, loan arbitrage cap, disclosures, side-by-side guaranteed presentation.
- Test corpus has to span product types, insured profiles, carrier contracts, premium patterns, and 25-year index histories. Edge cases (lapse, MEC, 1035 exchanges) and non-compliant test cases are essential.
- Three validation gates: math reconciliation, regulatory compliance, edge-case behavior. Engines passing only the math gate are at regulatory risk.
- NAIC market-conduct enforcement on IUL is increasing. Carriers and their software vendors are being asked to demonstrate compliance in writing, not just in production output.