docs/us_demographics/demographics_population_age_county_year

demographics_population_age_county_year

Census PEP county population by 10 age bands (A2), 1990-2024. Wide (one row per county-year), age bands as columns. Shares the age-band vocabulary of us_health.int_mortality_wonder, so it is the row-aligned denominator for the age-specific death rate m(a) = deaths(a) / pop(a). Includes working-age (25-64) and 75+ aggregate cuts. Tier A.

tier aregression_modeldemographicspeppopulationagedenominatormortality_rate
grain
county-year
years
1990 – 2024
cadence
Annual (March release of vintage; July reference date)
overview

overview

All ~3,222 US counties per vintage, 1990-2024, by 10 age bands. PEP is a complete administrative model - every county-year has an estimate. Carries historical/legacy FIPS for counties closed, split, or renamed across the span.

current vintage — Vintage 2024 (July 1, 2024 reference)

history — PEP age detail reconciled across four file eras spanning 1990-2024.

provenance

source & licensing

authority
U.S. Census Bureau
dataset
Census Bureau Population Estimates Program (PEP), County Age-Sex 1990-2024
license
Public domain (U.S. Federal Government work)
citation
U.S. Census Bureau. Population Estimates Program (PEP), County Characteristics by Age and Sex, 1990-2024.
schema

fields

nametypedefinition
country_idkeystringISO alpha-2 country code (US).
county_idkeystring5-char county FIPS.
county_namestringCounty name from dim.geographies.
pop_0_4int64Population aged 0-4.
pop_15_24int64Population aged 15-24.
pop_25_34int64Population aged 25-34.
pop_35_44int64Population aged 35-44.
pop_45_54int64Population aged 45-54.
pop_5_14int64Population aged 5-14.
pop_55_64int64Population aged 55-64.
pop_65_74int64Population aged 65-74.
pop_75_84int64Population aged 75-84.
pop_75_plusint64Retired-age population (75+) — the placebo cut.
pop_85_plusint64Population aged 85 and over.
pop_working_age_25_64int64Working-age population (25-64) — the labor-channel cut.
state_idkeystring2-char state FIPS.
total_populationint64Total county population (sum across age bands).
yearkeyint64Population estimate vintage year (1990-2024).
relationships

joins

primary key
county_id, state_id, country_id, year
common joins
dim.geographies on county_id
us_health.int_mortality_wonder on (county_id, year) + age band as the denominator for m(a) = deaths(a) / pop(a).
usage

how to use this table

method

PEP age-band staging (one row per county-year-age) pivoted wide to one row per county-year, age bands as columns; pop_working_age_25_64 and pop_75_plus are summed aggregate cuts. Underlying PEP rolls the decennial baseline forward by components of change.

do not use for

Sub-county estimates (use ACS); single-year-of-age detail (10 bands only); cross-vintage boundary changes without bridging (historical FIPS present).

known issues

Carries historical/legacy FIPS (CT planning regions, AK splits, county renames) across the 1990-2024 span, absent from current dim.geographies - resolved via legacy_county_crosswalk.

last updated · Jul 7, 2026