Non-Spouse Inherited IRA RMD Calculator
Use this calculator to estimate your Required Minimum Distribution (RMD) for a non-spouse inherited IRA, considering the 10-year rule under the SECURE Act. This calculator assumes you are a designated beneficiary subject to the 10-year distribution rule.
Understanding Non-Spouse Inherited IRA RMDs
The rules for inherited IRAs, especially for non-spouse beneficiaries, underwent significant changes with the SECURE Act of 2019. For most non-spouse beneficiaries, the primary rule is the "10-Year Rule."
The 10-Year Rule Explained
Under the 10-Year Rule, the entire inherited IRA balance must be distributed by December 31st of the 10th year following the original owner's death. However, there's a critical distinction based on whether the original IRA owner had already begun taking their own RMDs:
- Owner Died BEFORE Required Beginning Date (RBD): If the original IRA owner died before they were required to start taking their own RMDs (generally April 1 of the year following the year they turn 73, or 70.5 for those born before July 1, 1949), then the non-spouse beneficiary is generally not required to take RMDs in years 1 through 9. The entire remaining balance must simply be withdrawn by the end of the 10th year after the owner's death.
- Owner Died ON or AFTER Required Beginning Date (RBD): If the original IRA owner died on or after their RBD (meaning they were already taking RMDs), then the non-spouse beneficiary IS required to take RMDs in years 1 through 9. These RMDs are calculated based on the beneficiary's single life expectancy. The remaining balance must then be fully distributed by the end of the 10th year after the owner's death.
This calculator helps you determine your RMD for the current year based on these rules.
How the Calculator Works
- IRA Balance (as of Dec 31 of prior year): This is the fair market value of the inherited IRA at the end of the year immediately preceding the RMD year. This is the balance used to calculate the current year's RMD.
- Your Age (as of Dec 31 of current RMD year): Your age in the year for which the RMD is being calculated. This is used to find your life expectancy factor from the IRS Single Life Expectancy Table.
- Year of Original Owner's Death: The calendar year in which the original IRA owner passed away. This helps determine which year of the 10-year period you are in.
- Current RMD Year: The calendar year for which you want to calculate the RMD.
- Was the original IRA owner taking RMDs at the time of their death?: This crucial input determines whether you need to take RMDs in years 1-9 or only in year 10.
Important Considerations
- Eligible Designated Beneficiaries: Certain beneficiaries (e.g., surviving spouses, minor children of the deceased, disabled or chronically ill individuals, or individuals not more than 10 years younger than the deceased) may be exempt from the 10-year rule or have different distribution options. This calculator is for standard non-spouse designated beneficiaries subject to the 10-year rule.
- Penalties: Failing to take a required RMD can result in a significant penalty, typically 25% of the amount not withdrawn (reduced to 10% if corrected promptly).
- Tax Implications: RMDs are generally taxable as ordinary income. Consult a tax professional for personalized advice.
- IRS Tables: The life expectancy factors used in this calculator are based on the IRS Single Life Expectancy Table (Table I from Appendix B of IRS Publication 590-B).
Disclaimer: This calculator provides estimates based on current IRS rules for non-spouse inherited IRAs and is for informational purposes only. It is not tax or financial advice. You should consult with a qualified financial advisor or tax professional for personalized guidance regarding your specific situation.
.rmd-calculator-container {
font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
max-width: 700px;
margin: 20px auto;
padding: 25px;
background-color: #f9f9f9;
border-radius: 10px;
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
border: 1px solid #e0e0e0;
}
.rmd-calculator-container h2 {
color: #2c3e50;
text-align: center;
margin-bottom: 25px;
font-size: 28px;
}
.rmd-calculator-container h3 {
color: #34495e;
margin-top: 30px;
margin-bottom: 15px;
font-size: 22px;
}
.rmd-calculator-container p {
color: #555;
line-height: 1.6;
margin-bottom: 15px;
}
.rmd-calculator-form .form-group {
margin-bottom: 18px;
}
.rmd-calculator-form label {
display: block;
margin-bottom: 8px;
font-weight: bold;
color: #333;
font-size: 15px;
}
.rmd-calculator-form input[type="number"],
.rmd-calculator-form select {
width: calc(100% – 22px);
padding: 12px;
border: 1px solid #ccc;
border-radius: 6px;
font-size: 16px;
box-sizing: border-box;
transition: border-color 0.3s ease;
}
.rmd-calculator-form input[type="number"]:focus,
.rmd-calculator-form select:focus {
border-color: #007bff;
outline: none;
box-shadow: 0 0 5px rgba(0, 123, 255, 0.3);
}
.rmd-calculator-form button {
display: block;
width: 100%;
padding: 14px;
background-color: #28a745;
color: white;
border: none;
border-radius: 6px;
font-size: 18px;
font-weight: bold;
cursor: pointer;
transition: background-color 0.3s ease, transform 0.2s ease;
margin-top: 25px;
}
.rmd-calculator-form button:hover {
background-color: #218838;
transform: translateY(-1px);
}
.calculator-result {
margin-top: 30px;
padding: 20px;
background-color: #e9f7ef;
border: 1px solid #d4edda;
border-radius: 8px;
font-size: 18px;
font-weight: bold;
color: #155724;
text-align: center;
word-wrap: break-word;
}
.calculator-result.error {
background-color: #f8d7da;
border-color: #f5c6cb;
color: #721c24;
}
.rmd-calculator-container ul {
list-style-type: disc;
margin-left: 20px;
color: #555;
margin-bottom: 15px;
}
.rmd-calculator-container ol {
list-style-type: decimal;
margin-left: 20px;
color: #555;
margin-bottom: 15px;
}
.rmd-calculator-container li {
margin-bottom: 8px;
line-height: 1.5;
}
var singleLifeExpectancyTable = {
1: 81.6, 2: 80.6, 3: 79.6, 4: 78.6, 5: 77.6, 6: 76.6, 7: 75.6, 8: 74.6, 9: 73.6, 10: 72.6,
11: 71.6, 12: 70.6, 13: 69.6, 14: 68.6, 15: 67.6, 16: 66.6, 17: 65.6, 18: 64.6, 19: 63.8, 20: 63.0,
21: 62.1, 22: 61.1, 23: 60.1, 24: 59.1, 25: 58.2, 26: 57.2, 27: 56.2, 28: 55.3, 29: 54.3, 30: 53.3,
31: 52.4, 32: 51.4, 33: 50.4, 34: 49.5, 35: 48.5, 36: 47.5, 37: 46.6, 38: 45.6, 39: 44.7, 40: 43.7,
41: 42.8, 42: 41.8, 43: 40.9, 44: 39.9, 45: 39.0, 46: 38.0, 47: 37.1, 48: 36.2, 49: 35.2, 50: 34.3,
51: 33.4, 52: 32.5, 53: 31.6, 54: 30.7, 55: 29.8, 56: 28.9, 57: 28.0, 58: 27.1, 59: 26.3, 60: 25.4,
61: 24.5, 62: 23.7, 63: 22.8, 64: 22.0, 65: 21.2, 66: 20.4, 67: 19.6, 68: 18.8, 69: 18.0, 70: 17.2,
71: 16.4, 72: 15.6, 73: 14.9, 74: 14.2, 75: 13.4, 76: 12.7, 77: 12.0, 78: 11.4, 79: 10.7, 80: 10.1,
81: 9.5, 82: 8.9, 83: 8.4, 84: 7.8, 85: 7.3, 86: 6.8, 87: 6.4, 88: 5.9, 89: 5.5, 90: 5.1,
91: 4.7, 92: 4.4, 93: 4.1, 94: 3.8, 95: 3.5, 96: 3.3, 97: 3.0, 98: 2.8, 99: 2.6, 100: 2.4,
101: 2.2, 102: 2.1, 103: 1.9, 104: 1.8, 105: 1.7, 106: 1.6, 107: 1.5, 108: 1.4, 109: 1.3, 110: 1.2,
111: 1.2, 112: 1.1, 113: 1.0, 114: 1.0, 115: 0.9, 116: 0.9, 117: 0.8, 118: 0.8, 119: 0.7, 120: 0.7,
121: 0.6, 122: 0.6, 123: 0.5, 124: 0.5, 125: 0.4, 126: 0.4, 127: 0.3, 128: 0.3, 129: 0.3, 130: 0.2
};
function calculateRMD() {
var iraBalanceInput = document.getElementById("iraBalance").value;
var beneficiaryAgeInput = document.getElementById("beneficiaryAge").value;
var yearOfDeathInput = document.getElementById("yearOfDeath").value;
var currentRMDYearInput = document.getElementById("currentRMDYear").value;
var ownerTakingRMDs = document.getElementById("ownerTakingRMDs").value;
var resultDiv = document.getElementById("rmdResult");
resultDiv.className = "calculator-result"; // Reset class
// Input validation
if (iraBalanceInput === "" || beneficiaryAgeInput === "" || yearOfDeathInput === "" || currentRMDYearInput === "" || ownerTakingRMDs === "") {
resultDiv.innerHTML = "Please fill in all fields.";
resultDiv.classList.add("error");
return;
}
var iraBalance = parseFloat(iraBalanceInput);
var beneficiaryAge = parseInt(beneficiaryAgeInput);
var yearOfDeath = parseInt(yearOfDeathInput);
var currentRMDYear = parseInt(currentRMDYearInput);
if (isNaN(iraBalance) || iraBalance < 0) {
resultDiv.innerHTML = "Please enter a valid IRA Balance (non-negative number).";
resultDiv.classList.add("error");
return;
}
if (isNaN(beneficiaryAge) || beneficiaryAge 130) {
resultDiv.innerHTML = "Please enter a valid Beneficiary Age (between 1 and 130).";
resultDiv.classList.add("error");
return;
}
if (isNaN(yearOfDeath) || yearOfDeath 2100) {
resultDiv.innerHTML = "Please enter a valid Year of Owner's Death.";
resultDiv.classList.add("error");
return;
}
if (isNaN(currentRMDYear) || currentRMDYear 2100) {
resultDiv.innerHTML = "Please enter a valid Current RMD Year.";
resultDiv.classList.add("error");
return;
}
if (currentRMDYear 10) {
message = "The 10-year distribution period has passed. The IRA should have been fully distributed by the end of year " + (yearOfDeath + 10) + ". Please consult a tax professional.";
resultDiv.innerHTML = message;
resultDiv.classList.add("error");
return;
}
if (ownerTakingRMDs === "no") {
// Owner died BEFORE RBD – no RMDs in years 1-9, full distribution by year 10
if (yearsSinceDeath < 10) {
rmdAmount = 0;
message = "No RMD is required for the current year (" + currentRMDYear + "). The entire inherited IRA balance must be distributed by December 31st of " + (yearOfDeath + 10) + " (Year 10).";
} else if (yearsSinceDeath === 10) {
rmdAmount = iraBalance;
message = "This is Year 10 of the distribution period. The entire remaining IRA balance of $" + iraBalance.toLocaleString('en-US', { minimumFractionDigits: 2, maximumFractionDigits: 2 }) + " must be distributed by December 31st of " + currentRMDYear + ".";
}
} else if (ownerTakingRMDs === "yes") {
// Owner died ON or AFTER RBD – RMDs required in years 1-9, full distribution by year 10
if (yearsSinceDeath < 10) {
var lifeExpectancyFactor = singleLifeExpectancyTable[beneficiaryAge];
if (lifeExpectancyFactor === undefined) {
resultDiv.innerHTML = "Life expectancy factor not found for age " + beneficiaryAge + ". Please consult IRS Publication 590-B for the full table.";
resultDiv.classList.add("error");
return;
}
rmdAmount = iraBalance / lifeExpectancyFactor;
message = "Your estimated RMD for " + currentRMDYear + " (Year " + yearsSinceDeath + " of 10) is
$" + rmdAmount.toLocaleString('en-US', { minimumFractionDigits: 2, maximumFractionDigits: 2 }) + ". This is based on your age " + beneficiaryAge + " and a life expectancy factor of " + lifeExpectancyFactor + ".";
} else if (yearsSinceDeath === 10) {
rmdAmount = iraBalance;
message = "This is Year 10 of the distribution period. The entire remaining IRA balance of
$" + iraBalance.toLocaleString('en-US', { minimumFractionDigits: 2, maximumFractionDigits: 2 }) + " must be distributed by December 31st of " + currentRMDYear + ".";
}
}
resultDiv.innerHTML = message;
}