Methodology

Urban Sprawl & the Cost of Public Services — Replication of Carruthers & Ulfarsson (2003) with 2012–2022 data.

← Back to Dashboard Reproducibility Guide →
1. The Original Study

Carruthers & Ulfarsson (2003), “Urban Sprawl and the Cost of Public Services,” published in the Journal of Planning Education and Research, analyzed how urban development patterns are associated with per capita public service costs across 283 metropolitan counties in 14 fast-growing US states.

The study used 1982–1992 data drawn primarily from the USDA National Resources Inventory (NRI) for land-use variables and the Census of Governments for fiscal data. The key independent variable was “density,” defined as the sum of population and employment divided by urbanized land area.

The authors estimated a semilog OLS model with state fixed effects (13 dummies for the 14 states, Texas omitted) and White’s HC1 heteroscedasticity-consistent standard errors. The dependent variable was the natural log of per capita expenditure in each of 12 service categories, and observations with zero expenditure were dropped prior to the log transformation.

Key finding: Higher density was associated with lower per capita costs for most public services. The density coefficient was negative and statistically significant in categories such as total direct expenditure, roadways, police protection, and education.

2. Our Replication

This project replicates the original analysis using updated data from the same 14 fast-growing states: Arizona, California, Colorado, Florida, Georgia, Idaho, Nevada, New Mexico, North Carolina, Oregon, Tennessee, Texas, Utah, and Washington.

A note on authorship: This replication was built by a non-academic researcher using Claude Code (Anthropic’s AI coding assistant). The entire pipeline — data collection, panel construction, regression analysis, and interactive output — was developed through human–AI collaboration. Every methodological choice, specification design, and interpretation was made with careful attention to the original paper’s approach and the conventions of applied economics. The code, data, and results are fully reproducible and open for scrutiny.

Key differences from the original

  • Time period: 2012, 2017, and 2022 (three Census of Governments waves), compared to the original’s 1982–1992 data.
  • Data sources: Census Bureau data throughout — American Community Survey (ACS), County Business Patterns (CBP), Census of Governments finance and organization files, and CBSA delineation files — rather than the USDA NRI used in the original.
  • Sample: 394 metropolitan counties (defined using 2023 CBSA delineations; 393 in 2012/2017, 362 in 2022), yielding 1,148 county-year observations across the 3-year panel.
  • Inflation adjustment: All dollar amounts are deflated to real 2022 dollars using CPI-U annual averages, allowing valid comparison across the three panel years.
  • Methodology upgrade: A 6-specification robustness ladder replaces the single original specification, adding county fixed effects, clustered standard errors, demographic controls, and endogeneity tests.
3. The Model

Regression equation

ln(eit) = α + λj + τt + β · Xit + εit

Where:

  • ln(eit) — natural log of per capita expenditure in category for county i in year t
  • α — intercept
  • λj — fixed effects (state or county, depending on specification)
  • τt — year fixed effects (2012 omitted as reference)
  • Xit — vector of independent variables
  • εit — error term

Independent variables

Variable Definition Specs
density (population + employment) / urban_land_acres All (1–6)
urban_land_acres Urbanized land area in acres (time-varying: 2010 or 2020 UA vintage) All (1–6)
property_value_per_acre Owner-occupied housing value / urban_land_acres (real 2022$). Omits commercial, industrial, and rental property values. All (1–6)
per_capita_municipal_govts Municipal governments per 1,000 residents All (1–6)
per_capita_special_districts Special districts per 1,000 residents All (1–6)
central_city 1 if county contains a CBSA principal city, 0 otherwise All (1–6)
per_capita_local_tax_revenue Local tax revenue per capita (real 2022$) 1–4, 6
per_capita_intergov_revenue Intergovernmental revenue per capita (real 2022$) 1–4, 6
poverty_rate Share of population below the poverty line 3–6
pct_under_18 Share of population under 18 years of age 3–6
pct_65_plus Share of population aged 65 and over 3–6

Interpreting the coefficients

Semi-elasticity interpretation: Because the dependent variable is in natural logs and the independent variables are in levels, each coefficient is a semi-elasticity. A coefficient of 0.005 on a variable means that a one-unit increase in that variable is associated with an approximately 0.5% increase in per capita spending, holding all other variables constant. For larger effects, the exact percentage change is 100 × (eβ − 1).
4. The Specification Ladder

Rather than reporting a single regression, we estimate six progressively different specifications for each of the 12 expenditure categories (72 regressions total). This “spec ladder” approach reveals how sensitive the density–spending relationship is to modeling choices and helps distinguish robust findings from specification-dependent artifacts.

Spec 1 — Baseline (Original Paper Match)

Fixed effects: State FE (13 dummies, TX omitted) + Year FE

Standard errors: White’s HC1 heteroscedasticity-consistent

Dependent variable: ln(per capita expenditure), dropping zeros

Controls: 6 base variables + 2 revenue variables

Purpose: Direct comparison with the original 2003 findings. This is the specification closest to what Carruthers & Ulfarsson estimated, applied to our updated data.

Spec 2 — County Fixed Effects

What changed: Replace state FE with county FE (up to 394 dummies); switch from HC1 to clustered standard errors (by county).

Fixed effects: County FE + Year FE

Standard errors: Clustered by county

Why it matters: County FE absorb all time-invariant county characteristics (geography, institutional history, political culture). Identification comes solely from within-county variation over time. If the density effect disappears under county FE, the original cross-sectional finding was likely driven by omitted county-level confounders rather than density itself.

How to interpret differences from Spec 1: A large change signals that persistent county traits were confounding the state-FE estimate. Clustered SEs also account for serial correlation within counties.

Spec 3 — Need/Demand Controls

What changed: Add poverty_rate, pct_under_18, and pct_65_plus as additional controls.

Fixed effects: County FE + Year FE

Standard errors: Clustered by county

Why it matters: Separates cost pressure from service demand. Counties with higher poverty rates or larger elderly/youth populations may spend more regardless of their density. Without these controls, the density coefficient may absorb demographic demand effects.

How to interpret differences from Spec 2: If the density coefficient changes substantially, it suggests that demographic composition was partially confounding the density–spending relationship.

Spec 4 — Zero-Inclusive (log1p)

What changed: Use ln(1 + y) instead of ln(y) as the dependent variable. All observations are retained, including those with zero expenditure.

Fixed effects: County FE + Year FE

Standard errors: Clustered by county

Why it matters: Avoids sample selection bias from dropping zero-expenditure observations. This is particularly important for categories like libraries, trash collection, and other transportation, where many counties report zero spending. Dropping these counties changes the composition of the estimation sample and may bias results.

How to interpret differences from Spec 3: Large differences indicate that the zero-expenditure counties are systematically different, and the ln(y) results may reflect sample selection rather than a true density–spending relationship.

Spec 5 — Revenue Exclusion

What changed: Drop per_capita_local_tax_revenue and per_capita_intergov_revenue from the model.

Fixed effects: County FE + Year FE

Standard errors: Clustered by county

Why it matters: Revenue and expenditure are jointly determined through the budget identity: a local government that collects more revenue will almost mechanically spend more. Including revenue as a right-hand-side control creates endogeneity bias and may absorb the very variation in spending we are trying to explain. This specification tests how much the density estimate depends on conditioning on revenue.

How to interpret differences from Spec 3: If the density coefficient changes substantially when revenue is excluded, it suggests the Spec 3 estimate is partly driven by the budget identity channel rather than a direct density–cost relationship.

Spec 6 — State FE with Modern Controls

What changed: Revert to state FE (like Spec 1) but include the demographic controls (poverty_rate, pct_under_18, pct_65_plus) added in Spec 3. HC1 standard errors.

Fixed effects: State FE + Year FE

Standard errors: HC1

Why it matters: Shows what the original paper’s specification would look like with additional demographic controls. By comparing Spec 6 to Spec 1 and to Spec 3, we can distinguish whether differences between the baseline and the county-FE model come from the change in fixed effects or from the addition of demographic controls.

How to interpret: If Spec 6 ≈ Spec 1, the demographic controls do not matter much under state FE. If Spec 6 ≈ Spec 3, the FE level does not matter much once demographics are included. If Spec 6 differs from both, both channels matter.

Summary comparison

Spec FE SE DV Revenue Demographics
1 State HC1 ln(y) Yes No
2 County Cluster ln(y) Yes No
3 County Cluster ln(y) Yes Yes
4 County Cluster ln(1+y) Yes Yes
5 County Cluster ln(y) No Yes
6 State HC1 ln(y) Yes Yes
5. CPI Deflation

Why deflation is necessary

Our panel spans three Census of Governments waves: 2012, 2017, and 2022. Over this period, the general price level rose substantially — CPI-U increased by approximately 29% from 2012 to 2022 and by 21% from 2017 to 2022 alone. Comparing nominal dollar amounts across these years would confound real changes in service costs with general inflation, biasing year fixed effects and any variable correlated with the price level.

Method

We use CPI-U annual averages from the Bureau of Labor Statistics (series CUUR0000SA0) to deflate all dollar-denominated variables to real 2022 dollars. The deflator for each year is:

Year CPI-U Annual Average Deflator (2022 base)
2012 229.594 296.171 / 229.594 = 1.2900
2017 245.120 296.171 / 245.120 = 1.2083
2022 296.171 1.0000 (base year)

Variables deflated

All expenditure amounts (12 categories), local tax revenue, intergovernmental revenue, and aggregate property values are multiplied by the deflator before per-capita computation. This ensures that per-capita figures are in constant 2022 dollars and comparable across years.

6. Time-Varying Land Area

The problem

An earlier implementation of this replication used 2020 Urban Area data for all panel years, making urban land area time-invariant. Under county fixed effects (Specs 2–5), a time-invariant variable is perfectly absorbed by the county dummy and contributes nothing to identification. This also meant that the density variable (population + employment divided by urban land area) varied over time only through changes in population and employment, not through changes in the built environment.

The original paper used USDA NRI data, which did vary over time (1982 vs. 1992 observations of developed land).

The solution

We assign each panel year to the nearest Census Urban Area vintage:

Panel Year UA Vintage Used Source File
2012 2010 UA-County Relationship File (2010 Census)
2017 2010 UA-County Relationship File (2010 Census)
2022 2020 UA-County Relationship File (2020 Census)

This gives meaningful within-county variation in urban land area for counties observed in both 2010 and 2020 UA vintages. In turn, the density variable varies over time through both numerator changes (population and employment) and denominator changes (urban land area), as in the original study.

7. Data Sources
Variable Source API / File Details
Population ACS 5-Year Estimates API variable B01003_001E
Aggregate property value ACS 5-Year Estimates API variable B25082_001E
Poverty rate ACS 5-Year Estimates API variables B17001_001E, B17001_002E
Age composition (under 18) ACS 5-Year Estimates API variable B09001_001E
Age composition (65+) ACS 5-Year Estimates API variables B01001_020E–B01001_025E, B01001_044E–B01001_049E
Employment County Business Patterns API variable EMP
Expenditures (12 categories) Census of Governments Finance Bulk fixed-width Individual Unit files (2012, 2017, 2022)
Revenue (tax + intergovernmental) Census of Governments Finance Same Individual Unit files
Government counts (municipal, special districts) Census of Governments Organization Excel files (Govt_Units_YYYY_Final.xlsx)
Urban land area Census Urban Area–County Relationship 2010 + 2020 UA-County files
Total land area Census Gazetteer 2010 + 2020 national county files
Metropolitan classification CBSA Delineation OMB CBSA delineation Excel file

All Census API calls use the Census Bureau’s public REST API for ACS 5-Year and CBP data. Census of Governments files are downloaded as bulk fixed-width or Excel archives directly from the Census Bureau website.

8. Known Limitations
Issue Details
Property values ACS reports self-reported market value of owner-occupied housing, whereas the original paper used assessed property values. These measures may differ systematically, especially in states with assessment caps or freezes.
Employment measure County Business Patterns reports employment for a single reference week in March, whereas the original study likely used annual average employment. Seasonal variation may introduce noise.
Urban land definition Census Urban Area boundaries are based on population density thresholds, while the original used USDA NRI satellite-based developed land classification. The two methods may classify land differently, especially at the urban fringe.
Short panel T=3 is still a short panel. County fixed effects identification relies on limited within-county variation across just three time periods (2012, 2017, 2022). This constrains statistical power, especially for slow-moving variables like density.
Revenue endogeneity Per capita local tax revenue and intergovernmental revenue are jointly determined with expenditure through the local government budget identity. Spec 5 addresses this by excluding revenue controls, but this is not a full solution (e.g., instrumental variables are not employed).
No causal identification All results are conditional correlations, not causal estimates. There is no instrumental variable, regression discontinuity, or difference-in-differences design that would warrant causal interpretation. Language throughout uses “associated with” rather than “causes” or “reduces.”
Static metro definitions Counties classified as metropolitan using 2023 CBSA delineations, applied uniformly to all panel years. Counties that gained or lost metropolitan status between 2012 and 2022 are not reclassified. Results are conditional on this static sample definition.
Sample differences The county sample uses 2023 CBSA delineations and yields approximately 394 metropolitan counties, compared to the original study’s 283 counties under 1990s metropolitan area definitions. Direct coefficient comparisons should be interpreted with this sample difference in mind.
9. Robustness Checks

To assess the sensitivity of our main findings, we re-estimate two key specifications (Spec 1: state FE + HC1, and Spec 3: county FE + clustered SEs + demographic controls) on four expenditure categories that are central to the sprawl–cost debate: Total Direct expenditure, Roadways, Sewerage, and Police Protection. Each check modifies the sample or a key variable to test whether the density coefficient is robust to the change.

The four checks

Check Description Purpose
Balanced panel Restrict the sample to counties present in all three panel years (2012, 2017, 2022). Ensures that composition changes in the unbalanced panel do not drive results.
Minimum urban land threshold Exclude counties with fewer than 640 urban acres (1 square mile). Removes counties whose density measure may be noisy due to very small urban footprints.
Winsorized density Winsorize the density variable at the 1st and 99th percentiles. Tests whether extreme density outliers are driving the estimated relationship.
Static UA vintage Use 2020 Urban Area boundaries for all panel years, making urban land area time-invariant. Tests whether results depend on the time-varying land area assignment described in Section 6.

Interpretation

Each check produces 8 regressions (4 categories × 2 specs). If the density coefficient retains a similar sign, magnitude, and significance level across checks, the finding is considered robust. If a check substantially alters the coefficient, it signals sensitivity to that particular modeling choice and warrants further investigation.

Full robustness results are available in the dashboard robustness section, which provides an interactive table with coefficient estimates, standard errors, and p-values for each check.