This calculator helps estimate your Required Minimum Distribution (RMD) from an inherited IRA. Please consult a financial advisor for personalized advice.
Uniform Lifetime Table (for most beneficiaries)
Single Life Expectancy Table (for spouse beneficiaries who are sole beneficiaries)
Understanding Inherited IRA RMDs
When an individual inherits an Individual Retirement Arrangement (IRA), they often inherit the responsibility of taking Required Minimum Distributions (RMDs) from that account. These distributions are mandatory withdrawals that the IRS requires account holders to take annually to ensure that retirement funds are eventually taxed.
Who Needs to Take an Inherited IRA RMD?
Generally, beneficiaries who inherit a traditional IRA or a Roth IRA (though Roth IRAs typically don't have RMDs for the original owner, inherited Roth IRAs may have RMD rules for beneficiaries) must take RMDs. The rules can differ based on whether the beneficiary is the deceased owner's spouse, a minor child, disabled, or another eligible individual. This calculator focuses on the most common scenarios.
How is the Inherited IRA RMD Calculated?
The calculation for an inherited IRA RMD is straightforward but depends on a few key factors:
Account Balance: The value of the inherited IRA as of December 31st of the previous year.
Beneficiary's Age: The age of the beneficiary on December 31st of the current year.
Life Expectancy Factor: This is determined by IRS-published tables. The most common tables are:
Uniform Lifetime Table: Used by most beneficiaries, including non-spouse beneficiaries.
Single Life Expectancy Table: Used by a surviving spouse who is the sole beneficiary of the IRA and chooses to treat the inherited IRA as their own.
The formula is:
RMD = (Account Balance as of December 31st of Prior Year) / (Life Expectancy Factor)
IRS Life Expectancy Tables
The IRS provides specific tables to determine the life expectancy factor. These factors are updated periodically. For the purpose of this calculator, we use simplified representations of these tables. The factors generally increase with age, meaning the RMD amount decreases as the beneficiary gets older.
Example Calculation
Let's say:
The current account balance of the inherited IRA is $250,000 (as of December 31st of last year).
The beneficiary is 45 years old on December 31st of the current year.
The beneficiary is using the Uniform Lifetime Table.
According to the IRS Uniform Lifetime Table (simplified for this example), the life expectancy factor for a 45-year-old is approximately 39.1.
RMD = $250,000 / 39.1 = $6,393.86
Therefore, the estimated RMD for this beneficiary for the current year would be approximately $6,393.86.
Important Considerations
Distribution Year: The RMD is calculated for the current year based on the previous year's ending balance and the current year's age.
Spousal Beneficiaries: A surviving spouse who is the sole beneficiary may have different options, including rolling the IRA into their own and using their own life expectancy.
Non-Spouse Beneficiaries: For non-spouse beneficiaries, the rules can be complex, especially regarding the "look-through" period and the five-year rule vs. the RMD rule. This calculator assumes the RMD rule is in effect.
IRS Rules: Tax laws and IRS regulations can change. Always refer to the latest IRS publications (like Publication 590-B) or consult with a qualified tax professional or financial advisor for accurate and personalized guidance.
Roth IRAs: While the original owner of a Roth IRA is not subject to RMDs, beneficiaries inheriting a Roth IRA generally are. The calculation method is similar, but the distributions are typically tax-free.
function getLifeExpectancyFactor(age, tableType) {
// Simplified factors based on IRS tables.
// These are approximations and may not reflect the exact current IRS tables.
// For precise calculations, always refer to the official IRS publications.
var factors = {
"uniform_life": {
20: 56.7, 21: 55.8, 22: 54.9, 23: 54.0, 24: 53.1, 25: 52.2, 26: 51.3, 27: 50.4, 28: 49.5, 29: 48.6,
30: 47.7, 31: 46.8, 32: 45.9, 33: 45.0, 34: 44.1, 35: 43.2, 36: 42.3, 37: 41.4, 38: 40.5, 39: 39.6,
40: 38.7, 41: 37.8, 42: 36.9, 43: 36.1, 44: 35.2, 45: 34.3, 46: 33.5, 47: 32.6, 48: 31.8, 49: 30.9,
50: 30.1, 51: 29.2, 52: 28.4, 53: 27.6, 54: 26.7, 55: 25.9, 56: 25.1, 57: 24.3, 58: 23.5, 59: 22.7,
60: 21.9, 61: 21.1, 62: 20.3, 63: 19.6, 64: 18.8, 65: 18.1, 66: 17.4, 67: 16.7, 68: 15.9, 69: 15.2,
70: 14.5, 71: 13.8, 72: 13.1, 73: 12.5, 74: 11.8, 75: 11.2, 76: 10.5, 77: 9.9, 78: 9.3, 79: 8.7,
80: 8.1, 81: 7.6, 82: 7.0, 83: 6.5, 84: 6.0, 85: 5.5, 86: 5.1, 87: 4.6, 88: 4.2, 89: 3.8,
90: 3.4, 91: 3.1, 92: 2.7, 93: 2.4, 94: 2.1, 95: 1.9, 96: 1.6, 97: 1.4, 98: 1.1, 99: 0.9, 100: 0.7,
101: 0.5, 102: 0.3, 103: 0.2, 104: 0.1
},
"single_life": {
20: 61.4, 21: 60.5, 22: 59.6, 23: 58.7, 24: 57.8, 25: 56.9, 26: 56.0, 27: 55.1, 28: 54.2, 29: 53.3,
30: 52.4, 31: 51.5, 32: 50.6, 33: 49.7, 34: 48.8, 35: 47.9, 36: 47.0, 37: 46.1, 38: 45.2, 39: 44.3,
40: 43.4, 41: 42.5, 42: 41.6, 43: 40.7, 44: 39.8, 45: 38.9, 46: 38.0, 47: 37.1, 48: 36.2, 49: 35.3,
50: 34.5, 51: 33.6, 52: 32.8, 53: 31.9, 54: 31.1, 55: 30.3, 56: 29.4, 57: 28.6, 58: 27.8, 59: 27.0,
60: 26.2, 61: 25.3, 62: 24.5, 63: 23.7, 64: 22.9, 65: 22.1, 66: 21.3, 67: 20.5, 68: 19.8, 69: 19.0,
70: 18.2, 71: 17.5, 72: 16.7, 73: 16.0, 74: 15.3, 75: 14.6, 76: 13.9, 77: 13.2, 78: 12.5, 79: 11.9,
80: 11.2, 81: 10.6, 82: 10.0, 83: 9.4, 84: 8.8, 85: 8.2, 86: 7.7, 87: 7.1, 88: 6.6, 89: 6.1,
90: 5.6, 91: 5.2, 92: 4.7, 93: 4.3, 94: 3.9, 95: 3.5, 96: 3.1, 97: 2.8, 98: 2.4, 99: 2.1,
100: 1.8, 101: 1.5, 102: 1.3, 103: 1.0, 104: 0.8, 105: 0.6, 106: 0.4, 107: 0.3, 108: 0.2, 109: 0.1
}
};
var table = factors[tableType];
if (!table) {
return null; // Invalid table type
}
// Find the factor for the given age. If age is not in table, use the closest lower age's factor.
var factor = table[age];
if (factor === undefined) {
var closestAge = Math.max(…Object.keys(table).filter(key => parseInt(key) <= age).map(Number));
factor = table[closestAge];
}
return factor;
}
function calculateRmd() {
var balance = parseFloat(document.getElementById("accountBalance").value);
var age = parseInt(document.getElementById("beneficiaryAge").value);
var tableType = document.getElementById("lifeExpectancyTable").value;
var resultDiv = document.getElementById("result");
resultDiv.innerHTML = ''; // Clear previous results
if (isNaN(balance) || balance < 0) {
resultDiv.innerHTML = 'Please enter a valid account balance.';
return;
}
if (isNaN(age) || age < 0) {
resultDiv.innerHTML = 'Please enter a valid age.';
return;
}
if (age > 110) { // A reasonable upper limit for age in these tables
resultDiv.innerHTML = 'Age seems too high. Please verify.';
return;
}
var factor = getLifeExpectancyFactor(age, tableType);
if (factor === null) {
resultDiv.innerHTML = 'Error: Invalid life expectancy table selected.';
return;
}
if (factor === 0) {
resultDiv.innerHTML = 'Life expectancy factor is zero, RMD cannot be calculated with this factor.';
return;
}
var rmd = balance / factor;
// Format the result to two decimal places for currency
var formattedRmd = rmd.toFixed(2);
resultDiv.innerHTML = 'Your estimated Inherited IRA RMD is: $' + formattedRmd + '';
}