Technical writing
Census Population Estimates Program: The Annual County and State Population Data Behind Apportionment, Funding, and Growth Tracking
Between decennial censuses, the Census Bureau's Population Estimates Program produces the only official annual population count for every state, county, city, metropolitan area, and school district in the country. These estimates — released each year for the prior July 1 reference date — drive over 300 federal formula grant programs, serve as the base for congressional apportionment between head counts, and underpin every per-capita statistic in public health, economics, and planning.
What the Population Estimates Program Is
The Population Estimates Program, universally abbreviated PEP, is a Census Bureau statistical series that produces population estimates for the nation, all 50 states plus the District of Columbia, all counties and county equivalents, all incorporated places and census-designated places, all metropolitan and micropolitan statistical areas, and all public school districts. Estimates are published annually, typically in the spring or summer following the reference date of July 1 of the prior year. The 2024 vintage, for instance, provides estimates as of July 1, 2024.
PEP does not conduct a new census each year. Instead it starts from the most recent decennial census count — the constitutionally mandated enumeration — and applies a components-of-change framework to update that base forward. The result is a continuous population series that is more timely than the decennial census but less detailed than the American Community Survey. PEP answers “how many people live here”; the ACS answers “who are they, what do they earn, and what are their housing conditions.”
Federal agencies embed PEP in the formulas that distribute billions of dollars annually. The Department of Transportation uses state PEP figures to allocate highway funds. The Department of Education uses county and school-district estimates for Title I and Head Start. The Centers for Medicare and Medicaid Services use PEP as the denominator for Medicare and Medicaid beneficiary rate calculations. The Department of Housing and Urban Development uses PEP in fair-market rent calculations and in the Community Development Block Grant formula. Across all major federal formula grant programs, PEP is involved in allocating well over half a trillion dollars per year.
Between decennial censuses, congressional apportionment is fixed at the shares established by the most recent head count. But electoral vote counts in the Electoral College can shift in practice when census data reveals populations have changed — and state legislatures draw redistricting maps informed by PEP data even between formal reapportionments. Market analysts, healthcare planners, and demographic researchers rely on PEP as the most current official population figure available.
Components of Change Methodology
The core PEP accounting identity is straightforward: the population at time t equals the population at time t−1 plus births, minus deaths, plus net international migration, plus net domestic migration. Every methodological decision in PEP is about measuring one of those four components as accurately as possible using administrative data sources, because a new survey is not taken each year.
Births and deaths come from the National Center for Health Statistics, which collects vital statistics reported by state registrars. NCHS compiles birth certificates and death certificates for every registered event in the country and transmits counts to the Census Bureau by county of residence. The NCHS vital statistics file is the gold standard for births and deaths — coverage is near-complete because hospitals and physicians are legally required to file certificates. The primary lag is that NCHS data typically arrives with a one-to-two-year delay, so early PEP vintage estimates for a given period use provisional vital statistics that may be revised in later vintages.
Net international migration is the most methodologically complex component. Legal immigration flows are drawn from Department of Homeland Security records of lawful permanent residents, temporary visa holders, and refugees. State Department nonimmigrant visa records contribute information on long-term temporary residents. Emigration — people leaving the United States permanently — is not directly observed and must be estimated from Foreign Born Population data in the American Community Survey combined with historical emigration rate studies. Unauthorized immigration is estimated by the Census Bureau using residual methods applied to ACS data, comparing observed foreign-born population counts against the sum of known legal entries. This component carries the largest uncertainty in the PEP model.
Net domestic migration measures movement of the population between counties within the United States. The Census Bureau's primary source is IRS Statistics of Income data: each year, the IRS compares the county of filing on current-year Form 1040 returns to the county of filing on prior-year returns for the same taxpayer identification number. Returns filed from a different county than the prior year are classified as in-migration to the destination county and out-migration from the origin county. Spouse and dependent exemptions on those returns are used to inflate raw filer counts to total-population estimates. The IRS data arrives with roughly a two-year lag (the 2022 filing season covers tax year 2021 income), which means the most recent year in any PEP vintage relies on modeled rather than observed domestic migration.
Additional domestic migration data come from Medicare enrollment records (which track address changes for the 65-and-older population with high completeness), Medicaid records, and the American Community Survey's residence-one-year-ago question. The Census Bureau uses these auxiliary sources to cross-check and calibrate the IRS migration matrix. The result is a county-to-county migration flow estimate for each year that feeds directly into the population update formula.
Key Findings: Population Shifts 2020–2024
The 2020–2024 period produced some of the most dramatic population redistribution since the post-World War II suburban expansion. The COVID-19 pandemic coincided with the 2020 Census baseline, and the years immediately following showed an acceleration of migration patterns that had been emerging for years: residents and households leaving high-density coastal metros for Sun Belt destinations with lower costs, more space, and remote-work-compatible environments.
Florida added approximately 2.1 million residents between April 1, 2020 and July 1, 2024, a gain of roughly 10 percent. Texas added approximately 2.4 million residents over the same period. Both states benefited from both domestic migration and international migration, as well as natural increase. At the metro level, the Dallas–Fort Worth–Arlington MSA became the largest net domestic migration destination in the country for multiple consecutive years, and the Miami–Fort Lauderdale–Pompano Beach MSA posted its largest migration gains in decades driven largely by domestic in-movers from the Northeast.
The New York City metropolitan area, by contrast, lost more than 500,000 residents on net between 2020 and 2024, the largest numeric population loss of any metro area in the country. New York City proper declined by more than 100,000 residents over the same period. The losses were concentrated among working-age adults, driven by a combination of domestic out-migration (particularly to Florida and the Carolinas), elevated COVID-19 mortality concentrated in older age groups in 2020–2021, and reduced international in-migration during the pandemic-era visa processing shutdowns.
The year 2022 marked a notable threshold: United States overall population growth fell below 0.5 percent for the first time in modern records, a reflection of the compound effect of continued low fertility, elevated mortality from COVID-19 and its downstream effects, and the temporary suppression of international immigration flows that had been a primary source of national growth. Growth recovered in 2023 and 2024 as international migration surged to approximately one million net arrivals per year, reversing the near-stagnation of 2021–2022 and returning national growth to roughly 0.6–0.7 percent annually.
At the city level, the remote-work migration story was clearest in mid-tier metros that had the infrastructure to absorb professional workers but lower housing costs than the primary coastal markets. Boise, Idaho; Austin, Texas; and Nashville, Tennessee consistently ranked among the fastest-growing cities in PEP releases for 2020–2023. All three shared similar profiles: state income-tax advantages, growing tech and healthcare employment bases, and housing stock that, while rapidly appreciating, started from a lower basis than coastal markets.
Fastest and Slowest Growing Places
The Annual County Totals dataset — downloadable as a CSV from census.gov and queryable through the API — provides the most comprehensive county-level growth picture. The fastest-growing counties in recent PEP vintages are concentrated in two clusters: Texas suburban counties in the Dallas–Fort Worth and Austin metro areas, and Florida coastal and suburban counties.
In Texas, Collin County (north of Dallas), Denton County (northwest of Dallas), Williamson County (north of Austin), and Hays County (south of Austin) have each posted annual growth rates between 3 and 6 percent in recent years — rates that imply population doubling in twelve to twenty-three years. These counties combine large existing populations with master-planned residential developments, major employer relocations, and strong school districts that attract family-aged households.
In Florida, St. Johns County (south of Jacksonville), Manatee County and Sarasota County (southwest Florida) have consistently posted some of the highest percent-growth figures in the country. Their growth profile differs from the Texas suburban counties: Florida growth skews older and includes a larger share of retirees, reflecting the ongoing demographic transition of aging baby boomers selecting Florida for retirement migration.
At the other end of the spectrum, rural counties in Appalachia, the Mississippi Delta, and the Great Plains are losing population at rates of one to two percent per year. These counties combine elevated death rates in aging populations, low birth rates, persistent out-migration of younger residents to urban labor markets, and minimal international immigration. Some rural Kansas, Nebraska, and West Virginia counties have lost twenty to thirty percent of their peak population over the past three decades and continue to decline.
For major cities, the 2024 PEP vintage places New York City at approximately 8.2 million residents, Los Angeles at 3.8 million, Chicago at 2.6 million, and Houston at 2.3 million. At the metro level, New York–Newark remains the largest by a wide margin with roughly 20 million residents, followed by Los Angeles at approximately 13 million and Chicago at approximately 9.5 million. Dallas–Fort Worth has surpassed Washington D.C. and Philadelphia in metro population and continues to climb.
Vintage Estimates and Revisions
Each annual PEP release produces a “vintage” of estimates covering all years from the decennial census base forward to the current reference date. Vintage 2024 provides estimates for July 1 of each year from 2020 through 2024. This full series is re-estimated together rather than simply appending a new year to the prior vintage, because later administrative data sources — particularly IRS migration data and revised NCHS vital statistics — allow retrospective improvement of earlier-year estimates.
The practical implication is that the estimate for July 1, 2021 published in the Vintage 2024 release will differ from the estimate for July 1, 2021 published in the Vintage 2021 release. Revisions are typically modest — a few thousand people for most counties — but can be significant when a prior vintage was based on incomplete data. The most consequential example from the 2020–2024 period was the revision of COVID-19 mortality. The Vintage 2022 release incorporated more complete death certificate data for 2020 and 2021 than had been available for the Vintage 2021 release, producing noticeably larger natural decrease figures for counties with high COVID-19 mortality concentrations.
Researchers and analysts should always use the most recent vintage available for a given analysis, and should avoid comparing estimates from different vintages as if they were independent observations. The Census Bureau publishes all historical vintages, but the standard guidance is to use the current vintage exclusively unless the specific research question requires tracking revision history.
The decennial census creates a “benchmark” that resets the PEP base. When the 2030 Census results are published, PEP will be re-benchmarked, and any drift that accumulated in the 2020–2030 intercensal estimates will be quantified in a “evaluation” release that compares 2030 Census counts to the final 2030-vintage PEP estimates. These evaluations help the Census Bureau identify and correct systematic biases in the components-of-change model.
Applications Across Policy and Research
The breadth of PEP applications reflects its status as the only annually updated, official, geographically comprehensive population count in the federal statistical system. Formula grant apportionment is the most financially consequential use: when Congress writes a formula allocating funds among states or localities, the simplest and most defensible allocation variable is population, and PEP is the official source.
Medicaid matching rates are calculated using a formula that combines per-capita income (from Bureau of Economic Analysis regional accounts) with population from PEP. The Federal Medical Assistance Percentage, or FMAP, determines what share of a state's Medicaid costs the federal government reimburses. Higher-income states receive lower FMAP rates; lower-income states receive higher rates. Because both the per-capita income numerator and the population denominator use federal administrative data, any change in PEP county or state estimates flows directly into subsequent FMAP calculations and therefore into state Medicaid budgets.
Medicare payment rates to hospitals, physicians, and managed care plans use PEP beneficiary counts. The Centers for Medicare and Medicaid Services calculate county-level Medicare Advantage risk scores and payment benchmarks that depend on how many Medicare beneficiaries reside in each county — a figure that combines Medicare enrollment records with PEP denominators. Healthcare planning more broadly uses PEP: hospital systems project capacity needs, pharmaceutical companies size market opportunities, and public health agencies calculate disease incidence rates using PEP as the denominator.
Between decennial censuses, congressional seats are fixed, but the political salience of population estimates extends beyond reapportionment. State legislatures and local governments monitor PEP releases for evidence of population change that may affect future redistricting, tax base projections, school enrollment planning, and infrastructure investment timing. A county that PEP shows growing at 4 percent per year has a very different capital improvement plan than one declining at 1 percent per year.
In commercial applications, PEP is the standard input for retail trade area analysis, healthcare facility siting, insurance risk pooling, and economic development planning. Private data vendors incorporate PEP into syndicated demographic databases that are licensed to thousands of corporate users. The Census Bureau also produces Small Area Income and Poverty Estimates (SAIPE), which use PEP as a key input alongside ACS and administrative tax data to produce school-district-level poverty estimates for Title I allocation.
Accessing PEP Data
The Census Bureau provides PEP data through the standard Census API at api.census.gov/data/[year]/pep/population. Key variables in the population endpoint include POP (population estimate), NAME(geography name), DENSITY (population per square mile), andDATE_CODE (which reference date the estimate corresponds to — the April 1 census base or a subsequent July 1 estimate). Geographic levels are specified using the standard Census API syntax: us for national,state for states, county for counties, placefor incorporated places and census-designated places, and metropolitan statistical area/micropolitan statistical areafor metro areas.
The components of change endpoint at api.census.gov/data/[year]/pep/componentsprovides births, deaths, natural increase, net international migration, net domestic migration, and total net migration by geography and reference period. TheDATE_CODE parameter controls which period's component flows are returned. The components and population endpoints share geographic and vintage parameters, making them easy to merge for decomposition analysis.
For bulk downloads, the Census Bureau's Annual County Totals datasets are available as CSV files on census.gov under the Population Estimates section. These files contain the full time series for all counties in a single download, which is more convenient than API pagination for analyses spanning many years. State-level and metro-level equivalents are published in parallel. All PEP data is public domain and freely downloadable without registration, though the API performs better with a registered key obtained from api.census.gov/data/key_signup.html.
Python: County Growth Decomposition
The following script uses the Census PEP API to fetch county population estimates for 2020 and 2024, compute four-year percent change, identify the 25 fastest-growing and 25 fastest-declining counties, then fetches components-of-change data to determine whether growth in fast-growing counties is driven primarily by net migration or by natural increase (births minus deaths).
import requests
import pandas as pd
# Pull county population estimates and components of change from the Census PEP API
# for 2020 and 2024, compute 4-year percent change, and decompose growth into
# natural increase (births minus deaths) vs. net migration.
API_KEY = "YOUR_CENSUS_API_KEY" # register at api.census.gov/data/key_signup.html
# ----- Step 1: Fetch county population estimates for 2020 and 2024 -----
POP_BASE = "https://api.census.gov/data/2024/pep/population"
pop_params = {
"get": "POP_2020,POP_2024,NAME",
"for": "county:*",
"key": API_KEY,
}
pop_resp = requests.get(POP_BASE, params=pop_params, timeout=60)
pop_resp.raise_for_status()
pop_data = pop_resp.json()
pop_df = pd.DataFrame(pop_data[1:], columns=pop_data[0])
pop_df["POP_2020"] = pd.to_numeric(pop_df["POP_2020"], errors="coerce")
pop_df["POP_2024"] = pd.to_numeric(pop_df["POP_2024"], errors="coerce")
pop_df = pop_df.dropna(subset=["POP_2020", "POP_2024"])
pop_df = pop_df[pop_df["POP_2020"] > 0]
# Percent change 2020 to 2024
pop_df["pct_change"] = ((pop_df["POP_2024"] - pop_df["POP_2020"]) / pop_df["POP_2020"] * 100).round(2)
# ----- Step 2: Top 25 fastest-growing counties -----
top25_growing = (
pop_df.sort_values("pct_change", ascending=False)
.head(25)[["NAME", "POP_2020", "POP_2024", "pct_change"]]
.reset_index(drop=True)
)
print("Top 25 fastest-growing counties 2020-2024 (PEP Vintage 2024):")
print(top25_growing.to_string(index=False))
# ----- Step 3: Top 25 fastest-declining counties -----
top25_declining = (
pop_df.sort_values("pct_change", ascending=True)
.head(25)[["NAME", "POP_2020", "POP_2024", "pct_change"]]
.reset_index(drop=True)
)
print("")
print("Top 25 fastest-declining counties 2020-2024:")
print(top25_declining.to_string(index=False))
# ----- Step 4: Fetch components of change to decompose growth -----
COMP_BASE = "https://api.census.gov/data/2024/pep/components"
comp_params = {
"get": "NATURALINC,NETMIG,BIRTHS,DEATHS,NAME",
"for": "county:*",
"DATE_CODE": "8", # DATE_CODE 8 = July 1 2024 estimate period
"key": API_KEY,
}
comp_resp = requests.get(COMP_BASE, params=comp_params, timeout=60)
comp_resp.raise_for_status()
comp_data = comp_resp.json()
comp_df = pd.DataFrame(comp_data[1:], columns=comp_data[0])
num_cols = ["NATURALINC", "NETMIG", "BIRTHS", "DEATHS"]
for col in num_cols:
comp_df[col] = pd.to_numeric(comp_df[col], errors="coerce")
# Merge population and components on state+county FIPS
merged = pop_df.merge(comp_df, on=["state", "county"], suffixes=("", "_comp"))
# Classify growth driver: migration-led vs. natural-increase-led
merged["migration_share"] = (merged["NETMIG"] / (merged["NATURALINC"] + merged["NETMIG"])).round(3)
migration_led = merged[(merged["pct_change"] > 5) & (merged["migration_share"] > 0.6)]
natural_led = merged[(merged["pct_change"] > 5) & (merged["migration_share"] <= 0.6)]
print("")
print("Fast-growing counties (>5% 4-year gain) driven primarily by migration: " + str(len(migration_led)))
print("Fast-growing counties driven primarily by natural increase: " + str(len(natural_led)))
# Summary: mean natural increase vs. net migration for all counties
mean_natinc = round(merged["NATURALINC"].mean(), 0)
mean_netmig = round(merged["NETMIG"].mean(), 0)
print("")
print("Mean natural increase per county (2024 estimate period): " + str(mean_natinc))
print("Mean net migration per county (2024 estimate period): " + str(mean_netmig))
The script illustrates the typical PEP workflow: establish a population baseline from the two endpoints, compute growth metrics, then layer in component data to understand the mechanism. Counties growing primarily through migration tend to be labor-market destinations where jobs are attracting working-age in-movers. Counties growing through natural increase tend to be younger demographically, with high birth rates relative to deaths even in the absence of large migration flows. The two growth types have very different planning implications: migration-driven growth can reverse rapidly if economic conditions shift, while natural-increase-driven growth is more demographically embedded.
For detailed demographic characteristics — educational attainment, income, housing costs, and race and ethnicity breakdowns — at the census tract level, see Census ACS Data.
For income and poverty estimates derived from PEP and administrative tax records at the county and school-district level, see Census CPS Poverty Data.