Skip to content

IA pension exclusion applies the $12,000 married cap per spouse instead of as a combined limit #9155

Description

@DTrim99

Bug

ia_pension_exclusion is a person-level variable that caps each eligible spouse's exclusion at the filing-status maximum:

exclusion_cap = p.maximum_amount[filing_status]  # 12,000 for JOINT
return min_(pension, exclusion_cap)              # per person!

For a married couple where both spouses are 55+ with pension income, each spouse can exclude up to $12,000 — up to $24,000 per couple. The 2021 IA Expanded Instructions (p. 27, the variable's own reference) make the cap a combined limit:

"The exclusion is up to $6,000 for individuals who file status 1, 5, or 6 and up to $12,000 for married taxpayers who file status 2, 3, or 4. ... The exclusion of $8,000 is allowed since a married couple is allowed a combined exclusion of up to $12,000." (Example 2)

The examples also show there is no per-spouse $6,000 sub-cap: a single eligible spouse with $8,000 of pension excludes the full $8,000 against the couple's $12,000 limit, and only eligible (55+/disabled) spouses' pension counts.

Reference: https://revenue.iowa.gov/sites/default/files/2023-01/2021%20Expanded%20Instructions_010323.pdf#page=27

Impact

From PolicyEngine/policyengine-taxsim#1110 (IA 2021, married separate-on-combined, ages 58/57, $104,762 wages, $44,174 pensions split 22,087/22,087, $14,575 interest):

PolicyEngine IA 1040 (TaxAct)
Pension exclusion 24,000 12,000 (6,000 + 6,000)
Net income (line 26) 139,511 151,511
Tax before credits 6,919.50 7,750

Applies to any 2021–2022 Iowa couple where both spouses are eligible and combined pensions exceed $12,000. (2023+ the exclusion is unlimited, so the bug is inert.)

Fix

Apply the cap at the tax-unit level and allocate across eligible spouses in proportion to each one's pension income. Validated against the #1110 record: net income 151,511 (exact), tax before credits 7,749.70 vs 7,750, tax after exemption credits 7,669.70 vs 7,670.

Reproduction

TAXSIM input row (reconstructed from the return; the out2psl/1110 data files hold an unrelated AR 2025 record):

taxsimid,year,state,mstat,page,sage,depx,pwages,intrec,pensions,idtl
1110,2021,16,2,58,57,0,104762,14575,44174,5

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions