← All studies · askamerica.ai

Poverty, not just geography, is the strongest predictor of worse state-level health outcomes in the US

CDC NCHS mortality, ACS poverty/income, USDA ERS rurality — 50 states + DC, most recent available 10-year window (2008-2017)

What kind of place has worse health? Poverty leads, rurality adds on top Age-adjusted all-cause mortality, 50-state average 2008-2017 (CDC NCHS, most recent available 10-year window) Poverty-rate coefficient (OLS, controlling for rurality & income) +16.3 deaths/100k per +1pp poverty p=0.002, robust to leave-one-out 50-state regression, 2008-2017 averages Mortality gap: 10 poorest vs 10 richest states ~250 deaths per 100,000/yr ~30% higher Age-adjusted, all-cause Highest-poverty vs lowest-poverty states, age-adjusted mortality 0 200 400 600 800 1,000 State Deaths per 100k MS WV AL KY OK AR LA TN SC IN ... MN CT NY CA HI 10 highest-poverty states (left) vs. 10 lowest-poverty states (right) Poverty rate vs. age-adjusted mortality, 50 states 500 600 700 800 900 1,000 Poverty rate (%) Deaths per 100k 8 10 12 14 16 18 20 22 24 r=0.71 (p<0.001); poverty rate alone explains about half the state-to-state spread CDC NCHS state mortality (health.cdc_mortality) has no all-cause data loaded past 2019 (a data gap logged separately) so the true available 10-year window is 2008-2017, not 2016-2025. Rurality is a single 2022 USDA ERS RUCC snapshot (not a 10-year series) applied as a structural state characteristic. DC excluded from regression as a non-state outlier. AskAmerica · askamerica.ai
SVG

Summary

Across US states over roughly the last available 10-year window of comparable federal mortality data (2008-2017 — see data-availability note below), the strongest, most robust predictor of worse health is poverty, not rurality or region per se. A one-percentage-point increase in a state's poverty rate is associated with about 16 additional age-adjusted deaths per 100,000 residents per year, controlling for rurality and per-capita income (p=0.002, survives leave-one-out testing on all 50 states). Poverty rate alone correlates with state mortality at r=0.71. Rurality (share of population in USDA-defined nonmetro counties) adds a smaller, only marginally significant effect on top of poverty (p=0.06-0.09 depending on specification) — consistent with a large published literature finding a widening rural-urban mortality gap, but in this cross-sectional analysis the poverty gradient dominates. Once poverty is controlled for, per-capita income has no additional independent effect (its own bivariate correlation with mortality, r=-0.73, is almost entirely explained by its overlap with poverty, r=-0.78 between the two). In short: the kind of place with worse health is a poor place, whether or not it is also a rural place — the poorest 10 states average roughly 250 more deaths per 100,000 per year (about 30% higher) than the 10 richest.

What the published literature says

Three independent literatures converge on the same broad picture, which this analysis was built to test against real state data rather than just cite:

Method — what this report computed from AskAmerica data

Outcome: state-average age-adjusted all-cause mortality rate (deaths per 100,000, CDC NCHS multi-cause file, health.cdc_mortality). Predictors: average poverty rate (census.poverty_rate, ACS-based), USDA ERS Rural-Urban Continuum nonmetro population share by state (geo.rural_urban_continuum), and per-capita income (census.acs_income). Grain: 50 states (DC excluded as a non-state outlier — it is 100% 'metro' by construction and has anomalously high income and mortality simultaneously). n=50.

A genuine data-availability finding, not a choice: the question asked about "the last ten years," but health.cdc_mortality turns out to carry no all-cause mortality for any year after 2019 — its 2020-2023 rows exist only for cause_name='COVID-19', and its age-adjusted annual series stops at 2017 entirely (this is a real coverage gap in the CDC-sourced table, logged as a data-quality issue during this analysis, not a modeling choice). The county-grain County Health Rankings premature-death table that would have given a more current, finer-grained outcome (health.chr_premature_death) also failed to load (S3/storage error, also logged). Given that, the true "last ten years" of usable state all-cause mortality in this corpus is 2008-2017, which is what this report uses and states explicitly rather than silently substituting or reporting a false current-decade window.

Regression: OLS of mortality rate on poverty rate, nonmetro population share, and per-capita income (in $1,000s), all averaged over 2008-2017 (rurality is a single 2022 cross-section, the only vintage USDA has published in this corpus, applied as a structural characteristic). R²=0.57, F=20.7 (p<0.001, n=50). VIF for all three predictors is under 4 (no problematic multicollinearity, checked with correlation_matrix before regressing). The poverty coefficient was leave-one-out tested across all 50 states: it never flips sign or crosses p=0.05 when any single state is dropped (coefficient ranges 12.5 to 18.7 across the 50 refits) — a genuinely robust finding, not one state's artifact. A quintile-binned dose-response test on rurality alone (no controls) shows a mostly-monotonic rise in mortality with nonmetro share (trend p=0.05), consistent with, but weaker than, the poverty effect.

Regression results

Intercept584.9189.90.003
Poverty rate (pp)+16.35.10.002
Nonmetro population share (pp)+1.170.610.061
Per-capita income ($1,000s)-3.04.20.478 (n.s.)
Intercept584.9189.90.003
Nonmetro population share (pp)+1.170.610.061
Per-capita income ($1,000s)-3.04.20.478 (n.s.)
Poverty rate (pp)+16.35.10.002
Intercept584.9189.90.003
Poverty rate (pp)+16.35.10.002
Nonmetro population share (pp)+1.170.610.061
Per-capita income ($1,000s)-3.04.20.478 (n.s.)
Intercept584.9189.90.003
Poverty rate (pp)+16.35.10.002
Per-capita income ($1,000s)-3.04.20.478 (n.s.)
Nonmetro population share (pp)+1.170.610.061
Nonmetro population share (pp)+1.170.610.061
Intercept584.9189.90.003
Poverty rate (pp)+16.35.10.002
Per-capita income ($1,000s)-3.04.20.478 (n.s.)

R²=0.574, adj. R²=0.547, n=50 states (DC excluded). Interpreting the coefficients together: a state one standard deviation poorer (roughly +3.5 points of poverty rate) is predicted to have about 57 more deaths per 100,000 per year than an otherwise-similar state — a large, statistically decisive effect. Rurality's own effect, net of poverty, is smaller and only marginally significant at conventional thresholds; income adds nothing once poverty is already in the model, because the two are themselves correlated at r=-0.78 across states.

Caveats

What This Report Does Not Answer

Sources

  1. CDC NCHS state mortality, age-adjusted rate, 2008-2017 — health.cdc_mortality, cause_name='All causes', source_type='annual'
    Show SQL
    SELECT sr.state_name, AVG(CAST(m.age_adjusted_rate AS DOUBLE)) AS avg_mortality_rate FROM health.cdc_mortality m JOIN geo.state_ref sr ON sr.state_name=m.state WHERE m.cause_name='All causes' AND m.source_type='annual' AND CAST(m."year" AS INTEGER) BETWEEN 2008 AND 2017 GROUP BY sr.state_name
  2. ACS state poverty rate, 2009-2017 — census.poverty_rate
    Show SQL
    SELECT state, AVG(poverty_rate_pct) AS avg_poverty_rate FROM census.poverty_rate WHERE CAST("year" AS INTEGER) BETWEEN 2009 AND 2017 GROUP BY state
  3. USDA ERS Rural-Urban Continuum Codes, 2022 vintage — geo.rural_urban_continuum, population-weighted nonmetro share by state
    Show SQL
    SELECT state_fips, CAST(SUM(CASE WHEN metro_nonmetro='Nonmetro' THEN population ELSE 0 END) AS DOUBLE)/NULLIF(SUM(population),0) AS nonmetro_share FROM geo.rural_urban_continuum GROUP BY state_fips
  4. ACS per-capita and median household income, 2009-2017 — census.acs_income, state level
    Show SQL
    SELECT state, AVG(per_capita_income) AS avg_income FROM census.acs_income WHERE county IS NULL AND CAST("year" AS INTEGER) BETWEEN 2009 AND 2017 GROUP BY state
  5. OLS regression: mortality ~ poverty + rurality + income
    Show tool call
    ols_regression(outcome="avg_mortality_rate", predictors=["avg_poverty_rate","nonmetro_pct","avg_income_k"])
  6. Leave-one-out sensitivity test on poverty coefficient
    Show tool call
    sensitivity_analysis(term="avg_poverty_rate", group_col="state_name")
  7. Correlation matrix and VIF check
    Show tool call
    correlation_matrix(columns=["avg_mortality_rate","avg_poverty_rate","nonmetro_pct","avg_income"])
  8. Rurality dose-response (quintile binning test)
    Show tool call
    quantile_binning_test(outcome="avg_mortality_rate", predictor="nonmetro_pct", bins=5)
  9. USDA ERS: The Nature of the Rural-Urban Mortality Gap
  10. CBS News: City-country mortality gap widens amid persistent holes in rural health care access
  11. CDC: Leading Causes of Death in Rural America
  12. America's Health Rankings: state-by-state rural health insights
  13. Rural Health Information Hub: Rural Health Disparities Overview
  14. Opportunity Insights: The Association Between Income and Life Expectancy in the United States
  15. Sarraju et al., Impacts of Poverty and Lifestyles on Mortality, AJPM 2024
  16. RWJF: Health, Income, and Poverty
  17. Health Affairs: Health, Income, and Poverty brief