Housing Forecast Methodologies
Population Forecast Methodology
The CommunityScale population forecasting system employs a cohort-migration method anchored to the U.S. Census Bureau's Population Estimates Program (PEP). The model tracks five-year age cohorts through each community's observed 2010–2024 population history, derives cohort change ratios that capture the combined effect of mortality and migration, and projects those trends forward from the most recent (2025) PEP estimate. Group-quarters populations — college dormitories, correctional facilities, military barracks, nursing facilities — follow institutional capacity rather than household demographics, so they are separated out, projected on their own trend, and added back.
Overview
The method divides the population into age groups (cohorts) and tracks how each group changes over time through:
- Cohort change: The combined effect of mortality and net migration on each cohort as it ages, measured directly from the community's own history
- Fertility: Births projected from the community's historical fertility rate and its projected childbearing-age population
- Group quarters: Institutional populations handled as a separate, exogenous component
Both the historical training data and the launch-year population are anchored to PEP rather than survey estimates. PEP provides annual July 1 point estimates, controlled to the decennial census, through 2025; ACS 5-year estimates are period averages effectively centered about 2.5 years before their end year, so a forecast launched from ACS describes a community as it was several years ago. Anchoring to PEP removes that staleness — validated at a median 1.3% of county population (90th percentile 4.1%), largest exactly in fast-changing places. The ACS is retained for what PEP does not publish: sub-county age composition, the age structure of group quarters, and gross migration flows.
Age Cohorts
All calculations operate on 18 standardized five-year age bins:
- Age Bin 1: 0-4 years
- Age Bins 2-10: 5-9, 10-14, ..., 45-49 years
- Age Bins 11-17: 50-54, ..., 80-84 years
- Age Bin 18: 85+ years
Historical Population Basis (PEP-Anchored)
Counties. A continuous 2010–2024 county panel by age is spliced from the Census intercensal estimates (2010–2019, which redistribute the error of closure so the series lands exactly on the 2020 Census) and the current-vintage postcensal estimates (2020–2024). Only July 1 points are used, so the splice is seamless across the 2020 census transition.
Municipalities. PEP publishes sub-county estimates (SUB-EST) as totals only, with no age detail. Each municipality's basis therefore takes its level from PEP and its age shape from the ACS: for municipality m, year t, and age bin a,
Pm,t,a = Rm,t × bm,t,a / Σa' bm,t,a'
where Rm,t is the SUB-EST total and bm,t,a is the municipality's ACS B01001 population by age. The shape is year-varying (each year uses its own ACS distribution), preserving the cohort-aging signal the model trains on.
Group-Quarters Separation
A change in a community's group-quarters (GQ) level — a new dormitory, a prison drawdown — would otherwise enter the model as sustained migration and be compounded forward. The model therefore forecasts the household population and treats GQ as a separate component.
GQ by age is estimated as the residual between the total-population and household-population universes of the ACS (B01001 − B09021), a construction that reproduces the Census GQ population at 0.9999 correlation nationally. The GQ magnitude is taken from PEP where published (county totals, 2020 onward) and from the ACS residual elsewhere, distributed across age bins by the ACS shares sg,a,t:
GQg,a,t = Gg,t × sg,a,t
Hg,a,t = max(0, Tg,a,t − GQg,a,t)
The household population H is what the model trains on and projects. On the forecast side, GQ is added back along a robust recency-weighted trend, anchored to the base-year level (so the base-year total is exact by construction) and clipped so a fitted slope can neither eliminate an institution nor run away.
Cohort Change Ratio Projection
The core projection quantity is the cohort change ratio (CCR) — the ratio of a cohort's population after aging five years:
CCRi,t = Pi+1,t / Pi,t-5
where Pi,t is the household population in age bin i at time t. Because it is a ratio of the same cohort observed twice, the CCR captures the community's net demographic trend — survival plus net migration — while gross-flow noise cancels. CCRs are computed for every overlapping five-year pair in the 2010–2024 history and forecast forward with recency-weighted trend fits, so a trend that has recently turned is not extrapolated from stale early years. Population advances at five-year steps:
Pi+1,t+5 = Pi,t × CCR̂i,t
Births are projected from the community's forecast fertility rate applied to its projected childbearing-age population. In-migration and exit components (derived from ACS migration tables via the demographic accounting identity Pi+1,t+5 = Pi,t + M − E) are carried as reported diagnostics.
CCRs are clipped to guard against sampling noise, with one deliberate exception: the young-adult entry cohorts (ages 15–34) are allowed ratios up to 3.0, because college towns and other young-adult magnets genuinely draw entry cohorts at multiples of the preceding cohort's size. Suppressing that in-migration was validated to force spurious decline in university communities; the 3.0 ceiling was tuned on a college-town/control panel against observed PEP growth.
Small-Area Stabilization
Cohort ratios measured on very small populations are statistically unstable. Each cohort's forecast is blended toward a robust prior with a reliability weight that depends on cohort size N:
w = N2 / (N2 + k2), f̂stab = w × f̂ + (1 − w) × fprior, k = 1000
Large cohorts are essentially untouched (w ≈ 1); the smallest are pulled toward the prior — the community's own recent demographic trend, estimated per cohort. This prevents the multi-hundred-percent swings that raw cohort ratios produce in communities of a few hundred people, while leaving mid-size and large communities driven by their own data.
Launch-Year Anchor
Projections launch from the most recent PEP estimate (July 1, 2025). The launch total is the PEP estimate exactly; the launch age composition takes the latest published by-age structure and advances it one year using the observed national age-shift ratio rb = Nb(2025) / Nb(2024) for each bin b, renormalized so the community's own total is preserved:
p̂g,b = Tg × vg,b rb / Σb' vg,b' rb'
so the bins sum exactly to the community's PEP total. In a leak-free national backtest (predicting each county's actual age structure one year ahead), this national-shift method reduced the median age-composition error to 1.74%, versus 2.13% for holding the shape static and 2.66% for mechanical cohort aging — it outperformed the static shape in 86% of counties.
Annual Interpolation
Since cohort transitions operate on five-year intervals but annual estimates are needed, the system applies PCHIP (Piecewise Cubic Hermite Interpolating Polynomial) interpolation to generate smooth annual population estimates. PCHIP preserves monotonicity and avoids oscillations that can occur with higher-order polynomial interpolation.
Coverage and Fallbacks
- Counties and incorporated municipalities (places and county subdivisions with SUB-EST estimates) are fully PEP-anchored.
- Census-designated places and statistical county subdivisions have no PEP estimates and fall back to an ACS-based history and launch.
- Puerto Rico is absent from the PEP files used and falls back to the ACS basis.
- Recoded geographies (Connecticut's 2022 planning regions, Alaska's split boroughs) are rebuilt as exact sums of their constituent PEP town estimates, giving them continuous histories across the recode.
Validation
The model configuration was selected through leak-free backtesting — training on truncated history and scoring against subsequently observed PEP estimates — rather than in-sample fit:
- Launch-year totals equal the published PEP estimates exactly, and base-year totals are exact by construction of the GQ add-back anchor.
- The launch-composition and launch-freshness gains quoted above were measured across all 3,144 counties.
- The group-quarters treatment was validated on a national panel spanning dormitory, correctional, military, and nursing-facility counties: corrections concentrate monotonically where GQ is (median 8.9 percentage-point trajectory correction in counties with >10% GQ share; under 0.3 points where GQ is negligible).
Known limitation
In very small municipalities (under ~5,000 residents, especially under 1,000), stabilization makes the forecast deliberately conservative, and it can run below observed momentum. County forecasts show no such bias at any size class.
Data Sources
- Census Population Estimates Program (PEP): County estimates by age (intercensal 2010–2019; current vintage 2020–2024), county totals and group-quarters totals through 2025, sub-county (SUB-EST) totals 2010–2025, national estimates by single year of age
- American Community Survey (ACS) 5-Year Estimates, 2010–2024: Table B01001 (Sex by Age) for sub-county age composition; B09021/B09019 (household population by age / group-quarters total) for the GQ age structure; B07001/B07013 (geographic mobility) for migration components