diff --git a/changelog.d/ssa-2027-cola.changed.md b/changelog.d/ssa-2027-cola.changed.md new file mode 100644 index 00000000000..9aa688781a9 --- /dev/null +++ b/changelog.d/ssa-2027-cola.changed.md @@ -0,0 +1 @@ +Update Social Security and SSI parameters for the 2027 cost-of-living adjustment: the 2027 SSA CPI-W uprating index, SSI federal payment amounts, the SSI student earned income exclusion, the contribution and benefit base, and the 2025 national average wage index that sets the 2027 wage-indexed amounts. diff --git a/policyengine_us/parameters/gov/irs/payroll/social_security/cap.yaml b/policyengine_us/parameters/gov/irs/payroll/social_security/cap.yaml index a5e30e50148..28db185a1c4 100644 --- a/policyengine_us/parameters/gov/irs/payroll/social_security/cap.yaml +++ b/policyengine_us/parameters/gov/irs/payroll/social_security/cap.yaml @@ -58,10 +58,10 @@ values: 2023-01-01: 160_200 2024-01-01: 168_600 2025-01-01: 176_100 - # Official SSA determination. + # Official SSA determinations. 2026-01-01: 184_500 + 2027-01-01: 192_300 # CBO forecast. - 2027-01-01: 192_600 2028-01-01: 198_600 2029-01-01: 206_400 2030-01-01: 214_200 @@ -85,6 +85,8 @@ metadata: # Defines wages for FICA tax purposes as amounts from the benefit base. - title: Contribution And Benefit Base href: https://www.ssa.gov/oact/cola/cbb.html + - title: 2027 Cost-of-Living Adjustment (COLA) Fact Sheet + href: https://www.ssa.gov/news/en/cola/factsheets/2027.html - title: CBO Tax Parameters and Effective Marginal Tax Rates | Jan 2025 # 1. Tax Parameters. Row 161. href: https://www.cbo.gov/system/files/2025-01/53724-2025-01-Tax-Parameters.xlsx diff --git a/policyengine_us/parameters/gov/ssa/nawi.yaml b/policyengine_us/parameters/gov/ssa/nawi.yaml index 1cdec755b94..dd71e24f276 100644 --- a/policyengine_us/parameters/gov/ssa/nawi.yaml +++ b/policyengine_us/parameters/gov/ssa/nawi.yaml @@ -74,6 +74,7 @@ values: 2022-01-01: 63_795.13 # NAWI(Y-2) for CBB(2024) 2023-01-01: 66_621.80 # NAWI(Y-2) for CBB(2025) 2024-01-01: 69_846.57 # NAWI(Y-2) for CBB(2026) + 2025-01-01: 72_800.33 # NAWI(Y-2) for CBB(2027); published 2026-10-14 # Back out NAWI from CBO's forecast of the payroll tax cap, in # parameters/gov/irs/payroll/social_security/cap.yaml # The formula to derive NAWI(Y-2) from CBB(Y) is: @@ -82,8 +83,6 @@ values: # CBB(Y) is the Contribution and Benefit Base (payroll tax cap) for year Y. # NAWI(Y-2) is the National Average Wage Index for year Y-2. - # For 2025 NAWI, derived from CBO CBB(2027) = 192_600: 192_600 * (22_935.42 / 60_600) - 2025-01-01: 72_891.30 # For 2026 NAWI, derived from CBO CBB(2028) = 198_600: 198_600 * (22_935.42 / 60_600) 2026-01-01: 75_168.61 # For 2027 NAWI, derived from CBO CBB(2029) = 206_400: 206_400 * (22_935.42 / 60_600) @@ -115,3 +114,5 @@ metadata: reference: - title: Social Security National Average Wage Index href: https://www.ssa.gov/oact/cola/AWI.html#Series + - title: 2027 Cost-of-Living Adjustment (COLA) Fact Sheet + href: https://www.ssa.gov/news/en/cola/factsheets/2027.html diff --git a/policyengine_us/parameters/gov/ssa/ssi/amount/couple.yaml b/policyengine_us/parameters/gov/ssa/ssi/amount/couple.yaml index f92766064d1..91e34285c67 100644 --- a/policyengine_us/parameters/gov/ssa/ssi/amount/couple.yaml +++ b/policyengine_us/parameters/gov/ssa/ssi/amount/couple.yaml @@ -53,6 +53,7 @@ values: 2024-01-01: 1_415 2025-01-01: 1_450 2026-01-01: 1_491 + 2027-01-01: 1_544 metadata: label: Monthly maximum Federal SSI payment amounts for an eligible individual with an eligible spouse uprating: gov.ssa.uprating @@ -61,3 +62,5 @@ metadata: reference: - title: SSI Federal Payment Amounts href: https://www.ssa.gov/oact/cola/SSIamts.html + - title: 2027 Cost-of-Living Adjustment (COLA) Fact Sheet + href: https://www.ssa.gov/news/en/cola/factsheets/2027.html diff --git a/policyengine_us/parameters/gov/ssa/ssi/amount/individual.yaml b/policyengine_us/parameters/gov/ssa/ssi/amount/individual.yaml index d7388c56e36..9cd8809ac58 100644 --- a/policyengine_us/parameters/gov/ssa/ssi/amount/individual.yaml +++ b/policyengine_us/parameters/gov/ssa/ssi/amount/individual.yaml @@ -53,6 +53,7 @@ values: 2024-01-01: 943 2025-01-01: 967 2026-01-01: 994 + 2027-01-01: 1_029 metadata: label: Monthly maximum Federal SSI payment amounts for an eligible individual uprating: gov.ssa.uprating @@ -61,3 +62,5 @@ metadata: reference: - title: SSI Federal Payment Amounts href: https://www.ssa.gov/oact/cola/SSIamts.html + - title: 2027 Cost-of-Living Adjustment (COLA) Fact Sheet + href: https://www.ssa.gov/news/en/cola/factsheets/2027.html diff --git a/policyengine_us/parameters/gov/ssa/ssi/income/exclusions/blind_or_disabled_working_student/amount.yaml b/policyengine_us/parameters/gov/ssa/ssi/income/exclusions/blind_or_disabled_working_student/amount.yaml index 7a07b701727..ce92585ac24 100644 --- a/policyengine_us/parameters/gov/ssa/ssi/income/exclusions/blind_or_disabled_working_student/amount.yaml +++ b/policyengine_us/parameters/gov/ssa/ssi/income/exclusions/blind_or_disabled_working_student/amount.yaml @@ -25,6 +25,7 @@ values: 2024-01-01: 2_290 2025-01-01: 2_350 2026-01-01: 2_410 + 2027-01-01: 2_500 metadata: uprating: parameter: gov.ssa.uprating @@ -67,3 +68,5 @@ metadata: href: https://www.ssa.gov/OACT/ssir/SSI24/V_E_WorkIncentives.html - title: Student Earned Income Exclusion for SSI href: https://www.ssa.gov/oact/cola/studentEIE.html + - title: 2027 Cost-of-Living Adjustment (COLA) Fact Sheet + href: https://www.ssa.gov/news/en/cola/factsheets/2027.html diff --git a/policyengine_us/parameters/gov/ssa/ssi/income/exclusions/blind_or_disabled_working_student/cap.yaml b/policyengine_us/parameters/gov/ssa/ssi/income/exclusions/blind_or_disabled_working_student/cap.yaml index 1254da0a6e3..daac488481e 100644 --- a/policyengine_us/parameters/gov/ssa/ssi/income/exclusions/blind_or_disabled_working_student/cap.yaml +++ b/policyengine_us/parameters/gov/ssa/ssi/income/exclusions/blind_or_disabled_working_student/cap.yaml @@ -25,6 +25,7 @@ values: 2024-01-01: 9_230 2025-01-01: 9_460 2026-01-01: 9_730 + 2027-01-01: 10_080 metadata: uprating: parameter: gov.ssa.uprating @@ -67,3 +68,5 @@ metadata: href: https://www.ssa.gov/OACT/ssir/SSI24/V_E_WorkIncentives.html - title: Student Earned Income Exclusion for SSI href: https://www.ssa.gov/oact/cola/studentEIE.html + - title: 2027 Cost-of-Living Adjustment (COLA) Fact Sheet + href: https://www.ssa.gov/news/en/cola/factsheets/2027.html diff --git a/policyengine_us/parameters/gov/ssa/uprating.yaml b/policyengine_us/parameters/gov/ssa/uprating.yaml index c8940519456..1f20e9256d6 100644 --- a/policyengine_us/parameters/gov/ssa/uprating.yaml +++ b/policyengine_us/parameters/gov/ssa/uprating.yaml @@ -6,8 +6,8 @@ values: 2024-01-01: 301.236 # 2023Q3: (299.899 + 301.551 + 302.257) / 3 2025-01-01: 308.729 # 2024Q3: (308.501 + 308.640 + 309.046) / 3 2026-01-01: 317.265 # 2025Q3: (316.349 + 317.306 + 318.139) / 3 + 2027-01-01: 328.746 # 2026Q3: (327.104 + 328.481 + 330.654) / 3 # Forecasts from marrying CPI-W actuals with CBO's CPI-U forecast. - 2027-01-01: 326.149 # 2026Q3: 330.1 * 306.199 / 310.989 2028-01-01: 332.241 # 2027Q3: 337.3 * 306.199 / 310.989 2029-01-01: 339.431 # 2028Q3: 344.6 * 306.199 / 310.989 2030-01-01: 346.917 # 2029Q3: 352.2 * 306.199 / 310.989 @@ -24,5 +24,9 @@ metadata: reference: - title: Historical values href: https://www.ssa.gov/oact/cola/colaseries.html + - title: BLS CPI-W, U.S. city average, all items, not seasonally adjusted (CWUR0000SA0) + href: https://data.bls.gov/timeseries/CWUR0000SA0 + - title: 2027 Cost-of-Living Adjustment (COLA) Fact Sheet + href: https://www.ssa.gov/news/en/cola/factsheets/2027.html - title: CBO Economic Projections, February 2024. href: https://www.cbo.gov/publication/59710 diff --git a/policyengine_us/tests/policy/baseline/parameters/test_uprating_extensions.py b/policyengine_us/tests/policy/baseline/parameters/test_uprating_extensions.py index 1f26e51c99b..6ff5f115dee 100644 --- a/policyengine_us/tests/policy/baseline/parameters/test_uprating_extensions.py +++ b/policyengine_us/tests/policy/baseline/parameters/test_uprating_extensions.py @@ -337,6 +337,13 @@ def test_social_security_payroll_cap_formula_matches_known_values(): assert expected_2026_cap == 184_500 assert expected_2026_cap == payroll_cap("2026-01-01") + expected_2027_cap = round_social_security_payroll_cap( + payroll_cap("1994-01-01") * nawi("2025-01-01") / nawi("1992-01-01") + ) + + assert expected_2027_cap == 192_300 + assert expected_2027_cap == payroll_cap("2027-01-01") + def test_social_security_parameters_include_latest_official_2026_values(): """Test announced 2026 SSA values before forecasts resume.""" @@ -369,6 +376,42 @@ def test_social_security_parameters_include_latest_official_2026_values(): assert pia.thresholds[2] == 7_749 +def test_social_security_parameters_include_latest_official_2027_values(): + """Test announced 2027 SSA values, including those the extension derives from NAWI.""" + parameters = PARAMETERS + ssa = parameters.gov.ssa + social_security = ssa.social_security + + # 3.6% COLA: 2026Q3 CPI-W average over the 2025Q3 average. + assert ssa.uprating("2027-01-01") == 328.746 + assert round(ssa.uprating("2027-01-01") / ssa.uprating("2026-01-01") - 1, 3) == ( + 0.036 + ) + assert ssa.ssi.amount.individual("2027-01-01") == 1_029 + assert ssa.ssi.amount.couple("2027-01-01") == 1_544 + student = ssa.ssi.income.exclusions.blind_or_disabled_working_student + assert student.amount("2027-01-01") == 2_500 + assert student.cap("2027-01-01") == 10_080 + + assert parameters.gov.irs.payroll.social_security.cap("2027-01-01") == 192_300 + assert social_security.wage_base("2027-01-01") == 192_300 + assert social_security.quarters_of_coverage_threshold("2027-01-01") == 1_970 + assert social_security.earnings_test.exempt_amount_under_fra("2027-01-01") == ( + 25_560 + ) + assert social_security.earnings_test.exempt_amount_year_of_fra("2027-01-01") == ( + 67_920 + ) + assert ssa.sga.non_blind("2027-01-01") == 1_770 + assert ssa.sga.blind("2027-01-01") == 2_950 + + # SSA's published 2025 AWI sets the 2027 PIA bend points. + assert ssa.nawi("2025-01-01") == 72_800.33 + pia = social_security.pia.formula_factors("2027-01-01") + assert pia.thresholds[1] == 1_340 + assert pia.thresholds[2] == 8_077 + + def test_social_security_wage_indexed_parameters_follow_statutory_rounding(): """Wage-indexed benefit parameters should use lagged NAWI and statutory rounding.""" parameters = PARAMETERS