docs/us_housing/housing_supply_county_year

housing_supply_county_year

County-year grain. Total housing units, units per 1k population, units by age of structure. Loaded from ACS B25001 + B25034 (2024).

tier aadmin_recordhousingacssupplytotal_unitsyear_built
grain
county-year
years
2024
cadence
Annual
overview

overview

All 3,222 counties. Loaded from ACS B25001/B25034 (2024).

current vintage — 2020-2024 ACS 5-Year (planned)

history — ACS B25001: 2009-present

provenance

source & licensing

authority
U.S. Census Bureau (ACS 5-year)
dataset
Building Permits Survey; ACS 5-Year Estimates
license
Public domain (U.S. Federal Government work)
citation
U.S. Census Bureau. ACS 5-Year Estimates, Tables B25001 (total housing units), B25034 (year built), 2020-2024.
schema

fields

nametypedefinition
country_idkeystringISO alpha-2 country code (always 'US' for domestic tables).
county_idkeystring5-character FIPS code identifying the county.Joins dim.counties on county_id.
county_namestringHuman-readable county name corresponding to county_id.
housing_units_per_1k_popfloat64 · rate per 1,000 populationNumber of housing units per 1,000 residents in the county. Higher values indicate greater housing availability relative to population size.
pct_units_pre_1940float64 · percent (0–100)Share of total housing units constructed before 1940, expressed as a percentage. Higher values indicate an older housing stock, which is associated with greater maintenance burden and potential lead paint or structural concerns.
state_idkeystring2-character FIPS code identifying the state.Joins dim.states on state_id.
total_housing_unitsint64 · countTotal number of housing units in the county, including occupied and vacant units. Higher values indicate a larger overall housing stock.
units_built_1940_1969int64 · countNumber of housing units constructed between 1940 and 1969 inclusive. Represents mid-century housing stock that may require significant maintenance or modernization.
units_built_1970_1999int64 · countNumber of housing units constructed between 1970 and 1999 inclusive. Captures mid-to-late 20th century housing stock, which may reflect suburban expansion and post-war development patterns.
units_built_2000_plusint64 · countNumber of housing units with a year of construction of 2000 or later. Higher values indicate a larger share of newer, more recently built housing stock.
units_built_before_1940int64 · countNumber of housing units constructed prior to 1940. Higher values indicate a larger share of older housing stock, which may signal deferred maintenance needs or historic preservation contexts.
yearkeyint64Reference year of the observation.
relationships

joins

primary key
county_id, state_id, country_id, year
common joins
dim.geographies on county_id
housing_vacancy_county_year on (county_id, year)
housing_tenure_county_year on (county_id, year)
usage

how to use this table

method

ACS B25001 total housing units; B25034 by structure age. Per-1k-pop = total / population x 1000.

do not use for

New construction (use Census Building Permits Survey); commercial properties.

known issues

ACS 5-year overlapping windows mean year-over-year deltas are not independent observations.

last updated · Jul 7, 2026