All Engines
Financial & Trend

PMPM Normalization Engine

Convert All Healthcare Costs to Per Member Per Month—Enable Apples-to-Apples Comparison Across Different Population Sizes

The Membership Fluctuation Problem

Absolute Cost Reporting

  • "Total claims: $12.5M" tells you nothing if membership changed from 950 to 1,200
  • Cannot trend costs when headcount fluctuates seasonally or due to M&A
  • Mid-month enrollments/terminations distort per-capita calculations
  • Cannot compare employers of different sizes (500 vs. 5,000 employees)

PMPM Normalization

  • Member-months denominator: exact time-weighted exposure calculation
  • Clean trending: $842 PMPM vs. $915 PMPM = +8.7% trend, regardless of headcount
  • Mid-month accuracy: member enrolled 15 days = 0.5 member-months
  • Universal comparability: 100-employee firm vs. Fortune 500, same PMPM basis

Member-Month Calculation Engine

python
# PMPM Normalization Framework def calculate_member_months(enrollment_data): """ Calculate exact member-months accounting for: - Mid-month enrollments/terminations - Coverage tier (EE, EE+Spouse, EE+Child, Family) - Part-time vs. full-time status """ member_months = 0 for enrollment in enrollment_data: # Days enrolled in each month for month in enrollment.coverage_periods: days_in_month = get_days_in_month(month) days_enrolled = enrollment.days_covered_in_month(month) # Fractional member-month fraction = days_enrolled / days_in_month # Coverage tier multiplier covered_lives = get_covered_lives(enrollment.tier) member_months += fraction * covered_lives return member_months def calculate_pmpm_costs(claims, enrollment): """ Convert absolute costs to PMPM """ total_claims = sum(claims.allowed_amount) total_member_months = calculate_member_months(enrollment) pmpm = total_claims / total_member_months return { 'total_claims': total_claims, 'member_months': total_member_months, 'pmpm': pmpm, 'annualized_pmpy': pmpm * 12 } # Example: Mid-Year Acquisition Impact # Q1 2024: 1,000 members, $2.85M claims # - Member-months: 3,000 (Jan-Mar) # - PMPM: $950 # # Q2 2024: 1,450 members, $3.95M claims (acquired 450 employees in April) # - Member-months: 4,200 (Apr-Jun, accounting for April mid-month start) # - PMPM: $941 # # Conclusion: PMPM actually DECREASED by 0.9% despite absolute # claims increasing 38% due to acquisition

Normalization Precision

Enrollment Tracking
Daily Granularity
Exact days-covered calculation for mid-month changes
Cost Components
All Separated
Medical, Rx, dental, vision PMPM tracked independently
Trending Accuracy
±0.5%
Membership fluctuation noise eliminated

Universal Cost Comparisons

M&A Impact Isolation

  • Pre-merger: 850 employees, $8.9M annual claims
  • Post-merger: 1,600 employees, $16.2M annual claims
  • Absolute costs up 82% (meaningless comparison)
  • PMPM: $871 pre-merger, $844 post-merger
  • Acquired population was actually 3% more efficient

Seasonal Workforce Variation

  • Retail employer: 2,200 FT in Q1, 3,400 FT+PT in Q4 (holiday hires)
  • Q1 claims: $5.2M, Q4 claims: $7.8M
  • PMPM: Q1 $788, Q4 $767 (3% improvement)
  • Without PMPM: looks like 50% cost increase
  • Seasonal hiring actually brought healthier, younger cohort

Peer Benchmarking

  • Company A: 450 employees, $4.8M claims = $889 PMPM
  • Company B: 5,500 employees, $58.2M claims = $883 PMPM
  • Company C: 12,000 employees, $118M claims = $820 PMPM
  • Apples-to-apples comparison regardless of size
  • Larger companies show economies of scale (8% lower PMPM)

Stop Comparing Apples to Oranges

Convert all costs to PMPM with exact member-month calculations. Trend cleanly regardless of headcount changes. Benchmark against any peer, any size.

Normalize to PMPM