wealthschemaresourcesarticlesLife-insurance illustrations under AG 49-A — what the engine has to enforce
Article

Life-insurance illustrations under AG 49-A — what the engine has to enforce

Cap, floor, multiplier, BIA bonus — the regulation is specific and the engine has to be specific too.

WealthSchema StaffInsurance & risk modelingMay 8, 20263 min read

Indexed universal life (IUL) illustrations have been a recurring source of regulatory friction since they emerged in the late 1990s. Carriers competing on illustrated policy values produced increasingly aggressive assumptions that did not reflect realistic long-run outcomes. The NAIC responded in 2015 with Actuarial Guideline 49 (AG 49), revised in 2020 (AG 49-A), and the result is a framework that constrains what carriers can illustrate. The framework has more teeth than most software acknowledges.

What AG 49-A actually constrains

AG 49 was originally aimed at the illustrated rate carriers could use for the indexed account. Carriers had been selecting illustration rates that reflected the upside of a cap-and-floor strategy without recognizing the reality that not every year's index return reaches the cap. AG 49 limited the illustrated rate to a benchmark indexed credited rate (BIA: Benchmark Index Account) computed by a specific methodology.

AG 49-A (2020) extended the constraint to the cap multiplier and persistency bonuses, which carriers had used to circumvent the original AG 49 cap. The current rule set:

 ElementAG 49-A constraint
Maximum illustrated rateBounded by the BIA — a 25-year geometric mean of the underlying index with the contract's cap, floor, and participation rate applied
MultipliersIllustrated impact of multipliers must be self-funded by the policy charges that underlie them — no 'free' multiplier illustration
Persistency bonusesSame self-funding requirement — bonuses can only be illustrated to the extent they're funded by policy charges
Loan ratesIllustrated loan arbitrage is constrained — the illustrated loan rate must be the contract's actual loan rate, not a marketing rate
Indexed loan illustrated rateCannot exceed the BIA-bounded illustrated rate plus 50 bps for fixed-loan carriers

The constraints are arithmetic but not trivial. A compliance engine has to compute the BIA from the contract's actual cap, floor, and participation rate, applied to a 25-year window of the underlying index's actual returns. This is more than a single field — it's a calculation requiring the index's 25-year history.

The BIA calculation

The benchmark indexed credited rate is the AG 49-A core. The procedure:

  1. Step 1
    Pull 25 years of underlying index history
    S&P 500 (most common), Russell 1000, Nasdaq-100, or other contract-specified index. Use closing values at the contract's anniversary date.
  2. Step 2
    Compute the year-by-year credited rate
    Per year: indexed return = max(floor, min(cap, raw_return × participation_rate)). Apply contract terms exactly.
  3. Step 3
    Compute the geometric mean
    GM = (Π (1 + credited_rate_i))^(1/25) − 1. This is the BIA, which is the maximum illustrated rate the carrier can use.
  4. Step 4
    Apply additional constraints
    Multipliers and bonuses must be net of their funding charges — show the gross multiplier impact and the gross funding cost.
  5. Step 5
    Validate against carrier's illustrated rate
    If the illustration uses a higher rate than the BIA, the illustration is non-compliant. Engine has to flag.

The 25-year window updates each year — not every year's BIA is the same. Carriers refresh BIA calculations periodically; engines validating illustrations have to use the BIA effective at the illustration date.

What carrier data the engine needs

A compliance engine needs structured data from the carrier or from the illustration software vendor:

Per-illustration data the engine needs

  • Underlying index identifier and historical values (25 years minimum)
  • Contract cap, floor, participation rate — per indexed account in the contract
  • Multipliers and persistency bonuses with their schedules and the corresponding funding charges
  • Indexed loan availability, loan rate, and loan-balance treatment
  • Policy charges (cost of insurance, M&E, riders, surrender charges)
  • Insured age, gender, smoker status, rating — drives mortality charges
  • Premium pattern (single, level, indexed, target, etc.)
  • Death benefit option (level, increasing, return of premium)

Carriers vary in how much of this they expose to third parties. Some publish their illustration software's data files publicly; some require commercial licensing; some keep it proprietary. The engineering ramp-up for an engine that handles N carriers is roughly linear in N — there is no universal IUL data format.

The validation gates a compliant engine has to run

Beyond the BIA constraint, AG 49-A requires several explicit numeric and disclosure validations:

  1. Gate 1
    Illustrated rate ≤ BIA
    The illustration's assumed annual indexed credited rate must not exceed the BIA. A carrier-supplied rate above BIA is non-compliant.
  2. Gate 2
    Self-funding of multipliers
    If the illustration includes a multiplier (e.g., 110% of indexed return), the multiplier must be funded by an explicit policy charge. The illustrated benefit minus the illustrated charge must net to zero on average.
  3. Gate 3
    Self-funding of bonuses
    Same logic for persistency bonuses. Free bonuses (no corresponding charge) are not illustratable.
  4. Gate 4
    Loan arbitrage cap
    Illustrated indexed loan rate cannot exceed BIA + 50 bps for fixed-loan carriers.
  5. Gate 5
    Disclosure language
    Required statements: that illustrated values are not guaranteed, that actual values may be lower, that the BIA is a benchmark not a forecast. Engine should validate disclosure presence.
  6. Gate 6
    Side-by-side guaranteed column
    AG 49-A requires illustrations to show guaranteed values alongside non-guaranteed. Engine should validate the guaranteed column is present and accurate.

Each gate is a yes/no validation. An illustration that fails any of them is non-compliant. A compliance engine should produce a per-gate output with citation to the AG 49-A section that's violated.

What goes wrong in practice

Illustration validation tools across carriers and intermediaries show recurring issues:

Stale BIA. The engine uses a BIA computed at integration time and doesn't update as the 25-year window rolls forward. Multi-year-old BIAs are wrong by enough to flag legitimate illustrations as non-compliant or pass non-compliant ones as legitimate.

Wrong index history. The engine pulls the index from a generic data source rather than the specific index the contract references. Some carriers use proprietary indexes (volatility-controlled, momentum-based) whose history isn't on Bloomberg.

Multiplier modeling. The engine treats the multiplier as a static factor rather than as a multiplier funded by a charge. Self-funding validation requires modeling both sides; engines that show only the multiplier without the charge produce illustrations that look better than they are.

Missing carrier-specific overrides. Some carriers have AG 49-A-compliant variants of their products with explicit guaranteed-value floors. The engine has to know which variant is being illustrated and apply the right BIA rules.

What this means for synthetic test data

A synthetic dataset for IUL illustration testing has to include:

  • 25 years of underlying index history (S&P 500, Russell 1000, others as needed)
  • Contract specifications spanning the cap × floor × participation rate space
  • Multiplier and bonus structures with corresponding charges
  • Indexed loan availability and loan rate variations
  • Insured profiles spanning age, gender, smoker, rating
  • Both AG 49-A-compliant and non-compliant illustration examples (so the engine can be tested on both)

The non-compliant examples are important — they're how engineers know the engine catches violations. A test corpus of only-compliant illustrations doesn't exercise the violation-detection code path that's the actual job of the validation engine.

Key takeaways

  • AG 49-A constrains illustrated rates, multipliers, bonuses, and loan arbitrage on IUL products. The constraints are arithmetic and engines have to compute them from carrier-specific contract terms.
  • The BIA (benchmark indexed credited rate) is a 25-year geometric mean of the underlying index with the contract's cap, floor, and participation rate applied. It updates yearly as the window rolls.
  • Multipliers and persistency bonuses must be self-funded by corresponding charges. 'Free' multipliers cannot be illustrated.
  • Six explicit validation gates: illustrated rate vs BIA, multiplier self-funding, bonus self-funding, loan arbitrage cap, disclosure language, side-by-side guaranteed column.
  • Carriers vary in how much illustration data they expose. Engines covering N carriers have N data integrations.
  • Test data needs both compliant and non-compliant illustrations. Validation engines that have only seen compliant data don't exercise their violation-detection paths.

Frequently asked questions

How does AG 49-A interact with state-specific illustration regulations?+
AG 49-A is an NAIC actuarial guideline; states adopt it (or modified forms) as part of their illustration regulations. Most states adopted AG 49-A by 2022 with some lag. Engines should track state-by-state adoption and any state-specific modifications. New York's Reg 187 has additional requirements layered on AG 49-A; California has specific disclosure requirements. The base AG 49-A engine plus state overlays is the architecture.
Are there parallel constraints for variable universal life or whole-life illustrations?+
Yes — Model Regulation 580 (NAIC's Life Insurance Illustrations Model Regulation) governs all illustrations. AG 49-A is the IUL-specific layer. Whole life and traditional UL have their own illustration assumptions (declared rates, dividend interest rates) constrained by Model Reg 580 and by carrier internal actuarial-soundness review. Engines that handle multiple product types need separate compliance modules per type.
What about the new Buffer Annuity / RILA illustrations?+
Registered Index-Linked Annuities are subject to FINRA / SEC oversight rather than NAIC, with a different illustration regime (FINRA Reg Notice 22-08 and the SEC's June 2024 final rule on RILA registration). The compliance posture is different and the engine has to know which regulatory regime applies — most carriers offer both IUL and RILA, sometimes alongside each other in client portfolios. A unified illustration engine has to handle both.
How important is per-carrier integration vs a generic engine?+
Carrier-specific. The BIA calculation is contract-specific, the multiplier mechanics are carrier-specific, and the indexed-loan terms are contract-specific. A generic engine that doesn't integrate with carrier data can do high-level compliance checks but can't validate the BIA against the actual contract terms. Most production validation engines are hybrid: generic compliance logic plus carrier-specific data integrations for the half-dozen carriers that produce 80% of policies.