Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions changelog.d/hsa-payroll-contribution-uprating.changed.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Uprate health savings account payroll contributions by the 26 U.S.C. 223(b)(2) family contribution limit, now encoded for 2004–2027 and projected from the statute under 223(g), instead of CMS per-capita out-of-pocket health spending.
2 changes: 1 addition & 1 deletion docs-quarto/methodology/spm-poverty.qmd
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ The [MOOP decomposition page](moop-decomposition.qmd) records the design and the

Population results use the Microcosm US dataset. The current default is Build P: 57,240 Current Population Survey Annual Social and Economic Supplement households with 166,321 people, whose weights are fitted to 5,659 administrative and demographic targets (IRS Statistics of Income by state and by income, Census population estimates by age, sex and state, CMS Medicaid and Marketplace enrollment, USDA SNAP participation and benefits, SSA SSI, TANF, state tax collections and BEA national accounts). Poverty rates are never a target. That is a rule of the calibration, not an accident: a model whose weights were fitted to survey-based poverty rates could not be checked against them.

2025 values are the 2024 survey values carried forward by the model's uprating parameters: each uprated input grows by the ratio of its uprating series between the two years. Household weights grow with total population, so an input that follows a national total grows by that total divided by population ([`per_capita_uprating.py`](https://github.com/PolicyEngine/policyengine-us/blob/main/policyengine_us/tools/per_capita_uprating.py)); its weighted total then tracks the national total. The main income sources (employment, self-employment and partnership income, Social Security, pensions and retirement account distributions, capital gains, dividends, interest, rental and farm income, alimony received and paid, and unemployment compensation) follow [IRS Statistics of Income series](https://github.com/PolicyEngine/policyengine-us/tree/main/policyengine_us/parameters/calibration/gov/irs/soi). Each series holds IRS totals through its last recorded year and a CBO projection extends it from there, so the growth applied from 2024 to 2025 is CBO's, per capita. These health inputs follow [CMS's projection of per-capita out-of-pocket health spending](https://github.com/PolicyEngine/policyengine-us/blob/main/policyengine_us/parameters/calibration/gov/hhs/cms/moop_per_capita.yaml), which is already a per-person series: the other medical expenses, over-the-counter health expenses and other health insurance premiums that enter SPM resources; physician services, inpatient, outpatient, emergency room, urgent care, ambulance, imaging, lab and prescription expenses; health insurance premiums in total, long-term and excluding Medicare Part B, and reported Medicare Part B premiums; and health savings account payroll contributions. These expenses, assets and debts follow [CPI-U](https://github.com/PolicyEngine/policyengine-us/blob/main/policyengine_us/parameters/gov/bls/cpi/cpi_u.yaml): rent, child care and other care costs, child support paid and received, utilities, phone and broadband, tuition, homeowners insurance and association fees, transportation costs, real estate taxes and the energy subsidy; the person-level home mortgage interest input, student loan interest, investment interest expense and vehicle loan interest; bank account, stock and bond assets and the value of the primary residence; the value, equity and debt of business assets, rental property and other real estate; and vehicle equity and debt, the auto loan balance and net worth. These pay and wage-replacement inputs follow the IRS employment income series: hourly wages, tips, overtime premiums, military and government pay, the W-2 wages of qualified businesses, desired 401(k), 403(b) and IRA contributions, workers' compensation and disability benefits. Desired self-employed pension contributions follow the IRS self-employment income series. Employer-sponsored insurance premiums and pre-tax health insurance premiums, the employer's and the employee's shares of employer plans, follow [CMS's employer-sponsored insurance premium per enrollee](https://github.com/PolicyEngine/policyengine-us/blob/main/policyengine_us/parameters/calibration/gov/hhs/cms/esi_premium_per_enrollee.yaml), also a per-person series, which CMS projects to 2034; it grows at its 2033 to 2034 rate from 2035 to 2100 and holds the 2100 value after that. Veterans' benefits follow the [Social Security cost-of-living index](https://github.com/PolicyEngine/policyengine-us/blob/main/policyengine_us/parameters/gov/ssa/uprating.yaml). Every other uprated dollar input follows [CBO's projection of total adjusted gross income](https://github.com/PolicyEngine/policyengine-us/blob/main/policyengine_us/parameters/calibration/gov/cbo/income_by_source.yaml), the default that [`default_uprating.py`](https://github.com/PolicyEngine/policyengine-us/blob/main/policyengine_us/tools/default_uprating.py) assigns, per capita like every national total. Inputs on the default include tax units' first and second home mortgage interest and balances, home equity, personal property, SPM unit assets, mortgage payments, charitable donations, casualty losses, educator expenses, tax preparation fees, energy efficiency and clean energy property expenditures, state unemployment insurance wage and earnings inputs, employer payroll totals and local earnings and wage tax inputs. Household weights follow the model's [total population series](https://github.com/PolicyEngine/policyengine-us/blob/main/policyengine_us/parameters/calibration/gov/census/populations/total.yaml), which takes its values from CBO's demographic outlook; person and SPM unit weights read the household weight. Inputs without an uprating parameter (ages, take-up indicators, tenure, geography) carry over unchanged, so household composition is held at its 2024 state. The population is projected, not resampled.
2025 values are the 2024 survey values carried forward by the model's uprating parameters: each uprated input grows by the ratio of its uprating series between the two years. Household weights grow with total population, so an input that follows a national total grows by that total divided by population ([`per_capita_uprating.py`](https://github.com/PolicyEngine/policyengine-us/blob/main/policyengine_us/tools/per_capita_uprating.py)); its weighted total then tracks the national total. The main income sources (employment, self-employment and partnership income, Social Security, pensions and retirement account distributions, capital gains, dividends, interest, rental and farm income, alimony received and paid, and unemployment compensation) follow [IRS Statistics of Income series](https://github.com/PolicyEngine/policyengine-us/tree/main/policyengine_us/parameters/calibration/gov/irs/soi). Each series holds IRS totals through its last recorded year and a CBO projection extends it from there, so the growth applied from 2024 to 2025 is CBO's, per capita. These health inputs follow [CMS's projection of per-capita out-of-pocket health spending](https://github.com/PolicyEngine/policyengine-us/blob/main/policyengine_us/parameters/calibration/gov/hhs/cms/moop_per_capita.yaml), which is already a per-person series: the other medical expenses, over-the-counter health expenses and other health insurance premiums that enter SPM resources; physician services, inpatient, outpatient, emergency room, urgent care, ambulance, imaging, lab and prescription expenses; and health insurance premiums in total, long-term and excluding Medicare Part B, and reported Medicare Part B premiums. These expenses, assets and debts follow [CPI-U](https://github.com/PolicyEngine/policyengine-us/blob/main/policyengine_us/parameters/gov/bls/cpi/cpi_u.yaml): rent, child care and other care costs, child support paid and received, utilities, phone and broadband, tuition, homeowners insurance and association fees, transportation costs, real estate taxes and the energy subsidy; the person-level home mortgage interest input, student loan interest, investment interest expense and vehicle loan interest; bank account, stock and bond assets and the value of the primary residence; the value, equity and debt of business assets, rental property and other real estate; and vehicle equity and debt, the auto loan balance and net worth. These pay and wage-replacement inputs follow the IRS employment income series: hourly wages, tips, overtime premiums, military and government pay, the W-2 wages of qualified businesses, desired 401(k), 403(b) and IRA contributions, workers' compensation and disability benefits. Desired self-employed pension contributions follow the IRS self-employment income series. Health savings account payroll contributions, which the Microcosm data do not fill, follow [the HSA contribution limit for family coverage](https://github.com/PolicyEngine/policyengine-us/blob/main/policyengine_us/parameters/gov/irs/gross_income/health_savings_account_contributions/limit/family.yaml) in 26 U.S.C. 223(b)(2). Section 223(g) indexes that limit to chained CPI-U, and after the IRS's last published year the model computes it from the statute, so a contribution at the limit stays at the limit. Employer-sponsored insurance premiums and pre-tax health insurance premiums, the employer's and the employee's shares of employer plans, follow [CMS's employer-sponsored insurance premium per enrollee](https://github.com/PolicyEngine/policyengine-us/blob/main/policyengine_us/parameters/calibration/gov/hhs/cms/esi_premium_per_enrollee.yaml), also a per-person series, which CMS projects to 2034; it grows at its 2033 to 2034 rate from 2035 to 2100 and holds the 2100 value after that. Veterans' benefits follow the [Social Security cost-of-living index](https://github.com/PolicyEngine/policyengine-us/blob/main/policyengine_us/parameters/gov/ssa/uprating.yaml). Every other uprated dollar input follows [CBO's projection of total adjusted gross income](https://github.com/PolicyEngine/policyengine-us/blob/main/policyengine_us/parameters/calibration/gov/cbo/income_by_source.yaml), the default that [`default_uprating.py`](https://github.com/PolicyEngine/policyengine-us/blob/main/policyengine_us/tools/default_uprating.py) assigns, per capita like every national total. Inputs on the default include tax units' first and second home mortgage interest and balances, home equity, personal property, SPM unit assets, mortgage payments, charitable donations, casualty losses, educator expenses, tax preparation fees, energy efficiency and clean energy property expenditures, state unemployment insurance wage and earnings inputs, employer payroll totals and local earnings and wage tax inputs. Household weights follow the model's [total population series](https://github.com/PolicyEngine/policyengine-us/blob/main/policyengine_us/parameters/calibration/gov/census/populations/total.yaml), which takes its values from CBO's demographic outlook; person and SPM unit weights read the household weight. Inputs without an uprating parameter (ages, take-up indicators, tenure, geography) carry over unchanged, so household composition is held at its 2024 state. The population is projected, not resampled.

## What the model does not do

Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,106 @@
description: The IRS limits annual contributions to a health savings account for an individual with family high deductible health plan coverage to this amount.
values:
# 26 U.S.C. 223(b)(2)(B): $4,500, indexed under 223(g) from a 1997 base.
# Through 2006 the limit was the lesser of this amount and the plan's annual
# deductible; Pub. L. 109-432 § 303 removed the deductible test from 2007.
2004-01-01: 5_150
2005-01-01: 5_250
2006-01-01: 5_450
2007-01-01: 5_650
2008-01-01: 5_800
2009-01-01: 5_950
2010-01-01: 6_150
2011-01-01: 6_150
2012-01-01: 6_250
2013-01-01: 6_450
2014-01-01: 6_550
2015-01-01: 6_650
2016-01-01: 6_750
2017-01-01: 6_750
# Rev. Proc. 2018-18 cut the 2018 family limit to $6,850 on the chained
# CPI-U; Rev. Proc. 2018-27 let taxpayers treat $6,900 as the limit.
2018-01-01: 6_900
2019-01-01: 7_000
2020-01-01: 7_100
2021-01-01: 7_200
2022-01-01: 7_300
2023-01-01: 7_750
2024-01-01: 8_300
2025-01-01: 8_550
2026-01-01: 8_750
2027-01-01: 9_000
metadata:
unit: currency-USD
period: year
label: HSA contribution limit, family coverage
# Values after the last IRS publication are computed in
# parameters/uprating_extensions.py per 26 U.S.C. 223(g): the statutory
# $4,500 increased by the chained CPI-U cost-of-living adjustment with 1997
# as the base year and the 12 months ending March 31 as the averaging
# window, each increase rounded to the nearest multiple of $50. Those values
# supersede this uprating rule, which names the index family and rounding
# (and lets reforms that re-index gov.irs.uprating parameters find it).
uprating:
parameter: gov.irs.uprating
rounding:
type: nearest
interval: 50
reference:
- title: 26 U.S. Code § 223(b)(2)(B) - Monthly limitation, family coverage
href: https://www.law.cornell.edu/uscode/text/26/223#b_2_B
- title: 26 U.S. Code § 223(g) - Cost-of-living adjustment
href: https://www.law.cornell.edu/uscode/text/26/223#g
- title: Pub. L. 109-432, § 303 - Repeal of annual deductible limitation (2007)
href: https://www.congress.gov/109/plaws/publ432/PLAW-109publ432.pdf#page=29
- title: Notice 2004-2, Q&A 12 (2004)
href: https://www.irs.gov/irb/2004-02_IRB#NOT-2004-2
- title: Rev. Proc. 2004-71 (2005)
href: https://www.irs.gov/pub/irs-drop/rp-04-71.pdf#page=11
- title: Rev. Proc. 2005-70 (2006)
href: https://www.irs.gov/pub/irs-drop/rp-05-70.pdf#page=14
- title: Rev. Proc. 2007-36 (2007, after Pub. L. 109-432)
href: https://www.irs.gov/pub/irs-drop/rp-07-36.pdf#page=2
- title: Rev. Proc. 2007-36 (2008)
href: https://www.irs.gov/pub/irs-drop/rp-07-36.pdf#page=2
- title: Rev. Proc. 2008-29 (2009)
href: https://www.irs.gov/pub/irs-drop/rp-08-29.pdf#page=1
- title: Rev. Proc. 2009-29 (2010)
href: https://www.irs.gov/pub/irs-drop/rp-09-29.pdf#page=1
- title: Rev. Proc. 2010-22 (2011)
href: https://www.irs.gov/pub/irs-drop/rp-10-22.pdf#page=2
- title: Rev. Proc. 2011-32 (2012)
href: https://www.irs.gov/pub/irs-drop/rp-11-32.pdf#page=1
- title: Rev. Proc. 2012-26 (2013)
href: https://www.irs.gov/pub/irs-drop/rp-12-26.pdf#page=1
- title: Rev. Proc. 2013-25 (2014)
href: https://www.irs.gov/pub/irs-drop/rp-13-25.pdf#page=1
- title: Rev. Proc. 2014-30 (2015)
href: https://www.irs.gov/pub/irs-drop/rp-14-30.pdf#page=1
- title: Rev. Proc. 2015-30 (2016)
href: https://www.irs.gov/pub/irs-drop/rp-15-30.pdf#page=1
- title: Rev. Proc. 2016-28 (2017)
href: https://www.irs.gov/pub/irs-drop/rp-16-28.pdf#page=1
- title: Rev. Proc. 2017-37 (2018)
href: https://www.irs.gov/pub/irs-drop/rp-17-37.pdf#page=1
- title: Rev. Proc. 2018-18 (2018 family limit of $6,850)
href: https://www.irs.gov/irb/2018-10_IRB#RP-2018-18
- title: Rev. Proc. 2018-27 (2018 family limit of $6,900)
href: https://www.irs.gov/pub/irs-drop/rp-18-27.pdf#page=3
- title: Rev. Proc. 2018-30 (2019)
href: https://www.irs.gov/pub/irs-drop/rp-18-30.pdf#page=1
- title: Rev. Proc. 2019-25 (2020)
href: https://www.irs.gov/irb/2019-22_IRB#REV-PROC-2019-25
- title: Rev. Proc. 2020-32 (2021)
href: https://www.irs.gov/pub/irs-drop/rp-20-32.pdf#page=1
- title: Rev. Proc. 2021-25 (2022)
href: https://www.irs.gov/pub/irs-drop/rp-21-25.pdf#page=1
- title: Rev. Proc. 2022-24 (2023)
href: https://www.irs.gov/pub/irs-drop/rp-22-24.pdf#page=1
- title: Rev. Proc. 2023-23 (2024)
href: https://www.irs.gov/pub/irs-drop/rp-23-23.pdf#page=2
- title: Rev. Proc. 2024-25 (2025)
href: https://www.irs.gov/pub/irs-drop/rp-24-25.pdf#page=2
- title: Rev. Proc. 2025-19 (2026)
href: https://www.irs.gov/pub/irs-drop/rp-25-19.pdf#page=2
- title: Rev. Proc. 2026-24 (2027)
href: https://www.irs.gov/pub/irs-drop/rp-26-24.pdf#page=2
Loading
Loading