Skip to content

Apply SECURE 2.0 enhanced catch-up (ages 60-63) to actual contributions #8390

@MaxGhenis

Description

@MaxGhenis

Current behavior

The SECURE 2.0 Act (§109) created an enhanced catch-up contribution for participants aged 60 through 63 in 401(k), 403(b), and SIMPLE plans, starting in 2025. The amount is the greater of $10,000 or 150% of the standard age-50 catch-up — effectively $11,250 for 2025 under IRS Notice 2024-80.

This is already correctly encoded in the parameter gov.irs.gross_income.retirement_contributions.catch_up.limit.k401:

```yaml

  • threshold: { values: { 2018-01-01: 50 } }
    amount: { values: { 2023-01-01: 7_500, 2025-01-01: 7_500 } }
  • threshold: { values: { 2018-01-01: 60 } }
    amount: { values: { 2024-01-01: 7_500, 2025-01-01: 11_250 } }
  • threshold: { values: { 2018-01-01: 64 } }
    amount: { values: { 2025-01-01: 7_500 } }
    ```

The variable k401_catch_up_limit correctly evaluates these brackets by age.

Gap

Although the parameter and the catch-up-limit variable are correct, nothing applies them as an actual cap on contributions. So a 62-year-old's $11,250 super catch-up is computed but unused.

Once the §402(g) cap in #8386 is implemented to use k401_catch_up_limit, the SECURE 2.0 super catch-up will become operative automatically. This issue tracks:

  1. Ensuring the implementation of Enforce 401(k) and 403(b) elective deferral limits (IRC §402(g)) #8386 uses the existing age-bracketed k401_catch_up_limit (not a hardcoded $7,500).
  2. Adding a dedicated YAML test verifying that ages 60-63 in 2025+ get the $11,250 catch-up, while ages 50-59 and 64+ get $7,500.
  3. Adding the same age-bracketed catch-up for IRA contributions if/when IRC §219(b)(5)(B)(ii) is amended (currently IRA catch-up is flat $1,000 across ages 50+).

Files affected

Statutory references

Depends on / blocked by

🤖 Generated with Claude Code

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions