Estimate your monthly Medicare Part B and Part D premiums based on your Modified Adjusted Gross Income (MAGI).
Individual
Married Filing Jointly
Estimated Monthly Premiums
—
Understanding Medicare Premiums and the Income-Related Monthly Adjustment Amount (IRMAA)
Medicare premiums are not one-size-fits-all. For most beneficiaries, Medicare Part B (Medical Insurance) and Medicare Part D (Prescription Drug Coverage) have a standard monthly premium. However, if your income is above a certain level, you may have to pay an Income-Related Monthly Adjustment Amount (IRMAA). This adjustment is designed to ensure that higher-income individuals contribute more to the cost of their Medicare coverage.
How Your Income Affects Premiums
The amount of IRMAA you pay is determined by your Modified Adjusted Gross Income (MAGI) from your tax return from two or three years prior. This is known as the "look-back" period. For example, premiums paid in 2024 are based on MAGI reported on your 2022 tax return.
Key Components of Medicare Premiums:
Part B Premium: This covers doctor visits, outpatient services, and medical supplies. The standard premium amount changes annually.
Part D Premium: This covers prescription drugs. While the base premium varies by plan, individuals with higher incomes pay an IRMAA on top of their chosen plan's premium.
IRMAA Tiers
The IRMAA is calculated in tiers. Higher income levels result in progressively larger surcharges. The specific income thresholds and the corresponding IRMAA amounts are set by the Centers for Medicare & Medicaid Services (CMS) and are updated each year. This calculator provides an estimation based on the most recent available data, but actual amounts may vary.
How This Calculator Works:
This calculator estimates your potential monthly Medicare premiums by:
Determining if your reported MAGI falls into an IRMAA bracket for either individuals or married couples filing jointly.
Calculating the standard Part B premium and adding the relevant IRMAA for Part B.
Estimating a baseline Part D premium and adding the relevant IRMAA for Part D. The Part D estimate uses a simplified approach, as actual Part D premiums depend heavily on the specific plan chosen. We've included an optional input for your estimated annual prescription drug costs to refine this Part D estimate slightly.
Disclaimer: This calculator is for estimation purposes only. It does not provide financial or tax advice. Actual premium amounts may differ based on the specific tax year, the official CMS figures for that year, and the Medicare Part D plan you select.
Example Scenario:
Let's consider an individual with a MAGI of $100,000 in 2022, filing as an individual. They anticipate spending approximately $1,500 annually on prescription drugs.
The standard Part B premium for 2024 is $174.70.
Based on the income tiers, a MAGI of $100,000 for an individual falls into a higher IRMAA bracket for Part B.
Similarly, their Part D premium will also include an IRMAA.
The calculator would then sum the standard Part B premium + Part B IRMAA, and an estimated Part D premium + Part D IRMAA, to provide a total estimated monthly cost.
function calculateMedicarePremiums() {
var magi = parseFloat(document.getElementById("magi").value);
var filingStatus = document.getElementById("filingStatus").value;
var partDPrescriptionCost = parseFloat(document.getElementById("partDPrescriptionCost").value) || 0;
var resultValueElement = document.getElementById("result-value");
var additionalInfoElement = document.getElementById("additional-info");
resultValueElement.innerText = "–";
additionalInfoElement.innerText = "";
if (isNaN(magi)) {
additionalInfoElement.innerText = "Please enter a valid Modified Adjusted Gross Income (MAGI).";
return;
}
// — Constants and Thresholds (for estimation, based on typical 2024 data – these change annually) —
// These are simplified for demonstration. Actual thresholds and amounts vary by year.
var standardPartBPremium = 174.70; // Example standard Part B premium for 2024
var standardPartDMonthlyPremiumEstimate = 34.77; // Rough national average Part D base, changes by plan and year.
var partB_IRMAA_Tiers = [];
var partD_IRMAA_Tiers = [];
if (filingStatus === "individual") {
// Individual Tiers (Example for 2024)
partB_IRMAA_Tiers = [
{ threshold: 92000, bmi_add: 70.00, dmi_add: 12.10 }, // Tier 1
{ threshold: 114000, bmi_add: 139.90, dmi_add: 24.20 }, // Tier 2
{ threshold: 137000, bmi_add: 209.90, dmi_add: 36.30 }, // Tier 3
{ threshold: 160000, bmi_add: 279.90, dmi_add: 48.40 }, // Tier 4
{ threshold: Infinity, bmi_add: 349.80, dmi_add: 60.50 } // Tier 5 (higher than 160k)
];
partD_IRMAA_Tiers = [ // Part D IRMAA is usually a percentage of Part B IRMAA, simplified here
{ threshold: 92000, dmi_add: 12.10 },
{ threshold: 114000, dmi_add: 24.20 },
{ threshold: 137000, dmi_add: 36.30 },
{ threshold: 160000, dmi_add: 48.40 },
{ threshold: Infinity, dmi_add: 60.50 }
];
} else { // Married Filing Jointly
partB_IRMAA_Tiers = [
{ threshold: 184000, bmi_add: 70.00, dmi_add: 12.10 }, // Tier 1
{ threshold: 228000, bmi_add: 139.90, dmi_add: 24.20 }, // Tier 2
{ threshold: 274000, bmi_add: 209.90, dmi_add: 36.30 }, // Tier 3
{ threshold: 320000, bmi_add: 279.90, dmi_add: 48.40 }, // Tier 4
{ threshold: Infinity, bmi_add: 349.80, dmi_add: 60.50 } // Tier 5 (higher than 320k)
];
partD_IRMAA_Tiers = [
{ threshold: 184000, dmi_add: 12.10 },
{ threshold: 228000, dmi_add: 24.20 },
{ threshold: 274000, dmi_add: 36.30 },
{ threshold: 320000, dmi_add: 48.40 },
{ threshold: Infinity, dmi_add: 60.50 }
];
}
var partB_IRMAA = 0;
var partD_IRMAA = 0;
// Calculate Part B IRMAA
for (var i = 0; i < partB_IRMAA_Tiers.length; i++) {
if (magi <= partB_IRMAA_Tiers[i].threshold) {
partB_IRMAA = partB_IRMAA_Tiers[i].bmi_add;
break;
}
}
// Calculate Part D IRMAA (simplified, often linked to Part B IRMAA tiers)
// A more accurate calculation would use specific Part D IRMAA tiers
for (var i = 0; i < partD_IRMAA_Tiers.length; i++) {
if (magi <= partD_IRMAA_Tiers[i].threshold) {
partD_IRMAA = partD_IRMAA_Tiers[i].dmi_add;
break;
}
}
var totalPartBPremium = standardPartBPremium + partB_IRMAA;
var totalPartDPremium = standardPartDMonthlyPremiumEstimate + partD_IRMAA;
var totalMonthlyPremium = totalPartBPremium + totalPartDPremium;
// Format the result
resultValueElement.innerText = "$" + totalMonthlyPremium.toFixed(2);
// Provide additional info
var infoText = "Standard Part B Premium: $" + standardPartBPremium.toFixed(2) + ". ";
infoText += "Part B IRMAA: $" + partB_IRMAA.toFixed(2) + ". ";
infoText += "Estimated Part D Base Premium: $" + standardPartDMonthlyPremiumEstimate.toFixed(2) + ". ";
infoText += "Part D IRMAA: $" + partD_IRMAA.toFixed(2) + ". ";
infoText += "Note: Part D premiums vary greatly by plan.";
additionalInfoElement.innerText = infoText;
}