Skip to content

Montana taxable Social Security schedule applies full filing-status thresholds per person (2021–2023 Form 2, page 6) #9011

Description

@PavelMakarchuk

Originating issue: PolicyEngine/policyengine-taxsim#1078 (TY2021, MT, MFJ, ages 70/71, gssi 80,390.77 split 50/50, intrec 36,363.73, pensions 8,969.51, wages 23,103). Related: #4570, #3338 (partial overlap; neither covers the joint-threshold doubling below).

Summary. mt_taxable_social_security runs the 2021–2023 Form 2 Taxable Social Security Benefits Schedule per person but takes the line 10/12 base amounts by tax-unit filing status — so a married-joint couple gets $32,000/$12,000 each ($64,000/$24,000 combined) instead of once, and the married-filing-separately-on-same-form columns never get their $16,000/$6,000 amounts.

2021 Form 2, page 6 (verbatim):

Line 10: "If your filing status is: • Married filing jointly, enter $32,000 in column A; • Single or head of household, enter $25,000 in column A; • Married filing separately, enter $16,000 in columns A and B."
Line 12: "• Married filing jointly, enter $12,000 in column A; ... • Married filing separately, enter $6,000 in columns A and B."

MFJ = one combined computation with the thresholds applied once; the separate-on-same-form path uses half thresholds per column. There is no reading under which each spouse gets the full joint thresholds. This understates Montana taxable SS for essentially every married unit with benefits in 2021–2023.

On the taxsim record: TaxAct (status 2a, columns) reports MT taxable SS 34,166 + 20,539 = 54,705; PE reports 23,337.30 + 5,317.60 = 28,654.90. The full MT AGI gap (TaxAct 121,540 vs PE 95,492) and tax-before-credits gap (5,810 vs 4,020.31) reconcile to this line exactly, per column, to the dollar.

Suggested fix: compute the schedule once per return for MFJ (combine spouses' lines 1–9, apply $32,000/$12,000 once, then allocate); use $16,000/$6,000 per column for the separate-on-same-form path.

Integration test (from the TaxAct return in the taxsim #1078 bundle):

- name: MT 2021 joint elderly couple taxable SS uses the schedule thresholds once, not per spouse (taxsim 1078)
  period: 2021
  absolute_error_margin: 5
  input:
    people:
      head:
        age: 70
        employment_income: 22_432.51
        taxable_interest_income: 18_181.87
        taxable_private_pension_income: 4_484.76
        social_security_retirement: 40_195.39
      spouse:
        age: 71
        employment_income: 670.88
        taxable_interest_income: 18_181.86
        taxable_private_pension_income: 4_484.75
        social_security_retirement: 40_195.38
    tax_units:
      tax_unit: {members: [head, spouse]}
    households:
      household: {members: [head, spouse], state_code: MT}
  output:
    # TaxAct status 2a columns: 34,166 + 20,539
    mt_taxable_social_security: [34_166, 20_539]

(Tax before credits should then be ≈ 5,810 vs PE's current 4,020.31; final liability also depends on the rebate double-count filed separately.)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    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