FEGLI Calculator: Estimate Your Federal Life Insurance Coverage and Costs
The Federal Employees' Group Life Insurance (FEGLI) program provides group term life insurance to federal employees and retirees. It's one of the largest group life insurance programs in the world, offering various coverage options to meet diverse needs. Understanding your FEGLI benefits and their associated costs is crucial for financial planning.
What is FEGLI?
FEGLI consists of Basic Life Insurance and three options: Option A (Standard), Option B (Additional), and Option C (Family). Most federal employees are eligible for FEGLI, and coverage generally continues into retirement, though costs and coverage amounts may change.
- Basic Life Insurance: This is the foundation of FEGLI. Your Basic Insurance Amount (BIA) is your annual salary rounded up to the next even $1,000, plus $2,000. For example, if your salary is $48,100, your BIA is $51,000 ($49,000 rounded up to $50,000, plus $2,000). The minimum BIA is $10,000. The government pays one-third of the cost for Basic coverage, and you pay the remaining two-thirds.
- Option A – Standard: Provides an additional $10,000 of coverage. The cost for Option A is based solely on your age.
- Option B – Additional: Allows you to elect coverage in multiples of your annual salary (1, 2, 3, 4, or 5 times your salary). Your salary is first rounded up to the next even $1,000. For example, if your salary is $48,100, it's rounded to $49,000. If you choose 2 multiples, your Option B coverage would be $98,000. The cost for Option B is based on your age and the number of multiples you choose.
- Option C – Family: Provides coverage for your eligible family members (spouse and dependent children). Each multiple of Option C coverage provides $5,000 for your spouse and $2,500 for each eligible child. You can elect 1, 2, 3, 4, or 5 multiples. The cost for Option C is based on your age and the number of multiples you choose, regardless of the number of family members covered.
This calculator helps you estimate your potential FEGLI coverage amounts and the bi-weekly and annual premiums based on your salary, age, and chosen options. Please note that these are estimates, and actual costs may vary slightly.
Your Information
Select Your FEGLI Options
Estimated FEGLI Coverage and Costs
Disclaimer: This calculator provides estimates based on current FEGLI premium rates (as of 2024) and general rules. Actual coverage amounts and costs may vary based on specific circumstances, official OPM calculations, and future rate changes. This is for informational purposes only and should not be considered financial advice.
// FEGLI Premium Rate Tables (bi-weekly, per $1,000 coverage unless specified) // These rates are illustrative and based on publicly available OPM FEGLI rates as of 2024. // Always verify with official OPM resources for the most current and accurate information. var basicRates = { 'under35′: 0.15, '35-39′: 0.17, '40-44′: 0.23, '45-49′: 0.30, '50-54′: 0.47, '55-59′: 0.70, '60+': 0.90 }; var optionARates = { // Cost for the full $10,000 coverage 'under35′: 0.60, '35-39′: 0.70, '40-44′: 0.90, '45-49′: 1.30, '50-54′: 2.00, '55-59′: 3.00, '60+': 4.00 }; var optionBRates = { // Per $1,000 of coverage 'under35′: 0.03, '35-39′: 0.04, '40-44′: 0.06, '45-49′: 0.10, '50-54′: 0.18, '55-59′: 0.30, '60+': 0.40 }; var optionCRates = { // Per multiple 'under35′: 0.26, '35-39′: 0.30, '40-44′: 0.39, '45-49′: 0.54, '50-54′: 0.80, '55-59′: 1.10, '60+': 1.40 }; function getAgeBand(age) { if (age = 35 && age = 40 && age = 45 && age = 50 && age = 55 && age <= 59) return '55-59'; return '60+'; } function calculateFEGLI() { var annualSalary = parseFloat(document.getElementById('annualSalary').value); var employeeAge = parseInt(document.getElementById('employeeAge').value); var hasBasic = document.getElementById('hasBasic').checked; var hasOptionA = document.getElementById('hasOptionA').checked; var optionBMultiples = parseInt(document.getElementById('optionBMultiples').value); var optionCMultiples = parseInt(document.getElementById('optionCMultiples').value); // Input validation if (isNaN(annualSalary) || annualSalary <= 0) { alert('Please enter a valid annual salary (e.g., 60000).'); return; } if (isNaN(employeeAge) || employeeAge 120) { alert('Please enter a valid age between 18 and 120.'); return; } var ageBand = getAgeBand(employeeAge); var totalEmployeeCoverage = 0; var totalBiweeklyCost = 0; // Basic Life Insurance var basicCoverage = 0; var basicBiweeklyCost = 0; if (hasBasic) { // BIA is salary rounded up to next $1,000, plus $2,000. Minimum $10,000. basicCoverage = Math.ceil(annualSalary / 1000) * 1000 + 2000; if (basicCoverage 0) { // Salary rounded up to next $1,000 for Option B calculation var roundedSalaryForOptionB = Math.ceil(annualSalary / 1000) * 1000; optionBCoverage = roundedSalaryForOptionB * optionBMultiples; optionBBiweeklyCost = (optionBCoverage / 1000) * optionBRates[ageBand]; totalEmployeeCoverage += optionBCoverage; totalBiweeklyCost += optionBBiweeklyCost; } document.getElementById('optionBCoverageResult').innerHTML = optionBMultiples > 0 ? '$' + optionBCoverage.toLocaleString() : 'Not selected'; document.getElementById('optionBCostResult').innerHTML = optionBMultiples > 0 ? '$' + optionBBiweeklyCost.toFixed(2) : 'N/A'; // Option C – Family var optionCSpouseCoverage = 0; var optionCChildCoverage = 0; var optionCBiweeklyCost = 0; if (optionCMultiples > 0) { optionCSpouseCoverage = 5000 * optionCMultiples; optionCChildCoverage = 2500 * optionCMultiples; optionCBiweeklyCost = optionCMultiples * optionCRates[ageBand]; totalBiweeklyCost += optionCBiweeklyCost; } document.getElementById('optionCSpouseCoverageResult').innerHTML = optionCMultiples > 0 ? '$' + optionCSpouseCoverage.toLocaleString() : 'N/A'; document.getElementById('optionCChildCoverageResult').innerHTML = optionCMultiples > 0 ? '$' + optionCChildCoverage.toLocaleString() + ' (each child)' : 'N/A'; document.getElementById('optionCCostResult').innerHTML = optionCMultiples > 0 ? '$' + optionCBiweeklyCost.toFixed(2) : 'N/A'; // Total Results var totalAnnualCost = totalBiweeklyCost * 26; // 26 bi-weekly pay periods in a year document.getElementById('totalCoverageResult').innerHTML = '$' + totalEmployeeCoverage.toLocaleString(); document.getElementById('totalBiweeklyCostResult').innerHTML = '$' + totalBiweeklyCost.toFixed(2); document.getElementById('totalAnnualCostResult').innerHTML = '$' + totalAnnualCost.toFixed(2); } // Run calculation on page load with default values window.onload = calculateFEGLI;