Eco Impact Benefits Rollback

Author

Coda Rayo-Garza

Compounding Effects - Every Texan

  • Rollback Scenarios for SNAP (also applied to WIC & NSLP)

    • Full rollback to 2019 levels17% decrease in benefits per person. (source here from AO). 17% comes from rolling back benefits to the 2019 TFP baseline and adjusting for inflation using CPI. In this case, the rollback assumes that benefits are reverted to pre-pandemic (2019) levels and then trended forward to account for how food prices have risen between 2019 and 2024. This inflation-adjusted rollback reflects a scenario where SNAP benefits are returned to the 2019 formula and adjusted for food price changes, resulting in smaller cuts than the Urban estimates. I created this rollback based on earlier conversations with AO where it was discussed that TFP would be revered to 2019 levels, so I pulled TX av SNAP benefits and then adjusted forward.

    • TFP rollback → 21% decrease based on UI’s artificial reduction here. This reflects scenario modeled by the Urban Institute and CBPP, in which only the 2021 TFP reevaluation is reversed, returning SNAP benefits to their pre-2021 baseline while retaining inflation adjustments. This rollback would remove the modernization of the SNAP benefit formula but still allow for standard annual inflation updates moving forward. This scenario does NOT assume the full undoing of inflation-linked benefit increased. https://www.urban.org/data-tools/snap-cuts-state-county-gaps — This scenario reflects a static rollback.

    • Minimum rollback → 10% decrease for comparison’s sake

      • Note: AO provided this GAO report which mentions a 21% increase in program costs. This study wasn’t necessarily about rollbacks, but rather program inefficiencies. It coincidentaly aligns with the UI reduction estimate.
  • Medicaid Cut Scenarios

    • Based on EPI analysis here. Assumes an $880 billion cut to Medicaid/cut of roughly 10.7% to the programs spending going forward (CBO). See also herefor value of Medicaid and hh income. Data on proposed cuts from EPI here. For scenarios, reference Table 1 which provides an estimate of how much the proposed Medicaid cuts would cost the bottom two-fifths of household incomes in every state. It also includes estimates for the middle fifth of U.S. households, who also suffer a smaller, but not trivial, cut to their household incomes as well.

  • Methodology:

    • SNAP: To determine which average benefit per person to use, first I pulled the 2019 and 2024 national/state level summaries zip file from the USDA website here.

      • 2019 average benefits per person: $124.64

      • 2024 average benefits per person: $188.19 (this number checks out with CBPP Texas profile here)

      • Calculating impact per program was a simple mathematical formula across the three different scenarios. Not complex. The monthly per person benefit was multiplied by the reduction percentages, then scaled to an annual loss per person: annual loss = snap benefit per person * reduction scenario *12. A similar method was applied for hh calculation.

      • An adjustment was made for high cost food counties (40% higher meal costs) was included to estimate additional losses in counties with higher food costs.

    • Medicaid: To estimate the impact of Medicaid reductions, I used data from EPI to generate scenarios.

      • Medicaid recipients were divided into three income groups based on EPI estimates of household income distribution. Each group experiences different Medicaid loss rates, based on EPI estimates (see image above). So, calculation was medicaid loss per person = income level * loss rate.

      • Reduction: Instead of using fixed reduction percentages (like SNAP, etc.), Medicaid losses were modeled using income-based loss rates, which better reflect how medicaid cuts impact different income groups.

      • Note: The per capita approach was considered, but I didn’t use it because it assumes federal Medicaid growth caps rather than estimating immediate financial loss for the enrolled. I reviewed thisKFF analysis. Their analysis is useful for understanding federal budget constrains and state fiscal adjustments over a decade or more, but the EPI model is better suited to determine how much money a Medicaid recipient in Texas would lose per year.

  • Data Sources


CPI INFLATION Sources

2025: Page 8 of this. CPI recent as of January 2025 (updated 2/25)

2019: Page 9 of this report, CPI 2019

2024: Page 9 of this

WIC, SNAP, & NSLP Losses

library(dplyr)

Attaching package: 'dplyr'
The following objects are masked from 'package:stats':

    filter, lag
The following objects are masked from 'package:base':

    intersect, setdiff, setequal, union
# --- CPI Inflation Adjustment (SNAP full rollback). Note that this only applies to 2019 rollback ---
cpi_2019_food_at_home <- 241.381
cpi_2024_food_at_home <- 305.037
snap_2019_avg_benefit <- 123 #2019 SNAP average benefit for inflation
snap_avg_2019_adjusted <- snap_2019_avg_benefit * (cpi_2024_food_at_home / cpi_2019_food_at_home)  #its essentially (188.19 - 155.43) / 188.19

# --- SNAP Data ---
snap_participants_tx <- 3193000
snap_avg_benefit_per_person <- 188.19
snap_avg_benefit_per_household <- 409.87
snap_households_tx <- 1466107

# --- WIC Data ---
wic_women <- 216204
wic_children <- 393360
wic_avg_benefit_pregnant <- 47
wic_avg_benefit_child <- 26

# --- NSLP Data (Family Impact) ---
school_days <- 180
nslp_free_lunch_rate <- 3.83
nslp_annual_family_cost_per_student <- nslp_free_lunch_rate * school_days
nslp_part <- 3404435 #fy24 prelim

# --- Reduction Scenarios ---
reduction_scenarios <- c(
  "10% Reduction (Conservative)" = 0.10,
  "21% Reduction (TFP UI)" = 0.21,
  "17% Reduction (2019 Rollback - Inflation Adjusted)" = 
      (snap_avg_benefit_per_person - snap_avg_2019_adjusted) / snap_avg_benefit_per_person
)

# --- Compute benefit losses clearly (Per-Person) ---
impact_data <- data.frame(
  Scenario = names(reduction_scenarios),
  
  # SNAP Loss (Per-Person)
  SNAP_Per_Person_Monthly_Loss = snap_avg_benefit_per_person * reduction_scenarios,
  SNAP_Per_Person_Annual_Loss = snap_avg_benefit_per_person * reduction_scenarios * 12,
  
  # WIC Annual Loss per Participant
  WIC_Pregnant_Annual_Loss = wic_avg_benefit_pregnant * 12 * reduction_scenarios,
  WIC_Child_Annual_Loss = wic_avg_benefit_child * 12 * reduction_scenarios,
  
  # NSLP Annual Loss per Student (Family Impact)
  NSLP_Per_Student_Annual_Loss = nslp_annual_family_cost_per_student * reduction_scenarios
)

# --- Format for clarity and readability ---
impact_data <- impact_data %>%
  mutate(across(where(is.numeric), ~ formatC(.x, format = "f", big.mark = ",", digits = 2)))

print(impact_data)
                                                                                             Scenario
10% Reduction (Conservative)                                             10% Reduction (Conservative)
21% Reduction (TFP UI)                                                         21% Reduction (TFP UI)
17% Reduction (2019 Rollback - Inflation Adjusted) 17% Reduction (2019 Rollback - Inflation Adjusted)
                                                   SNAP_Per_Person_Monthly_Loss
10% Reduction (Conservative)                                              18.82
21% Reduction (TFP UI)                                                    39.52
17% Reduction (2019 Rollback - Inflation Adjusted)                        32.75
                                                   SNAP_Per_Person_Annual_Loss
10% Reduction (Conservative)                                            225.83
21% Reduction (TFP UI)                                                  474.24
17% Reduction (2019 Rollback - Inflation Adjusted)                      393.04
                                                   WIC_Pregnant_Annual_Loss
10% Reduction (Conservative)                                          56.40
21% Reduction (TFP UI)                                               118.44
17% Reduction (2019 Rollback - Inflation Adjusted)                    98.16
                                                   WIC_Child_Annual_Loss
10% Reduction (Conservative)                                       31.20
21% Reduction (TFP UI)                                             65.52
17% Reduction (2019 Rollback - Inflation Adjusted)                 54.30
                                                   NSLP_Per_Student_Annual_Loss
10% Reduction (Conservative)                                              68.94
21% Reduction (TFP UI)                                                   144.77
17% Reduction (2019 Rollback - Inflation Adjusted)                       119.98

Medicaid losses

# --- Medicaid Data ---
medicaid_total_tx <- 4135780

income_levels <- c(Low = 19307, Second = 46351, Middle = 76045)
medicaid_loss_rates <- c(Low = 0.074, Second = 0.017, Middle = 0.004)
tx_medicaid_distribution <- c(Low = 0.60, Second = 0.25, Middle = 0.15)

medicaid_loss_per_person <- income_levels * medicaid_loss_rates

# --- Individual Medicaid Loss by Quintile ---
medicaid_loss_by_quintile <- data.frame(
  Income_Group = names(income_levels),
  Income = income_levels,
  Medicaid_Loss_Per_Person = medicaid_loss_per_person
) %>%
  mutate(across(where(is.numeric), ~ formatC(.x, big.mark = ",", format = "f", digits = 2)))

print(medicaid_loss_by_quintile)
       Income_Group    Income Medicaid_Loss_Per_Person
Low             Low 19,307.00                 1,428.72
Second       Second 46,351.00                   787.97
Middle       Middle 76,045.00                   304.18
# --- Total Medicaid Statewide Loss (EPI Quintiles) ---
total_medicaid_loss_tx <- sum(medicaid_total_tx * tx_medicaid_distribution * medicaid_loss_per_person)

cat("Total Statewide Medicaid Loss (EPI Quintile-based):", 
    formatC(total_medicaid_loss_tx, big.mark = ",", format = "f", digits = 0))
Total Statewide Medicaid Loss (EPI Quintile-based): 4,548,735,772

Individual Level Scenarios

AO wanted individual level scenarios

Note: Medicaid losses were estimated based on household incomes as recommended by the Economic Policy Institute (EPI), applying loss percentages derived from household income quintiles. Separate calculations for elderly household members were intentionally omitted to avoid double counting, as household income already encompasses all members.

Note: I went back to giving everyone the lower end of the quintile per the EPI Medicaid analysis. I went back and forth on this one because we want to be able to capture what the loss is for larger households. So, while the EPI threshold “smoothes” out the household size, I originally wanted to start from the assumption that the 19307 was for a single parent household income. Then, I had added a multiplier (x1.5) to adjust the income upwards for the two parent household incomes, but to still keep them in the bottom quintile. KW reviewed and SS also agree that we should keep at 19307. I maintain that a superficial adjustment is the best way to go. SS suggested pulling PUMS but the loss rates are calibrated for those quintile averages, so diverging from that base might create methodological inconsistencies. See the medicaid assumptions in prior chunks.

# --- Parameters ---
use_income_scaling <- TRUE  #toggle --set to FALSE to use flat EPI value of $19,307 for all households

# --- Adjusted Household Incomes based on scaling toggle ---
single_parent_income <- 19307
multiplier_two_parent <- 1.33  #edited ultiplier based on microdata insights (2-parent HH ~33% higher income)
two_parent_income <- if (use_income_scaling) single_parent_income * multiplier_two_parent else single_parent_income

# --- Medicaid Loss per Household (EPI calculation) ---
medicaid_cut_rate <- 0.052  #Texas-specific Medicaid loss % (EPI lowest quintile)
medicaid_loss_single_parent_hh <- single_parent_income * medicaid_cut_rate
medicaid_loss_two_parent_hh <- two_parent_income * medicaid_cut_rate

# --- Convert Columns to Numeric ---
impact_data2 <- impact_data %>%
  mutate(
    SNAP_Per_Person_Annual_Loss = as.numeric(gsub(",", "", SNAP_Per_Person_Annual_Loss)),
    WIC_Pregnant_Annual_Loss = as.numeric(gsub(",", "", WIC_Pregnant_Annual_Loss)),
    WIC_Child_Annual_Loss = as.numeric(gsub(",", "", WIC_Child_Annual_Loss)),
    NSLP_Per_Student_Annual_Loss = as.numeric(gsub(",", "", NSLP_Per_Student_Annual_Loss))
  )

# --- Scenario Impacts Calculation ---
impact_summary <- impact_data2 %>%
  mutate(
    # Scenario 1: Pregnant Mother + One Child
    Income_Mother_Child = single_parent_income,
    SNAP_Loss_Mother_Child = SNAP_Per_Person_Annual_Loss * 2,
    WIC_Loss_Mother_Child = WIC_Pregnant_Annual_Loss + WIC_Child_Annual_Loss,
    NSLP_Loss_Mother_Child = NSLP_Per_Student_Annual_Loss,
    Medicaid_Loss_Mother_Child = medicaid_loss_single_parent_hh,
    Total_Loss_Mother_Child = SNAP_Loss_Mother_Child + WIC_Loss_Mother_Child +
                              NSLP_Loss_Mother_Child + Medicaid_Loss_Mother_Child,
    Percent_Loss_Mother_Child = (Total_Loss_Mother_Child / Income_Mother_Child) * 100,
    Monthly_Loss_Mother_Child = Total_Loss_Mother_Child / 12,
    Daily_Loss_Mother_Child = Total_Loss_Mother_Child / 365,

    # Scenario 2: Two Parents + One Child + Elderly
    Income_TwoParent_Elderly = two_parent_income,
    SNAP_Loss_TwoParent_Elderly = SNAP_Per_Person_Annual_Loss * 4,
    WIC_Loss_TwoParent_Elderly = WIC_Pregnant_Annual_Loss + WIC_Child_Annual_Loss,
    NSLP_Loss_TwoParent_Elderly = NSLP_Per_Student_Annual_Loss,
    Medicaid_Loss_TwoParent_Elderly = medicaid_loss_two_parent_hh,
    Total_Loss_TwoParent_Elderly = SNAP_Loss_TwoParent_Elderly + WIC_Loss_TwoParent_Elderly +
                                   NSLP_Loss_TwoParent_Elderly + Medicaid_Loss_TwoParent_Elderly,
    Percent_Loss_TwoParent_Elderly = (Total_Loss_TwoParent_Elderly / Income_TwoParent_Elderly) * 100,
    Monthly_Loss_TwoParent_Elderly = Total_Loss_TwoParent_Elderly / 12,
    Daily_Loss_TwoParent_Elderly = Total_Loss_TwoParent_Elderly / 365,

    # Scenario 3: Single Parent + One Child + Elderly
    Income_SingleParent_Elderly = single_parent_income,
    SNAP_Loss_SingleParent_Elderly = SNAP_Per_Person_Annual_Loss * 3,
    WIC_Loss_SingleParent_Elderly = WIC_Child_Annual_Loss,
    NSLP_Loss_SingleParent_Elderly = NSLP_Per_Student_Annual_Loss,
    Medicaid_Loss_SingleParent_Elderly = medicaid_loss_single_parent_hh,
    Total_Loss_SingleParent_Elderly = SNAP_Loss_SingleParent_Elderly + WIC_Loss_SingleParent_Elderly +
                                      NSLP_Loss_SingleParent_Elderly + Medicaid_Loss_SingleParent_Elderly,
    Percent_Loss_SingleParent_Elderly = (Total_Loss_SingleParent_Elderly / Income_SingleParent_Elderly) * 100,
    Monthly_Loss_SingleParent_Elderly = Total_Loss_SingleParent_Elderly / 12,
    Daily_Loss_SingleParent_Elderly = Total_Loss_SingleParent_Elderly / 365,

    # Scenario 4: Pregnant Mother + One Child + Elderly
    Income_PregnantMother_Child_Elderly = single_parent_income,
    SNAP_Loss_PregnantMother_Child_Elderly = SNAP_Per_Person_Annual_Loss * 3,
    WIC_Loss_PregnantMother_Child_Elderly = WIC_Pregnant_Annual_Loss + WIC_Child_Annual_Loss,
    NSLP_Loss_PregnantMother_Child_Elderly = NSLP_Per_Student_Annual_Loss,
    Medicaid_Loss_PregnantMother_Child_Elderly = medicaid_loss_single_parent_hh,
    Total_Loss_PregnantMother_Child_Elderly = SNAP_Loss_PregnantMother_Child_Elderly +
                                              WIC_Loss_PregnantMother_Child_Elderly +
                                              NSLP_Loss_PregnantMother_Child_Elderly +
                                              Medicaid_Loss_PregnantMother_Child_Elderly,
    Percent_Loss_PregnantMother_Child_Elderly = (Total_Loss_PregnantMother_Child_Elderly / Income_PregnantMother_Child_Elderly) * 100,
    Monthly_Loss_PregnantMother_Child_Elderly = Total_Loss_PregnantMother_Child_Elderly / 12,
    Daily_Loss_PregnantMother_Child_Elderly = Total_Loss_PregnantMother_Child_Elderly / 365
  ) |>
  select(
    Scenario,
    Income_Mother_Child, SNAP_Loss_Mother_Child, WIC_Loss_Mother_Child, NSLP_Loss_Mother_Child, Medicaid_Loss_Mother_Child, Total_Loss_Mother_Child, Percent_Loss_Mother_Child, Monthly_Loss_Mother_Child, Daily_Loss_Mother_Child,
    Income_TwoParent_Elderly, SNAP_Loss_TwoParent_Elderly, WIC_Loss_TwoParent_Elderly, NSLP_Loss_TwoParent_Elderly, Medicaid_Loss_TwoParent_Elderly, Total_Loss_TwoParent_Elderly, Percent_Loss_TwoParent_Elderly, Monthly_Loss_TwoParent_Elderly, Daily_Loss_TwoParent_Elderly,
    Income_SingleParent_Elderly, SNAP_Loss_SingleParent_Elderly, WIC_Loss_SingleParent_Elderly, NSLP_Loss_SingleParent_Elderly, Medicaid_Loss_SingleParent_Elderly, Total_Loss_SingleParent_Elderly, Percent_Loss_SingleParent_Elderly, Monthly_Loss_SingleParent_Elderly, Daily_Loss_SingleParent_Elderly,
    Income_PregnantMother_Child_Elderly, SNAP_Loss_PregnantMother_Child_Elderly, WIC_Loss_PregnantMother_Child_Elderly, NSLP_Loss_PregnantMother_Child_Elderly, Medicaid_Loss_PregnantMother_Child_Elderly, Total_Loss_PregnantMother_Child_Elderly, Percent_Loss_PregnantMother_Child_Elderly, Monthly_Loss_PregnantMother_Child_Elderly, Daily_Loss_PregnantMother_Child_Elderly
  ) |>
  mutate(across(where(is.numeric), ~ formatC(.x, big.mark = ",", digits = 2, format = "f")))

print(impact_summary)
                                                                                             Scenario
10% Reduction (Conservative)                                             10% Reduction (Conservative)
21% Reduction (TFP UI)                                                         21% Reduction (TFP UI)
17% Reduction (2019 Rollback - Inflation Adjusted) 17% Reduction (2019 Rollback - Inflation Adjusted)
                                                   Income_Mother_Child
10% Reduction (Conservative)                                 19,307.00
21% Reduction (TFP UI)                                       19,307.00
17% Reduction (2019 Rollback - Inflation Adjusted)           19,307.00
                                                   SNAP_Loss_Mother_Child
10% Reduction (Conservative)                                       451.66
21% Reduction (TFP UI)                                             948.48
17% Reduction (2019 Rollback - Inflation Adjusted)                 786.08
                                                   WIC_Loss_Mother_Child
10% Reduction (Conservative)                                       87.60
21% Reduction (TFP UI)                                            183.96
17% Reduction (2019 Rollback - Inflation Adjusted)                152.46
                                                   NSLP_Loss_Mother_Child
10% Reduction (Conservative)                                        68.94
21% Reduction (TFP UI)                                             144.77
17% Reduction (2019 Rollback - Inflation Adjusted)                 119.98
                                                   Medicaid_Loss_Mother_Child
10% Reduction (Conservative)                                         1,003.96
21% Reduction (TFP UI)                                               1,003.96
17% Reduction (2019 Rollback - Inflation Adjusted)                   1,003.96
                                                   Total_Loss_Mother_Child
10% Reduction (Conservative)                                      1,612.16
21% Reduction (TFP UI)                                            2,281.17
17% Reduction (2019 Rollback - Inflation Adjusted)                2,062.48
                                                   Percent_Loss_Mother_Child
10% Reduction (Conservative)                                            8.35
21% Reduction (TFP UI)                                                 11.82
17% Reduction (2019 Rollback - Inflation Adjusted)                     10.68
                                                   Monthly_Loss_Mother_Child
10% Reduction (Conservative)                                          134.35
21% Reduction (TFP UI)                                                190.10
17% Reduction (2019 Rollback - Inflation Adjusted)                    171.87
                                                   Daily_Loss_Mother_Child
10% Reduction (Conservative)                                          4.42
21% Reduction (TFP UI)                                                6.25
17% Reduction (2019 Rollback - Inflation Adjusted)                    5.65
                                                   Income_TwoParent_Elderly
10% Reduction (Conservative)                                      25,678.31
21% Reduction (TFP UI)                                            25,678.31
17% Reduction (2019 Rollback - Inflation Adjusted)                25,678.31
                                                   SNAP_Loss_TwoParent_Elderly
10% Reduction (Conservative)                                            903.32
21% Reduction (TFP UI)                                                1,896.96
17% Reduction (2019 Rollback - Inflation Adjusted)                    1,572.16
                                                   WIC_Loss_TwoParent_Elderly
10% Reduction (Conservative)                                            87.60
21% Reduction (TFP UI)                                                 183.96
17% Reduction (2019 Rollback - Inflation Adjusted)                     152.46
                                                   NSLP_Loss_TwoParent_Elderly
10% Reduction (Conservative)                                             68.94
21% Reduction (TFP UI)                                                  144.77
17% Reduction (2019 Rollback - Inflation Adjusted)                      119.98
                                                   Medicaid_Loss_TwoParent_Elderly
10% Reduction (Conservative)                                              1,335.27
21% Reduction (TFP UI)                                                    1,335.27
17% Reduction (2019 Rollback - Inflation Adjusted)                        1,335.27
                                                   Total_Loss_TwoParent_Elderly
10% Reduction (Conservative)                                           2,395.13
21% Reduction (TFP UI)                                                 3,560.96
17% Reduction (2019 Rollback - Inflation Adjusted)                     3,179.87
                                                   Percent_Loss_TwoParent_Elderly
10% Reduction (Conservative)                                                 9.33
21% Reduction (TFP UI)                                                      13.87
17% Reduction (2019 Rollback - Inflation Adjusted)                          12.38
                                                   Monthly_Loss_TwoParent_Elderly
10% Reduction (Conservative)                                               199.59
21% Reduction (TFP UI)                                                     296.75
17% Reduction (2019 Rollback - Inflation Adjusted)                         264.99
                                                   Daily_Loss_TwoParent_Elderly
10% Reduction (Conservative)                                               6.56
21% Reduction (TFP UI)                                                     9.76
17% Reduction (2019 Rollback - Inflation Adjusted)                         8.71
                                                   Income_SingleParent_Elderly
10% Reduction (Conservative)                                         19,307.00
21% Reduction (TFP UI)                                               19,307.00
17% Reduction (2019 Rollback - Inflation Adjusted)                   19,307.00
                                                   SNAP_Loss_SingleParent_Elderly
10% Reduction (Conservative)                                               677.49
21% Reduction (TFP UI)                                                   1,422.72
17% Reduction (2019 Rollback - Inflation Adjusted)                       1,179.12
                                                   WIC_Loss_SingleParent_Elderly
10% Reduction (Conservative)                                               31.20
21% Reduction (TFP UI)                                                     65.52
17% Reduction (2019 Rollback - Inflation Adjusted)                         54.30
                                                   NSLP_Loss_SingleParent_Elderly
10% Reduction (Conservative)                                                68.94
21% Reduction (TFP UI)                                                     144.77
17% Reduction (2019 Rollback - Inflation Adjusted)                         119.98
                                                   Medicaid_Loss_SingleParent_Elderly
10% Reduction (Conservative)                                                 1,003.96
21% Reduction (TFP UI)                                                       1,003.96
17% Reduction (2019 Rollback - Inflation Adjusted)                           1,003.96
                                                   Total_Loss_SingleParent_Elderly
10% Reduction (Conservative)                                              1,781.59
21% Reduction (TFP UI)                                                    2,636.97
17% Reduction (2019 Rollback - Inflation Adjusted)                        2,357.36
                                                   Percent_Loss_SingleParent_Elderly
10% Reduction (Conservative)                                                    9.23
21% Reduction (TFP UI)                                                         13.66
17% Reduction (2019 Rollback - Inflation Adjusted)                             12.21
                                                   Monthly_Loss_SingleParent_Elderly
10% Reduction (Conservative)                                                  148.47
21% Reduction (TFP UI)                                                        219.75
17% Reduction (2019 Rollback - Inflation Adjusted)                            196.45
                                                   Daily_Loss_SingleParent_Elderly
10% Reduction (Conservative)                                                  4.88
21% Reduction (TFP UI)                                                        7.22
17% Reduction (2019 Rollback - Inflation Adjusted)                            6.46
                                                   Income_PregnantMother_Child_Elderly
10% Reduction (Conservative)                                                 19,307.00
21% Reduction (TFP UI)                                                       19,307.00
17% Reduction (2019 Rollback - Inflation Adjusted)                           19,307.00
                                                   SNAP_Loss_PregnantMother_Child_Elderly
10% Reduction (Conservative)                                                       677.49
21% Reduction (TFP UI)                                                           1,422.72
17% Reduction (2019 Rollback - Inflation Adjusted)                               1,179.12
                                                   WIC_Loss_PregnantMother_Child_Elderly
10% Reduction (Conservative)                                                       87.60
21% Reduction (TFP UI)                                                            183.96
17% Reduction (2019 Rollback - Inflation Adjusted)                                152.46
                                                   NSLP_Loss_PregnantMother_Child_Elderly
10% Reduction (Conservative)                                                        68.94
21% Reduction (TFP UI)                                                             144.77
17% Reduction (2019 Rollback - Inflation Adjusted)                                 119.98
                                                   Medicaid_Loss_PregnantMother_Child_Elderly
10% Reduction (Conservative)                                                         1,003.96
21% Reduction (TFP UI)                                                               1,003.96
17% Reduction (2019 Rollback - Inflation Adjusted)                                   1,003.96
                                                   Total_Loss_PregnantMother_Child_Elderly
10% Reduction (Conservative)                                                      1,837.99
21% Reduction (TFP UI)                                                            2,755.41
17% Reduction (2019 Rollback - Inflation Adjusted)                                2,455.52
                                                   Percent_Loss_PregnantMother_Child_Elderly
10% Reduction (Conservative)                                                            9.52
21% Reduction (TFP UI)                                                                 14.27
17% Reduction (2019 Rollback - Inflation Adjusted)                                     12.72
                                                   Monthly_Loss_PregnantMother_Child_Elderly
10% Reduction (Conservative)                                                          153.17
21% Reduction (TFP UI)                                                                229.62
17% Reduction (2019 Rollback - Inflation Adjusted)                                    204.63
                                                   Daily_Loss_PregnantMother_Child_Elderly
10% Reduction (Conservative)                                                          5.04
21% Reduction (TFP UI)                                                                7.55
17% Reduction (2019 Rollback - Inflation Adjusted)                                    6.73
View(impact_summary)

NOTE: The medicaid losses are already pre-determined based on EPI estimates and therefore do not need to be scaled further by the 10/21/17 scenarios.

Below is a table that is prettier

Compounding Losses by Household Scenario
Includes SNAP, WIC, NSLP, and Medicaid Losses
Scenario Annual Income (Mother + Child) SNAP Loss WIC Loss NSLP Loss Medicaid Loss Total Loss % Income Loss Monthly Loss Daily Loss Annual Income (2 Parents + Child + Elderly) SNAP Loss WIC Loss NSLP Loss Medicaid Loss Total Loss % Income Loss Monthly Loss Daily Loss Annual Income (Single + Child + Elderly) SNAP Loss WIC Loss NSLP Loss Medicaid Loss Total Loss % Income Loss Monthly Loss Daily Loss Annual Income (Pregnant + Child + Elderly) SNAP Loss WIC Loss NSLP Loss Medicaid Loss Total Loss % Income Loss Monthly Loss Daily Loss
10% Reduction (Conservative) 19,307.00 451.66 87.60 68.94 1,003.96 1,612.16 8.35 134.35 4.42 25,678.31 903.32 87.60 68.94 1,335.27 2,395.13 9.33 199.59 6.56 19,307.00 677.49 31.20 68.94 1,003.96 1,781.59 9.23 148.47 4.88 19,307.00 677.49 87.60 68.94 1,003.96 1,837.99 9.52 153.17 5.04
21% Reduction (TFP UI) 19,307.00 948.48 183.96 144.77 1,003.96 2,281.17 11.82 190.10 6.25 25,678.31 1,896.96 183.96 144.77 1,335.27 3,560.96 13.87 296.75 9.76 19,307.00 1,422.72 65.52 144.77 1,003.96 2,636.97 13.66 219.75 7.22 19,307.00 1,422.72 183.96 144.77 1,003.96 2,755.41 14.27 229.62 7.55
17% Reduction (2019 Rollback - Inflation Adjusted) 19,307.00 786.08 152.46 119.98 1,003.96 2,062.48 10.68 171.87 5.65 25,678.31 1,572.16 152.46 119.98 1,335.27 3,179.87 12.38 264.99 8.71 19,307.00 1,179.12 54.30 119.98 1,003.96 2,357.36 12.21 196.45 6.46 19,307.00 1,179.12 152.46 119.98 1,003.96 2,455.52 12.72 204.63 6.73

Pulling in microdata

# library(ipumsr)
# library(data.table)
# library(matrixStats)
# library(writexl)
# 
# ddi <- read_ipums_ddi("usa_00076.xml")
# acs_data <- read_ipums_micro(ddi, data_file = "usa_00076.dat", verbose = FALSE)
# acs_data <- as.data.table(acs_data)  #for those of you reading my code --- grouping by serial number for large datasets takes a long time. Last week I learned about the data.table library that helps speed this up. Apparently, it is much faster processing larger datasets. That is what I used here. 
# 
# 
# acs_data[, `:=`(
#   is_head = RELATE == 1,
#   is_spouse = RELATE == 2,
#   is_elderly = AGE >= 65,
#   is_child = AGE < 18,
#   has_medicaid_person = HINSCAID == 2,
#   has_foodstamps_person = FOODSTMP == 2
# )]
# 
# acs_data[, `:=`(
#   is_female_head = is_head & SEX == 2,
#   child_on_medicaid = is_child & has_medicaid_person,
#   elderly_on_medicaid = is_elderly & has_medicaid_person
# )]
# 
# #collapse to hh level
# hh_summary <- acs_data[, .(
#   hh_income = if (HHINCOME[1] < 9999999) HHINCOME[1] else NA_real_,
#   hh_weight = HHWT[1],
#   pov_pct = POVERTY[1],
#   famsize = .N,
#   num_parents = sum(is_head | is_spouse, na.rm = TRUE),
#   num_children = sum(is_child, na.rm = TRUE),
#   num_elderly = sum(is_elderly, na.rm = TRUE),
#   female_head = any(is_female_head),
#   all_foodstamps = all(has_foodstamps_person),
#   any_child_medicaid = any(child_on_medicaid),
#   any_elderly_medicaid = any(elderly_on_medicaid)
# ), by = SERIAL]
# 
# #apply poverty, foodstamps & medicaid filter
# hh_summary <- hh_summary[
#   pov_pct >= 1 & pov_pct < 200 &
#   !is.na(hh_income) & hh_income >= 0 &
#   all_foodstamps &
#   any_child_medicaid
# ]
# 
# #hh classification WITH famsize constraints!
# hh_summary[, household_type := fifelse(
#   num_parents == 1 & num_children == 1 & num_elderly == 0 & famsize == 2,
#   "Single Parent + Child",
#   fifelse(
#     num_parents == 1 & num_children == 1 & num_elderly == 1 & famsize == 3,
#     "Single Parent + Child + Elderly",
#     fifelse(
#       num_parents == 2 & num_children == 1 & num_elderly == 0 & famsize == 3,
#       "Two Parents + Child",
#       fifelse(
#         num_parents == 2 & num_children == 1 & num_elderly == 1 & famsize == 4,
#         "Two Parents + Child + Elderly",
#         "Other"
#       )
#     )
#   )
# )]
# 
# hh_summary <- hh_summary[household_type != "Other"]
# 
# #summarize by household type ONLY
# income_summary <- hh_summary[, .(
#   weighted_median_income = weightedMedian(hh_income, w = hh_weight, na.rm = TRUE),
#   unweighted_n = .N,
#   weighted_total = sum(hh_weight, na.rm = TRUE)
# ), by = household_type]
# 
# print(income_summary)
#