Vellora Research · Research report
Geographic Variation in Cardiovascular Health Across Texas Counties
A county-level secondary analysis of CDC PLACES estimates, CDC heart disease death rates and USDA rural-urban codes.
- Author
- Vellora Research
- Published
- 2026-10-23
- Type
- Independent secondary-data analysis; not peer reviewed
- Data
- BRFSS 2023 (via PLACES 2025); deaths 2022–2024
Abstract
Background. Heart disease is a leading cause of death in the United States.[1] This study describes how county-level measures of cardiovascular conditions, their risk factors and heart disease mortality vary across Texas’s 254 counties.
Methods. Ecological, cross-sectional analysis of CDC PLACES 2025 age-adjusted prevalence estimates (BRFSS 2023) for five risk factors and two conditions, CDC heart disease death rates for adults 35 and over (2022–2024) and USDA Rural-Urban Continuum Codes 2023. We report distributions, global Moran’s I with 9,999 permutations, Mann–Whitney tests comparing nonmetropolitan with metropolitan counties, and Spearman correlations with Benjamini–Hochberg adjustment. 253 counties had data; Loving County is suppressed by CDC in every source.
Results. The median county heart disease death rate was 402.1 per 100,000 (interquartile range 345.9–446.1), ranging from 205.3 (Presidio) to 808.0 (Polk). For all 7 PLACES measures, the median county’s 95% confidence interval was wider than the interquartile range across counties. All eight measures were positively spatially autocorrelated (Moran’s I 0.35–0.57, p ≤ 0.0001) and higher in nonmetropolitan counties (adjusted p ≤ 0.0033); the nonmetropolitan median death rate exceeded the metropolitan median by 53.9 per 100,000. Of the risk factors, current smoking had the strongest association with the death rate (ρ = 0.54, 95% CI 0.44 to 0.63); diagnosed diabetes showed no clear association (ρ = 0.09, 95% CI −0.03 to 0.22, adjusted p = 0.1323). Correlations between PLACES risk factors and PLACES condition estimates were very high (ρ 0.83–0.94) but are not independent evidence, because the estimates share a model.
Conclusions. Cardiovascular measures in Texas cluster geographically and are less favourable in nonmetropolitan counties. Current smoking and high blood pressure showed the clearest associations with the independently measured heart disease death rate, with overlapping confidence intervals. These are associations between counties, not causal effects, and they cannot be applied to individuals.
1. Introduction
CDC identifies high blood pressure, high cholesterol and smoking as key risk factors for heart disease, alongside diabetes, obesity, unhealthy diet, physical inactivity and excessive alcohol use.[2] National surveillance has reported higher age-adjusted heart disease death rates in nonmetropolitan than in metropolitan areas.[12] Texas has 254 counties, from large metropolitan counties to very small rural ones, so county measures can show where cardiovascular burden is concentrated within the state.
County estimates for small populations are uncertain, and many are produced by statistical models rather than counted. This report therefore asks narrow, descriptive questions, reports uncertainty alongside every estimate, and separates associations that rest on independent data from those that do not.
2. Research questions
- How much do county estimates of cardiovascular conditions, risk factors and heart disease mortality vary across Texas, relative to their uncertainty?
- Are these measures geographically clustered?
- Do they differ between metropolitan and nonmetropolitan counties?
- How strongly do county risk-factor estimates track county condition estimates and heart disease death rates?
3. Data sources
| Measure | Role | Definition | Source and years |
|---|---|---|---|
| High blood pressure among adults | Risk factor | Adults ever told by a health professional they have high blood pressure (excluding only during pregnancy, or borderline) | CDC PLACES 2025, age-adjusted prevalence, BRFSS 2023[3, 6, 7] |
| Diagnosed diabetes among adults | Risk factor | Adults told by a health professional they have diabetes (excluding during pregnancy) | CDC PLACES 2025, age-adjusted prevalence, BRFSS 2023[3, 6, 7] |
| Obesity among adults | Risk factor | Adults with a body mass index of 30 or more, from self-reported height and weight | CDC PLACES 2025, age-adjusted prevalence, BRFSS 2023[3, 6, 7] |
| Current cigarette smoking among adults | Risk factor | Adults who have smoked at least 100 cigarettes and now smoke every day or some days | CDC PLACES 2025, age-adjusted prevalence, BRFSS 2023[3, 6, 7] |
| No leisure-time physical activity among adults | Risk factor | Adults reporting no physical activity or exercise outside their regular job in the past month | CDC PLACES 2025, age-adjusted prevalence, BRFSS 2023[3, 6, 7] |
| Coronary heart disease among adults | Outcome | Adults ever told they had angina or coronary heart disease | CDC PLACES 2025, age-adjusted prevalence, BRFSS 2023[3, 6, 7] |
| Stroke among adults | Outcome | Adults ever told they had a stroke | CDC PLACES 2025, age-adjusted prevalence, BRFSS 2023[3, 6, 7] |
| Heart disease death rate, adults 35+ | Outcome | Deaths with heart disease as the underlying cause (ICD-10 I00–I09, I11, I13, I20–I51), age-standardized to the 2000 U.S. population, 3-year average, spatially smoothed | CDC, National Vital Statistics System, 2022–2024[8, 9] |
| Metropolitan status | Grouping | Rural-Urban Continuum Code 1–3 (metropolitan) or 4–9 (nonmetropolitan), from the 2023 OMB metro delineation | USDA ERS, 2023[10] |
PLACES estimates are produced by multilevel regression and poststratification: a model fitted to BRFSS survey responses with some or all of individual age, sex, race and ethnicity and education, county poverty and state and county random effects, applied to census population counts. CDC reports each estimate with a 95% confidence interval from 1,000 Monte Carlo simulations.[4] CDC states that age-adjusted estimates can be used for county comparisons, that confidence intervals must be considered, that the estimates should not be used to rank counties’ overall health, and that they cannot track change over time.[5]
All files were downloaded from the publishers and validated: one record per county and measure, Census FIPS codes and names matching Vellora’s county boundaries, a single observation year per measure, and every value inside its published interval. The crude PLACES values also matched Vellora’s previously verified copy exactly, and the 2020 populations in the RUCC file sum to the Texas census total of 29,145,505. Of the 254 counties, 86 are metropolitan and 168 nonmetropolitan; metropolitan counties held 90% of the 2020 population.
4. Methodology
- Design and unit. Ecological cross-sectional analysis with the county as the unit. Every county counts once, whatever its population; no result is a statewide estimate. Loving County, suppressed by CDC in every source, is excluded, leaving 253 counties.
- Prevalence type. Age-adjusted PLACES prevalence is used throughout because counties’ age structures differ.[5, 11] Crude prevalence is analysed as a sensitivity check.
- Variation (RQ1). Median, interquartile range, 10th–90th percentile ratio and range for each measure, with the median width of the published 95% intervals for PLACES measures. Quantiles use linear interpolation (type 7).
- Clustering (RQ2). Global Moran’s I[13] with row-standardised contiguity weights (counties sharing a boundary within Texas) and a one-sided permutation test with 9,999 permutations, so the smallest attainable p-value is 0.0001.
- Metropolitan comparison (RQ3). Two-sided Mann–Whitney U tests[14] (normal approximation with tie and continuity corrections) of nonmetropolitan against metropolitan counties, reported with the difference in medians and the probability that a randomly chosen nonmetropolitan county has the higher value.
- Associations (RQ4). Spearman rank correlations between each of the five risk factors and each of the three outcomes (15 tests), with 95% confidence intervals from the Fisher z transform using the Bonett–Wright standard error.[16] Spearman’s ρ was chosen because it does not assume linear relationships or normal distributions.
- Multiple testing. Benjamini–Hochberg false discovery rate adjustment[15] within each table; adjusted p-values below 0.05 are described as statistically significant. No regression model was fitted, for reasons given under Limitations.
5. Results
5.1 Variation across counties
The heart disease death rate varied most in relative terms: the county at the 90th percentile had a rate 1.67 times the county at the 10th. Among PLACES measures, the 90th-to-10th percentile ratio ranged from 1.19 (high blood pressure) to 1.54 (diabetes). However, for every PLACES measure the typical county’s 95% interval was wider than the spread between the middle half of counties (Table 1), so most differences between individual counties lie within the uncertainty of the estimates.
| Measure | n | Median (IQR) | P90 ÷ P10 | Lowest | Highest | Median 95% CI width |
|---|---|---|---|---|---|---|
| High blood pressure | 253 | 33.5 (32.2–35.1) | 1.19 | 28.0 (Travis) | 40.0 (San Augustine) | 8.2 pts |
| Diabetes | 253 | 12.2 (11.0–13.7) | 1.54 | 8.7 (Rockwall) | 21.5 (Dimmit) | 3.4 pts |
| Obesity | 253 | 37.5 (35.7–39.6) | 1.22 | 29.4 (Fort Bend) | 48.2 (Zavala) | 16.9 pts |
| Current smoking | 253 | 15.3 (13.7–16.6) | 1.42 | 9.0 (Collin) | 22.9 (Newton, San Augustine) | 5.6 pts |
| No leisure-time activity | 253 | 29.6 (26.8–33.0) | 1.53 | 19.9 (Collin, Kendall) | 48.9 (Dimmit) | 10.2 pts |
| Coronary heart disease | 253 | 5.9 (5.5–6.4) | 1.33 | 4.3 (Collin) | 8.5 (Dimmit) | 1.5 pts |
| Stroke | 253 | 3.3 (3.0–3.6) | 1.41 | 2.3 (Collin) | 4.8 (Dimmit) | 0.7 pts |
| Heart disease deaths | 253 | 402.1 (345.9–446.1) | 1.67 | 205.3 (Presidio) | 808.0 (Polk) | Not published |
5.2 Geographic clustering
Every measure was positively spatially autocorrelated: neighbouring counties had more similar values than random placement would produce (Table 2). Moran’s I ranged from 0.35 (high blood pressure) to 0.57 (diabetes), against an expected value of −0.004 under no clustering, and no permutation produced a value as large as the observed one for any measure.
| Measure | Moran’s I | Permutation p |
|---|---|---|
| High blood pressure | 0.35 | ≤ 0.0001 |
| Diabetes | 0.57 | ≤ 0.0001 |
| Obesity | 0.36 | ≤ 0.0001 |
| Current smoking | 0.38 | ≤ 0.0001 |
| No leisure-time activity | 0.52 | ≤ 0.0001 |
| Coronary heart disease | 0.37 | ≤ 0.0001 |
| Stroke | 0.35 | ≤ 0.0001 |
| Heart disease deaths | 0.56 | ≤ 0.0001 |
5.3 Metropolitan and nonmetropolitan counties
All eight measures had higher medians in the 167 nonmetropolitan counties with data than in the 86 metropolitan counties, and every difference was statistically significant after adjustment (Table 3). The probability that a randomly chosen nonmetropolitan county had the higher value ranged from 0.61 to 0.73, where 0.5 would mean no difference. The largest separations were for coronary heart disease (0.73) and current smoking (0.73).
| Measure | Median, nonmetro | Median, metro | Difference | P(nonmetro higher) | Adjusted p |
|---|---|---|---|---|---|
| High blood pressure | 33.9 | 32.95 | +0.95 | 0.64 | 0.0004 |
| Diabetes | 12.5 | 11.6 | +0.9 | 0.61 | 0.0033 |
| Obesity | 38.0 | 36.4 | +1.6 | 0.63 | 0.0012 |
| Current smoking | 15.9 | 14.1 | +1.8 | 0.73 | < 0.0001 |
| No leisure-time activity | 30.5 | 27.75 | +2.75 | 0.66 | < 0.0001 |
| Coronary heart disease | 6.1 | 5.6 | +0.5 | 0.73 | < 0.0001 |
| Stroke | 3.4 | 3.1 | +0.3 | 0.68 | < 0.0001 |
| Heart disease deaths | 415.1 | 361.2 | +53.9 | 0.67 | < 0.0001 |
5.4 Risk factors and outcomes
Heart disease death rate. This outcome comes from death records, a source independent of the PLACES model. Its correlations with the risk factors, from strongest to weakest, were: current smoking (ρ = 0.54, 95% CI 0.44 to 0.63); high blood pressure (ρ = 0.37, 95% CI 0.26 to 0.48); obesity (ρ = 0.19, 95% CI 0.07 to 0.31); no leisure-time activity (ρ = 0.16, 95% CI 0.03 to 0.28); diabetes (ρ = 0.09, 95% CI −0.03 to 0.22). All except diabetes were statistically significant after adjustment (diabetes: adjusted p = 0.1323). Only current smoking and high blood pressure exceeded ρ = 0.3; the others were weak.
PLACES condition estimates. Correlations between the five risk factors and age-adjusted coronary heart disease and stroke prevalence were very high (ρ 0.83–0.94). Because all seven PLACES measures are predicted by models fitted to the same survey, drawing on the same set of candidate covariates (individual age, sex, race and ethnicity and education, and county poverty),[4] these correlations partly reflect the model and cannot be read as independent evidence of a relationship.
| Risk factor | Outcome | ρ (95% CI) | Adjusted p | ρ, crude |
|---|---|---|---|---|
| High blood pressure | Coronary heart disease | 0.89 (0.85 to 0.92) | < 0.0001 | 0.96 |
| High blood pressure | Stroke | 0.94 (0.92 to 0.96) | < 0.0001 | 0.95 |
| High blood pressure | Heart disease deaths | 0.37 (0.26 to 0.48) | < 0.0001 | 0.31 |
| Diabetes | Coronary heart disease | 0.83 (0.79 to 0.87) | < 0.0001 | 0.74 |
| Diabetes | Stroke | 0.84 (0.79 to 0.88) | < 0.0001 | 0.79 |
| Diabetes | Heart disease deaths | 0.09 (−0.03 to 0.22) | 0.1323 | 0.14 |
| Obesity | Coronary heart disease | 0.83 (0.78 to 0.87) | < 0.0001 | 0.27 |
| Obesity | Stroke | 0.85 (0.80 to 0.89) | < 0.0001 | 0.38 |
| Obesity | Heart disease deaths | 0.19 (0.07 to 0.31) | 0.0024 | 0.21 |
| Current smoking | Coronary heart disease | 0.86 (0.82 to 0.89) | < 0.0001 | 0.53 |
| Current smoking | Stroke | 0.86 (0.82 to 0.89) | < 0.0001 | 0.64 |
| Current smoking | Heart disease deaths | 0.54 (0.44 to 0.63) | < 0.0001 | 0.56 |
| No leisure-time activity | Coronary heart disease | 0.86 (0.82 to 0.89) | < 0.0001 | 0.40 |
| No leisure-time activity | Stroke | 0.84 (0.79 to 0.88) | < 0.0001 | 0.48 |
| No leisure-time activity | Heart disease deaths | 0.16 (0.03 to 0.28) | 0.0130 | 0.18 |
Sensitivity to age adjustment. Several associations changed markedly with crude prevalence. Obesity and coronary heart disease, for example, correlated at ρ = 0.83 with age-adjusted estimates but 0.27 with crude estimates. Crude county prevalence partly reflects age structure, which affects some measures more than others, so the choice of prevalence type matters for this kind of comparison.
Outcomes with each other. Coronary heart disease and stroke prevalence correlated with the death rate at ρ = 0.34 and 0.35, far less than with each other (ρ = 0.96), again consistent with shared modelling among PLACES measures.
Current smoking and heart disease deaths by county
Spearman ρ = 0.54 (95% CI 0.44 to 0.63), n = 253, BH-adjusted p < 0.0001
6. Discussion
Across Texas counties, cardiovascular conditions, their risk factors and heart disease deaths are unevenly distributed, geographically clustered and less favourable outside metropolitan areas. The metropolitan–nonmetropolitan pattern in heart disease mortality is consistent with national CDC surveillance reporting higher age-adjusted heart disease death rates in nonmetropolitan areas.[12] Because the death rate is age-standardized, the difference is not an artefact of nonmetropolitan counties having older populations, though this study cannot say what does explain it.
The most informative associations are those with the death rate, because it is measured independently of the PLACES model. Current smoking and high blood pressure, both identified by CDC as key heart disease risk factors,[2] showed the clearest county-level associations with it. The weak association for diabetes, despite CDC listing it as a heart disease risk factor,[2] illustrates why county correlations should not be used to judge the importance of a risk factor for individuals: county averages can hide very different relationships among the people within them.[17]
The very high agreement between PLACES risk factors and PLACES condition estimates is best read as a property of the estimates rather than a finding about disease. Readers comparing PLACES measures with one another should expect such correlations and look to independent outcomes, such as vital records, for confirmation.
7. Limitations
- Ecological design. Associations between counties do not show associations between individuals, and none of the results is causal.[17]
- Modelled estimates. PLACES values are model predictions, not counts, and share inputs. Correlations among them are inflated by design, and the models’ county random effects and shared covariates can also add spatial smoothness to the Moran’s I results.[4]
- Uncertainty. Many county intervals are wide (Table 1). CDC advises against drawing conclusions from estimates with very broad intervals and against ranking counties.[5] This report names the counties at each extreme only to describe the range, not to rank them.
- Self-report and diagnosis. Condition and risk-factor measures count adults who report a diagnosis or behaviour; undiagnosed conditions are missed, and access to care can affect diagnosis rates.
- Different populations and standards. PLACES covers adults 18 and over; the death rate covers adults 35 and over, age-standardized to the 2000 U.S. population.[8, 11] The two kinds of measure are never put on one scale.
- Smoothing and timing. CDC spatially smooths the death rates, borrowing information from neighbouring counties,[9] which raises their Moran’s I. Survey data are from 2023 and deaths from 2022–2024, so the measures are close in time but not identical.
- Boundaries and groups. Contiguity uses Texas counties only, so border counties have fewer neighbours (El Paso County has one). The metropolitan split is a coarse two-way grouping of a nine-level code.
- No adjustment for confounders. No regression was fitted: the PLACES predictors are highly collinear and share model inputs, so coefficients would be unstable and hard to interpret. Income, race and ethnicity, access to care and other factors that differ between counties were not controlled.
- Unweighted. Each county counts once; the 168 nonmetropolitan counties held 10% of the population, so results describe counties, not the average Texan.
8. Conclusion
Using only public CDC and USDA data, this analysis finds that cardiovascular measures across Texas counties are geographically clustered and consistently less favourable in nonmetropolitan counties, and that current smoking and high blood pressure are the risk-factor estimates most closely associated with county heart disease death rates. The evidence is descriptive and ecological. It can help direct attention to places and questions worth studying further, but it cannot identify causes or describe any individual’s risk.
9. References
- [1] Centers for Disease Control and Prevention. Heart Disease Facts. Accessed 2026-10-18. https://www.cdc.gov/heart-disease/data-research/facts-stats/index.html
- [2] Centers for Disease Control and Prevention. Heart Disease Risk Factors. Accessed 2026-10-18. https://www.cdc.gov/heart-disease/risk-factors/index.html
- [3] Centers for Disease Control and Prevention. PLACES: Local Data for Better Health, County Data, 2025 release (dataset swc5-untb; rows updated 2025-12-04). Accessed 2026-10-22. https://data.cdc.gov/d/swc5-untb
- [4] Centers for Disease Control and Prevention. PLACES: Methodology. Accessed 2026-10-22. https://www.cdc.gov/places/methodology/index.html
- [5] Centers for Disease Control and Prevention. PLACES: Frequently Asked Questions. Accessed 2026-10-22. https://www.cdc.gov/places/faqs/index.html
- [6] Centers for Disease Control and Prevention. PLACES Measure Definitions: Health Risk Behaviors. Accessed 2026-10-22. https://www.cdc.gov/places/measure-definitions/health-risk-behaviors.html
- [7] Centers for Disease Control and Prevention. PLACES Measure Definitions: Health Outcomes. Accessed 2026-10-22. https://www.cdc.gov/places/measure-definitions/health-outcomes.html
- [8] Centers for Disease Control and Prevention, Division for Heart Disease and Stroke Prevention. Heart Disease Mortality Data Among US Adults (35+) by State/Territory and County – 2022–2024 (dataset mri7-5jtw). Accessed 2026-10-18. https://data.cdc.gov/d/mri7-5jtw
- [9] Centers for Disease Control and Prevention. Atlas of Heart Disease and Stroke: Statistical Methods. Accessed 2026-10-22. https://www.cdc.gov/heart-disease-stroke-atlas/statistical-methods/index.html
- [10] U.S. Department of Agriculture, Economic Research Service. Rural-Urban Continuum Codes, 2023 (data and documentation). Accessed 2026-10-22. https://www.ers.usda.gov/data-products/rural-urban-continuum-codes
- [11] National Center for Health Statistics. Age adjustment. Health, United States: Sources and Definitions. Accessed 2026-10-22. https://www.cdc.gov/nchs/hus/sources-definitions/age-adjustment.htm
- [12] Moy E, Garcia MC, Bastian B, et al. Leading causes of death in nonmetropolitan and metropolitan areas — United States, 1999–2014. MMWR Surveill Summ. 2017;66(1):1–8. https://doi.org/10.15585/mmwr.ss6601a1
- [13] Moran PAP. Notes on continuous stochastic phenomena. Biometrika. 1950;37(1/2):17–23. https://doi.org/10.2307/2332142
- [14] Mann HB, Whitney DR. On a test of whether one of two random variables is stochastically larger than the other. Ann Math Stat. 1947;18(1):50–60. https://doi.org/10.1214/aoms/1177730491
- [15] Benjamini Y, Hochberg Y. Controlling the false discovery rate: a practical and powerful approach to multiple testing. J R Stat Soc Series B. 1995;57(1):289–300. https://doi.org/10.1111/j.2517-6161.1995.tb02031.x
- [16] Bonett DG, Wright TA. Sample size requirements for estimating Pearson, Kendall and Spearman correlations. Psychometrika. 2000;65(1):23–28. https://doi.org/10.1007/BF02294183
- [17] Robinson WS. Ecological correlations and the behavior of individuals. Am Sociol Rev. 1950;15(3):351–357. https://doi.org/10.2307/2087176
10. Reproducibility
Every number in this report, its PDF and its figures is read from one results file, generated by the analysis code below from the published input files. The permutation tests use a fixed seed (20261022), so rerunning the analysis gives identical results. An independent Python implementation using SciPy and NumPy recomputed every descriptive statistic, correlation, confidence interval, Mann–Whitney test, adjusted p-value and Moran’s I and matched the results file; its own permutation tests also gave p ≤ 0.001 for every measure.
- Study inputs (JSON)CDC PLACES 2025 age-adjusted and crude prevalence, RUCC 2023 and 2020 population for all 254 counties
- Results (JSON)Every statistic reported here, with per-county values
- Analysis code (TypeScript)The analysis that produced the results file
- Data download scriptDownloads and validates the inputs from data.cdc.gov and USDA ERS
- Independent check (Python)Recomputes every statistic with SciPy and NumPy
- Heart disease mortality input (JSON)Vellora’s verified copy of CDC’s county death rates
To reproduce: download the inputs with node scripts/fetch-cardio-study.mjs, regenerate the results with npm run research:cardio, and check them with uvx --with scipy --with numpy python scripts/verify-cardio-study.py. CDC may revise its datasets; results here use the versions recorded in the inputs file.