Military Retirement Calculator

Military Retirement Pay Calculator

High-3 (Legacy – 2.5% Multiplier) Blended Retirement System (BRS – 2.0% Multiplier) Legacy High-3 applies to those who joined before Jan 1, 2018. BRS applies to those joining after or who opted in.
This is the average of your highest 36 months of basic pay, not total compensation.

Estimated Retirement Pension

Monthly Benefit:
$0.00
Annual Total:
$0.00
Multiplier Applied:
0%

*Note: This calculation does not include deductions for SBP (Survivor Benefit Plan), taxes, or healthcare premiums.


Understanding Your Military Retirement Pay

Planning for life after the uniform requires a clear understanding of the Department of Defense pension systems. Depending on when you entered service, your retirement calculation will fall under either the Legacy High-3 system or the Blended Retirement System (BRS).

High-3 Legacy Retirement System

For those who entered active duty between September 8, 1980, and December 31, 2017 (and did not opt into BRS), the "High-3" system applies. This is a traditional defined-benefit pension.

  • The Formula: 2.5% x Years of Service x High-3 Average Basic Pay.
  • Example: A member retiring after 20 years receives 50% of their average basic pay (2.5% x 20 = 50%).
  • Example: A member retiring after 30 years receives 75% of their average basic pay.

Blended Retirement System (BRS)

The BRS was introduced for members joining on or after January 1, 2018. It combines a slightly smaller pension with matching contributions to the Thrift Savings Plan (TSP).

  • The Formula: 2.0% x Years of Service x High-3 Average Basic Pay.
  • The Difference: The multiplier is reduced from 2.5% to 2.0%. This means at 20 years, the pension is 40% of basic pay rather than 50%.
  • Additional Benefits: Government matching of up to 5% in the TSP and a mid-career "Continuation Pay" bonus.

What is "High-3 Average Basic Pay"?

The "High-3" refers to the average of your highest 36 months of basic pay. Usually, this is the last three years of your career. It is important to note that this only includes basic pay. It does not include BAH (Basic Allowance for Housing), BAS (Basic Allowance for Subsistence), or special pays like sea pay or hazard pay.

Factors That Can Change Your Calculation

While the basic formula is straightforward, several factors can impact your final check:

  1. Cost of Living Adjustments (COLA): Military pensions are adjusted annually for inflation.
  2. Survivor Benefit Plan (SBP): Choosing to provide a portion of your pension to a spouse after your death usually costs 6.5% of your monthly benefit.
  3. VA Disability Offset: In some cases, VA disability compensation may reduce your retirement pay dollar-for-dollar, though many retirees qualify for Concurrent Receipt (CRDP).
  4. Taxes: Military retirement is federally taxable. Some states exempt military pay from state taxes, while others do not.
function calculateMilitaryRetirement() { var system = document.getElementById('retSystem').value; var years = parseFloat(document.getElementById('serviceYears').value) || 0; var months = parseFloat(document.getElementById('serviceMonths').value) || 0; var high3 = parseFloat(document.getElementById('avgBasicPay').value) || 0; if (high3 11) { alert("Months must be between 0 and 11."); return; } // Determine Multiplier var baseMultiplier = (system === 'high3') ? 0.025 : 0.02; // Total fractional years var totalYears = years + (months / 12); // Calculate total percentage of basic pay var totalPercentage = baseMultiplier * totalYears; // Monthly Pension var monthlyPay = high3 * totalPercentage; var annualPay = monthlyPay * 12; // Display Results document.getElementById('monthlyPay').innerHTML = '$' + monthlyPay.toLocaleString(undefined, {minimumFractionDigits: 2, maximumFractionDigits: 2}); document.getElementById('annualPay').innerHTML = '$' + annualPay.toLocaleString(undefined, {minimumFractionDigits: 2, maximumFractionDigits: 2}); document.getElementById('multiplierVal').innerHTML = (totalPercentage * 100).toFixed(1) + '% of Basic Pay'; document.getElementById('retResult').style.display = 'block'; }

Leave a Comment