Reverse Engineering My NTCA Pension
The NTCA pension lump sum uses IRS §417(e) segment rates - not treasury bonds. Here's how the calculation works and how I verified it to 0.004% accuracy.
Reverse Engineering My NTCA Pension
What NTCA didn't tell me - and what I had to figure out myself.
When I started getting serious about retirement planning, I did what you are supposed to do: I went to the source. I ran numbers on the NTCA Pension Point calculator. I asked questions.
What I got back was a number. No methodology. No formula. No explanation of how a lump sum was derived from my salary and service years.
So I reverse-engineered it.
What I was told
When I asked how NTCA calculated the lump sum, I was told it was based on a GATT rate, the 30-year Treasury bond discount method that pension plans used before the Pension Protection Act of 2006 replaced it.
That is not correct.
The NTCA defined benefit plan uses IRS §417(e) - a statutory valuation method that uses high-quality corporate bond rates, not treasuries. Specifically, it uses the IRS "HQM" (High-Quality Market) corporate bond yield curve, averaged over a 24-month lookback period to produce three separate segment rates. Those rates are then held fixed for a full plan year - a 12-month stability period permitted under IRS Revenue Ruling 2007-67. The averaging period and the stability period are distinct: one determines the rate values, the other determines how long they apply.
The distinction matters. Corporate bond yields are higher than treasuries. Higher discount rates compress the present value of future payments. The lump sum you receive is lower under §417(e) than it would be under a treasury-based valuation. This is not a criticism of NTCA - it is the statutory method Congress set for pension plans in the Pension Protection Act of 2006. But if you are told "treasury bonds" and the actual rates are higher, you will build a mental model that gives you the wrong number.
How it actually works
The lump sum is the present value of your lifetime monthly annuity. To compute it, you need three inputs:
- Your monthly annuity - calculated from your benefit rate, salary, and service years
- Survival probabilities - from the IRS §417(e) unisex mortality table, updated annually via IRS Notice (see Sources)
- Discount rates - the three §417(e) segment rates, published monthly by the IRS
For each future payment month, the calculation asks: what is the probability you will be alive to receive this payment, and what is that payment worth in today's dollars? Then it sums all 780 payments, 65 years of monthly payments, from retirement age to age 120.
The three segment rates correspond to payment timing:
| Payments | Years out | Rate used |
|---|---|---|
| Months 1–60 | 0–5 years | Segment 1 |
| Months 61–240 | 5–20 years | Segment 2 |
| Months 241–780 | 20+ years | Segment 3 |
Per Article IV, Section C(3)(f) of the NTCA R&S Program Specifications (January 1, 2025 Restatement), the lump sum interest rate is defined as:
"the interest rate determined under section 417(e)(3) of the Code for the month of August immediately preceding the calendar year that includes the annuity starting date"
The lookback month is August. The stability period is the full calendar year (Definition 28: "Plan Year means the calendar year"). Crucially, the reference point is the annuity starting date (the participant's intended retirement date), not the date the calculation was run. For a June 2029 retirement, NTCA uses August 2028 rates. For a February 2030 retirement, August 2029 rates apply. When NTCA's Pension Point generates an estimate today for a future retirement, it uses the August rates projected or applicable to that future retirement year.
The calculation, step by step
Here is the full methodology in explicit form. All of this derives from public law and IRS publications.
The following variables are used throughout this section. Specific values from my verification are withheld; substitute your own to reproduce the calculation.
| Variable | Definition |
|---|---|
| R | Employer benefit rate (e.g. 0.019 for 1.9%) |
| H | High-5 average salary |
| Y | Years of plan participation, including fractions |
| r₁, r₂, r₃ | IRS §417(e) segment rates for the applicable plan year |
| n | Payment month (1 to 780) |
| A | Monthly annuity = R x H x Y / 12 |
| DF(n) | Discount factor at month n |
| S(n) | Cumulative survival probability at month n |
| PV(n) | Present value of payment at month n |
Step 1 - Monthly annuity
A = R x H x Y / 12
Illustrative example (R=0.019, H=$100,000, Y=25.0):
0.019 x $100,000 x 25.0 / 12 = $3,958.33/month
R is your employer's elected rate from their Adoption Agreement. If your employer elected 1.7% or 1.5%, your starting number is lower before any other factor applies. For the same H and Y, the difference between R=0.015 and R=0.019 is roughly $150,000 in lump sum value.
Step 2 - Assign a segment rate to each future payment
Each of the 780 future payments is discounted at a rate determined by how far in the future it falls. These are the rates that converged in the grid search, applicable to the plan years covering the retirement dates used in this verification:
| Payment timing | Segment | Rate |
|---|---|---|
| Months 1–60 (years 0–5) | Segment 1 | 4.10% |
| Months 61–240 (years 5–20) | Segment 2 | 5.20% |
| Months 241–780 (years 20–65) | Segment 3 | 5.80% |
These rates are derived from the Treasury's HQM corporate bond yield curve, averaged over 24 months and published monthly by the IRS. The IRS minimum present value segment rate table is publicly accessible and updated every month.
Step 3 - Compute the discount factor for each payment
For a payment n months in the future, discount factors compound across segment boundaries:
Months 1–60: DF(n) = 1 / (1 + r₁/12)ⁿ
Months 61–240: DF(n) = 1 / (1 + r₁/12)⁶⁰ × 1 / (1 + r₂/12)ⁿ⁻⁶⁰
Months 241+: DF(n) = 1 / (1 + r₁/12)⁶⁰ × 1 / (1 + r₂/12)¹⁸⁰ × 1 / (1 + r₃/12)ⁿ⁻²⁴⁰
Sample values using the verified segment rates (4.10% / 5.20% / 5.80%):
| Month | Segment | Rate | Discount factor |
|---|---|---|---|
| 1 | 1 | 4.10% | 0.9966 |
| 60 | 1 | 4.10% | 0.8149 |
| 61 | 2 | 5.20% | 0.8114 |
| 240 | 2 | 5.20% | 0.3743 |
| 241 | 3 | 5.80% | 0.3725 |
| 780 | 3 | 5.80% | 0.0277 |
A payment 5 years out is worth roughly 81 cents on the dollar. A payment 20 years out is worth about 37 cents. Payments at the far end of the table - which exist because the calculation runs to age 120 - contribute almost nothing to the total. The early payments are what drive the lump sum value, which is why Segment 1 movements have an outsized effect on the final number.
Step 4 - Apply survival probability
The IRS mandates a specific unisex mortality table for §417(e) calculations, updated annually via IRS Notice. The applicable notice depends on your annuity starting date - IRS Notice 2024-42 covers 2025; the equivalent notice for 2026 and beyond is a new notice published each year. To find the current one, search IRS.gov for "§417(e) unisex mortality table" or check the Sources section below for the 2025 reference and the IRS guidance index.
The table provides qₓ - the annual probability of death at age x. From this:
pₓ = 1 − qₓ (probability of surviving year x)
S(n) = p₅₅ × p₅₆ × ··· × pₓ₍ₙ₎ (cumulative survival to payment month n)
S is normalized to 1.0 at retirement. Representative values from the IRS unisex table:
| Age | Approximate survival probability |
|---|---|
| 55 (retirement) | 1.000 |
| 65 | ~0.957 |
| 75 | ~0.835 |
| 85 | ~0.524 |
Long-dated payments are discounted twice - once for time value of money, once for mortality probability. A payment at month 360 (age 85) carries a discount factor of ~0.21 and a survival probability of ~0.52, making it worth roughly 11 cents of its nominal value.
Step 5 - Present value of each payment
PV(n) = A x S(n) x DF(n)
Step 6 - Sum across all payments
Lump Sum = Σ PV(n) for n = 1 to 780
This is a deterministic sum of 780 terms. No actuarial black box. No proprietary formula. The full source implementation is in the GitHub repository.
How I verified it
I had two official NTCA Pension Point outputs - lump sum estimates for two different retirement dates. The calculator produced both; I could see the results but not the formula.
I built a Python model from the IRS §417(e) spec: load the correct mortality table for the plan year, apply the three-segment discount structure, compute conditional survival probabilities from the retirement age forward, sum the present value of every payment.
My first model was off by about 1.7% consistently. The same error across both data points told me it was not a calculation logic problem - it was a parameter problem. The segment rates I was using did not match what NTCA actually used.
So I ran a grid search: search r₁, r₂, r₃ across a plausible range in 0.01% increments, with r₁ <= r₂ <= r₃, minimizing the maximum absolute error across both official outputs simultaneously: a minimax objective rather than minimizing average error, which would allow one output to compensate for the other.
The rates that converged: 4.10% / 5.20% / 5.80%.
The minimum was isolated at the grid resolution: a 0.01% shift in any segment rate moves one of the two outputs by several hundred dollars, confirming no near-equivalent alternative exists within the search space. The minimax objective is what makes this identification reliable: fitting to a single output allows rate combinations to trade off against each other; requiring both outputs to converge simultaneously eliminates that degree of freedom.
These cannot be directly verified against current IRS published tables. Per the plan document (Article IV.C(3)(f)), the applicable rate is the August §417(e)(3) rate "immediately preceding the calendar year that includes the annuity starting date," meaning the retirement year, not the calculation year. The two outputs used in this verification are for retirement dates in 2029 and 2030, so the applicable August rates are August 2028 and August 2029 respectively. Those months have not yet occurred. The rates above represent what NTCA's Pension Point was projecting for those future Augusts at the time the estimates were generated. Independent verification becomes possible once those months pass and the IRS publishes the actual rates.
To reproduce this yourself with your own NTCA Pension Point outputs:
import numpy as np
def monthly_lump_sum(monthly_annuity, retirement_age, r1, r2, r3, survival):
"""PV sum of 780 monthly payments. survival: Series indexed by age."""
total = 0.0
for n in range(1, 781):
age_n = retirement_age + n / 12
s = np.interp(age_n, survival.index, survival.values)
if n <= 60:
df = 1 / (1 + r1/12)**n
elif n <= 240:
df = (1/(1+r1/12)**60) * (1/(1+r2/12)**(n-60))
else:
df = (1/(1+r1/12)**60) * (1/(1+r2/12)**180) * (1/(1+r3/12)**(n-240))
total += monthly_annuity * s * df
return total
# Substitute your two official NTCA Pension Point lump sum outputs
OFFICIAL_A = <output_for_date_A>
OFFICIAL_B = <output_for_date_B>
# Your annuities for each date: R * H * Y / 12
ANNUITY_A = <benefit_rate * high5 * years_a / 12>
ANNUITY_B = <benefit_rate * high5 * years_b / 12>
RETIRE_AGE = <your_retirement_age_as_decimal>
# Load IRS mortality table (n-24-42.csv or current plan year equivalent)
# survival = pd.Series(...) # see repo for full load logic
best_error, best_rates = float('inf'), None
for r1 in np.arange(0.030, 0.065, 0.0001):
for r2 in np.arange(r1, 0.070, 0.0001):
for r3 in np.arange(r2, 0.080, 0.0001):
err = max(
abs(monthly_lump_sum(ANNUITY_A, RETIRE_AGE, r1, r2, r3, survival) - OFFICIAL_A),
abs(monthly_lump_sum(ANNUITY_B, RETIRE_AGE, r1, r2, r3, survival) - OFFICIAL_B),
)
if err < best_error:
best_error, best_rates = err, (r1, r2, r3)
print(f"r1={best_rates[0]:.4f} r2={best_rates[1]:.4f} r3={best_rates[2]:.4f}")
print(f"Max error: ${best_error:,.2f}")
Note: the brute-force loop over the full search space takes time. Narrow the range first using the IRS published segment rate history for the relevant plan year.
With those rates, the model produces:
| Retirement date | NTCA official | My model | Delta |
|---|---|---|---|
| Retirement Date A | $XXX,XXX | $XXX,XXX | +$42 |
| Retirement Date B | $XXX,XXX | $XXX,XXX | +$36 |
H and Y reflect my actual plan data and are withheld for privacy. The delta column is reproducible by any participant using their own values in the calculator.
$36 on a seven-figure lump sum. That is 0.004% error.
Residual annuity matches to within $0.02 per month.
Why the model will never match NTCA exactly - and why that is fine.
The remaining delta is not a model error. Both errors are positive - the model runs slightly high on both dates - but the error is smaller on the larger lump sum: +$36 on the higher figure versus +$42 on the lower one. A systematic methodology mistake would produce errors that scale with lump sum value. These do the opposite.
The source of the ~$40 residual is input precision. I back-calculated H from the rounded monthly annuity on the PDF, and read Y from a rounded display. NTCA carries both figures to more decimal places internally. Those rounding differences cascade through all 780 monthly PV calculations and produce a terminal difference in the ~$40 range.
To close that gap you would need NTCA's internal unrounded inputs. That data is not on the PDF. At 0.004%, the model is at the noise floor of what is observable from the outside.
A note on the verification basis.
This verification rests on two data points. Two outputs constrain the solution but do not constitute broad validation: fitting two constraints proves the model is consistent with those two outputs, not that it is correct in general. The bidirectional error pattern and the sub-rounding-threshold residuals are consistent with a correct methodology, but anyone attempting independent validation should obtain additional official outputs and run the grid search against them. If the same rates converge against a different pair of outputs from the same plan year, that is stronger evidence.
The buyback years - and why they change everything
Many NTCA participants have prior industry experience that their co-op bought back when they joined the plan. Those bought-back years are credited toward your total NTCA service, and they show up in your official benefit calculation without any separate line item explaining them.
Here is how to prove whether you have them and how many.
In my case, the Pension Point output credited more years of service than my actual co-op tenure. The math:
| Years | |
|---|---|
| Actual co-op service | Ya |
| NTCA-credited service | Yc |
| Bought-back years | Yc - Ya |
| Buyback covers approx. | prior industry tenure |
(Ya = actual co-op tenure; Yc = total NTCA-credited service. These are distinct from the variable Y used in the calculation section, which represents the full credited total including buyback.)
That gap is prior industry experience that NTCA credited at enrollment.
Why it matters - the Rule of 85:
The Rule-of-85 Provision is an optional program feature that each participating employer must elect in their Adoption Agreement (Definition 33, NTCA R&S Specifications). If your employer elected it, early retirement without penalty applies when your age plus Rule-of-85 Service equals 85 or more. Check your Summary Plan Description or ask HR whether your employer has this provision in place. The buyback years are included in the Rule-of-85 Service calculation.
| Scenario | Age | Service | Rule of 85 |
|---|---|---|---|
| With buyback | 55 | Yc | 55 + Yc >= 85 - qualifies |
| Without buyback | 55 | Ya | 55 + Ya < 85 - does not qualify |
Without those bought-back years the Rule of 85 threshold is not met at 55. Each year of missed buyback is potentially a year of additional work to qualify.
The calculator can prove this for your own situation. Pass your co-op start date and it shows the breakdown.
What surprised me most
Two findings I did not expect going in.
1. Your employer's benefit rate may not be 1.9%.
The NTCA plan is a multi-employer plan where each member co-op elects a benefit accrual rate in their Adoption Agreement. Common values are 1.9%, 1.7%, and 1.5%. Some employers elect lower rates.
For the same person - same salary, same service years, same retirement date - the difference between a 1.5% rate and a 1.9% rate is roughly $150,000 in lump sum value.
Most participants do not know their employer's elected rate. It is in your Summary Plan Description. If you do not have that document, ask HR directly - it is a required disclosure under ERISA.
2. The partial lump sum is not a percentage of your actuarial lump sum.
I assumed a partial lump sum election meant taking a percentage of the present value and receiving the rest as annuity. That is not how NTCA structures it.
NTCA's partial lump sum is your employee contribution balance - the money you put in over your career, with interest. It is a fixed dollar amount, not a percentage. This changes how you model the trade-off between lump sum and annuity income.
4% in the pension vs. 4% in a 401k
The NTCA employee contribution to the defined benefit plan is approximately 4% of salary. A direct question: what would that same 4% produce if directed into a 401k instead, and how does that compare to what the pension delivers?
Two salary trajectories are modeled below: one starting at $30,000 growing to approximately $70,700, one starting at $40,000 growing to $100,000. Both use 30 years of credited service.
Retirement timing in both scenarios assumes the employer has elected the Rule-of-85 Provision, an optional feature employers must elect in their Adoption Agreement. If elected, penalty-free early retirement applies when age plus Rule-of-85 Service equals or exceeds 85. With 30 years of credited service, the minimum qualifying age is 55 (55 + 30 = 85). Without the provision, or with fewer credited years (for example, 26 years without buyback), the qualifying threshold shifts: 59 + 26 = 85. The buyback section above covers how to determine your actual credited total. Verify whether your employer has elected this provision before modelling your retirement date.
The hidden multiplier: High-5 of your last 10 years
The NTCA defined benefit plan does not calculate your benefit on your career average salary. It uses your High-5 - the average of your five highest compensation years within your last ten years of plan participation.
For a career with salary growth, this is a significant structural advantage.
| Trajectory | Career average | High-5 of last 10 | Difference | Monthly benefit gain vs career avg |
|---|---|---|---|---|
| $30k to $70k | $47,575 | $66,697 | +40% | +$908/month |
| $40k to $100k | $65,637 | $93,970 | +43% | +$1,346/month |
The plan credits your peak professional value. The higher your salary growth, the more pronounced this advantage becomes.
What 4% into a 401k produces after 30 years
Contributions grow with salary. The 4% safe withdrawal rate (SWR) is the standard rule of thumb for sustainable retirement income: withdraw 4% of the balance per year.
| Trajectory | Investment scenario | Return rate | 401k balance | Monthly income (4% SWR) |
|---|---|---|---|---|
| $30k to $70k | Conservative bonds | 5.0% | $113,681 | $379/month |
| $30k to $70k | Target date fund | 6.5% | $143,558 | $479/month |
| $30k to $70k | S&P 500 historical | 10.0% | $257,522 | $858/month |
| $40k to $100k | Conservative bonds | 5.0% | $155,688 | $519/month |
| $40k to $100k | Target date fund | 6.5% | $196,192 | $654/month |
| $40k to $100k | S&P 500 historical | 10.0% | $350,381 | $1,168/month |
What the NTCA pension produces on the same trajectories
| Trajectory | Monthly annuity | Annual annuity | Lump sum |
|---|---|---|---|
| $30k to $70k | $3,168/month | $38,017/year | $569,783 |
| $40k to $100k | $4,464/month | $53,563/year | $802,774 |
Side by side: NTCA pension vs. best-case 401k (S&P 500 at 10%)
| Trajectory | NTCA lump sum | S&P 500 401k | NTCA monthly | S&P 500 monthly |
|---|---|---|---|---|
| $30k to $70k | $569,783 | $257,522 | $3,168 | $858 |
| $40k to $100k | $802,774 | $350,381 | $4,464 | $1,168 |
At S&P 500 historical average returns - the most optimistic realistic scenario for a 401k - the defined benefit plan produces a lump sum 2.2x larger and monthly income 3.7x higher across both trajectories.
The 401k figures assume perfect execution: contributions invested consistently for 30 years, no withdrawals, no fees, and no sequence-of-returns risk from a market downturn near retirement. The NTCA pension is not subject to any of those variables.
To run this comparison against your own salary history and growth assumptions, use the career trajectory tool in the calculator.
What it would take to replicate the pension in a 401k.
The employee contribution modeled above is 4% of salary. To produce the same lump sum from a 401k over 30 years, the total contribution rate required depends entirely on the return you actually achieve:
| Return scenario | Total contribution needed | You pay in (pension) | You would need to add |
|---|---|---|---|
| 10% (S&P 500, best case) | ~9% | 4% | ~5% of salary |
| 6.5% (target date fund) | ~16% | 4% | ~12% of salary |
| 5% (conservative bonds) | ~20% | 4% | ~16% of salary |
There is a structural constraint the table does not show. Your 4% contribution to the NTCA defined benefit plan goes to a separate qualified plan and does not count against the IRS 401k elective deferral limit ($23,500 in 2026). NTCA participants typically have access to a 401k through their co-op as well. Those two plans run independently: you can contribute 4% to the pension and still have your full $23,500 available for the 401k.
Replacing the pension with a 401k changes that. At realistic returns, replicating the pension outcome requires contributing 16% of salary to the 401k. On a $70,000 income, that is $11,200 of your $23,500 deferral limit consumed before any additional retirement saving. At conservative returns, matching the pension requires 20%, or $14,000 of the limit.
The NTCA pension delivers the equivalent of a 9–20% total contribution rate, depending on what you would have realistically earned in a 401k, without touching your 401k capacity.
What this comparison does not capture.
The pension has structural advantages the 401k numbers do not reflect: survivor benefits are available in joint and survivor form; the annuity provides longevity insurance against outliving a portfolio; and the employer bears all investment risk for the accumulation period. Conversely, the 401k leaves an estate: the remaining balance passes to heirs, while an annuity generally does not (absent a guaranteed period election). The 4% safe withdrawal rate is also a rule of thumb, not a guarantee: a severe market decline in the years immediately before or after retirement can materially reduce actual withdrawal capacity. These factors do not change the directional conclusion of the comparison, but they affect the trade-off analysis for any individual situation.
One more thing: the buy-out trigger
The NTCA plan contains a provision - effective on a fixed date in early 2030 - that credits one additional year of service for purposes of the lump sum calculation. This is not a standard IRS early retirement rule, not a calendar-year-crossing provision, and not tied to your age or service total. It is a plan-specific amendment with a hard effective date written into the plan document.
The practical effect: two retirement dates only months apart can produce significantly different lump sum values if one falls before that date and one falls after it. The additional service year credited by the provision changes your annuity base (A = R x H x Y / 12), which then compounds through all 780 monthly present value calculations. It is not a rounding difference - it is a structural step change.
The provision is in your Summary Plan Description under the lump sum and early retirement sections. If you are within two years of early 2030, run both sides of that threshold. The calculator will show the full impact on your specific inputs.
Can you legally do this?
Yes. And it is worth being clear about why.
§417(e) is public law. The methodology I implemented is written into the IRS code. Congress set this valuation method for defined benefit plans - it is not proprietary to NTCA. Anyone can read the statute, implement the formula, and run it against their own benefit data.
The source data is government publications. The IRS publishes the §417(e) mortality tables annually as official IRS Notices. The Treasury publishes the HQM corporate bond yield curve data publicly. Both are downloaded from official government sources and linked in the Sources section below.
I did not touch NTCA's software. I looked at outputs, compared them to what the IRS specification would produce, and adjusted until they matched. That is analysis from public data.
ERISA gives you the right to your own data. Under ERISA §104, federal law requires your plan to disclose the Summary Plan Description. Under ERISA §105, you are entitled to a benefit statement on request. Both sections exist because Congress decided participants have a right to understand what they have earned.
Building a tool to model that methodology requires no additional statutory justification. Implementing a public law formula with public data is not restricted by anything.
This section describes my reasoning for this project, not legal advice. If you have specific concerns about your situation, consult an attorney familiar with ERISA.
This project exists because a plan participant could not get a straight answer about their own retirement. That is the only reason it was built.
What is available now
Two tools are on GitHub at harvey267/ntca-calculator.
CLI calculator - runs a single lump sum estimate from the command line. Takes your birth date, retirement date, high-5 salary, years of service, and employer benefit rate. Outputs the full annuity stream breakdown and a summary.
Streamlit dashboard - interactive version. Adjust inputs with sliders, see a retirement window curve showing how the lump sum changes month by month, run segment rate sensitivity analysis, and optionally add Social Security projections from an earnings CSV.
The inputs you need before running:
| Input | Where to find it |
|---|---|
| High-5 salary | Average of your 5 highest compensation years in the last 10 plan years - NTCA can provide this |
| Years of service | Your total plan participation years, including fractions - on your Pension Point output |
| Employer benefit rate | Your Summary Plan Description or Adoption Agreement - ask HR |
| Segment rates | Built-in defaults verified against 2026 plan year outputs; update for future plan years |
Sources
- NTCA Retirement & Security Program Specifications, January 1, 2025 Restatement
Primary plan document. Article I Definitions (High-5 Compensation, Rule-of-85 Provision, Plan Year); Article IV.C(3)(f) and IV.G(2)(d) specify August as the §417(e)(3) lookback month and the calendar year as the stability period. Available to participants on request from NTCA under ERISA §104 (benefits@ntca.org or 828-252-9776). - IRC §417(e)(3) - Minimum present value requirements and monthly segment rate table
The statute that defines the methodology, and the IRS page where monthly rates are published. Per the plan document, the applicable rates for a given retirement date are those published for the August immediately preceding the retirement year: August 2028 for a 2029 retirement, August 2029 for a 2030 retirement.
https://www.irs.gov/retirement-plans/minimum-present-value-segment-rates - IRS Revenue Ruling 2007-67
Governs how plans apply §417(e) segment rates after the Pension Protection Act - lookback periods, stability periods, and transition rules. Plans may specify a lookback month of 1-5 months prior to the stability period start; the specific month for a given plan is in the plan document.
https://www.irs.gov/pub/irs-drop/rr-07-67.pdf - IRS §417(e) unisex mortality table notices (updated annually)
IRS Notice 2024-42 is the reference for annuity starting dates in 2025 and serves as the example in this article. For other plan years, search IRS.gov for the current §417(e) unisex mortality table notice. Reference example (2025 plan year): https://www.irs.gov/pub/irs-drop/n-24-42.pdf - Pension Protection Act of 2006, Public Law 109-280
The legislation that replaced the GATT treasury rate with the three-segment corporate bond methodology.
https://www.congress.gov/109/plaws/publ280/PLAW-109publ280.pdf - Treasury HQM Corporate Bond Yield Curve
Source data from which the IRS derives the segment rates. Published monthly by the U.S. Treasury.
https://home.treasury.gov/data/treasury-bulletin - ERISA §105 - Benefit statement rights
Your right to a benefit statement and plan document disclosure on request.
https://www.dol.gov/general/topic/retirement/erisa - Source code - harvey267/ntca-calculator
Full Python implementation of the §417(e) lump sum model, including CLI and Streamlit dashboard.
https://github.com/harvey267/ntca-calculator
All calculations are estimates based on publicly available IRS rules and reverse-engineered NTCA methodology. Verify with NTCA directly for official benefit amounts.