Every City in the USA

Data · Public domain

Every U.S. city, in one CSV.

A single, sourced, downloadable file with every incorporated place — plus the eight consolidated cities and four special cases — that the U.S. Census Bureau publishes annual population estimates for. For anyone who would rather work with sourced numbers than copy a listicle.

cities-v2024.csv

Download the file

Stable URL. Rebuilt with each new Census vintage. Each build publishes a fresh sha256 below so the bytes you download can be verified against this page.

Format
CSV, UTF-8, comma-delimited, header row
Rows
19,479
Columns
60
Size
8.8 MB
sha256
506cf510ac00…
Reference
2024-07-01 (Vintage V2024)
Build

What's in the file

One row per city. Columns are listed in the order they appear in the CSV. Types follow the convention integer | null meaning the field is an integer where present and an empty cell where the underlying source has no value. The schema below is generated at build time from the dataset's field dictionary, so it cannot drift from what's actually in the file.

Column Type Description
geoid string Seven-character Census GEOID. SUMLEV=162: STATE(2)+PLACE(5). SUMLEV=170: STATE(2)+CONCIT(5). See methodology §4 and §7.1.
name string SUB-EST NAME field, verbatim (e.g. 'Auburn city').
name_short string Display name with trailing LSAD-suffix word stripped (e.g. 'Auburn'). See methodology §7.1.
slug string URL slug for /cities/{slug}/. lowercase + hyphens + state abbreviation. Unique.
state_fips string Two-character state FIPS code.
state_abbr string Two-letter USPS state abbreviation.
state_name string Full state name.
place_fips string Five-character place or CONCIT FIPS.
sumlev string Census summary level — '162' for incorporated places + the 1 included CDP, '170' for the 8 consolidated cities. Methodology §4.
funcstat string Functional status code. A=active, B=active-partially-consolidated, N=nonfunctioning, S=statistical (CDP).
lsad string Legal/Statistical Area Description code. NULL when no gazetteer match.
lsad_description string Human label for LSAD code. NULL when LSAD is NULL.
place_type string Derived: incorporated_place | consolidated_city | nonfunctioning_legal_place | cdp_in_estimates | partially_consolidated. Methodology §4.
pop_2024 integer Resident population estimate for July 1, 2024. Vintage 2024.
pop_2023 integer Resident population estimate for July 1, 2023. Vintage 2024.
pop_2022 integer Resident population estimate for July 1, 2022. Vintage 2024.
pop_2021 integer Resident population estimate for July 1, 2021. Vintage 2024.
pop_2020 integer Resident population estimate for July 1, 2020. Vintage 2024 — re-based to 2020 census.
pop_base_2020 integer Population estimates BASE for April 1, 2020. Vintage 2024.
pop_2019 integer | null Resident population estimate for July 1, 2019. Vintage 2019. NULL if no V2019 record.
pop_2018 integer | null July 1, 2018 estimate. Vintage 2019.
pop_2017 integer | null July 1, 2017 estimate. Vintage 2019.
pop_2016 integer | null July 1, 2016 estimate. Vintage 2019.
pop_2015 integer | null July 1, 2015 estimate. Vintage 2019.
pop_2014 integer | null July 1, 2014 estimate. Vintage 2019.
pop_2013 integer | null July 1, 2013 estimate. Vintage 2019.
pop_2012 integer | null July 1, 2012 estimate. Vintage 2019.
pop_2011 integer | null July 1, 2011 estimate. Vintage 2019.
pop_2010 integer | null July 1, 2010 estimate. Vintage 2019.
pop_base_2010 integer | null Population estimates BASE for April 1, 2010. Vintage 2019.
pop_census_2010 integer | null 2010 decennial Census count. NULL when V2019 reported 'A' (place incorporated after 2010 census; 78 such places).
growth_2020_2024_abs integer pop_2024 − pop_base_2020. Within Vintage 2024.
growth_2020_2024_pct float 100 × (pop_2024 − pop_base_2020) / pop_base_2020. NULL when base is 0.
growth_2023_2024_abs integer pop_2024 − pop_2023. Within Vintage 2024.
growth_2023_2024_pct float 100 × (pop_2024 − pop_2023) / pop_2023. NULL when 2023 is 0.
growth_2010_2019_abs integer | null pop_2019 − pop_2010. Within Vintage 2019. NULL if either endpoint is NULL.
growth_2010_2019_pct float | null 100 × (pop_2019 − pop_2010) / pop_2010. NULL if pop_2010 is NULL or 0.
national_rank_pop_2024 integer National rank by pop_2024 descending. Standard competition ranking (1,2,2,4).
state_rank_pop_2024 integer Within-state rank by pop_2024 descending.
national_rank_growth_2020_2024_pct integer | null Rank by growth_2020_2024_pct descending. NULL when pop_base_2020 < 5,000 (denominator-artifact threshold).
state_rank_growth_2020_2024_pct integer | null Within-state rank, same threshold.
national_rank_density integer | null Rank by density_per_sqmi descending. NULL when density is NULL.
state_rank_density integer | null Within-state rank, same.
land_area_sqmi float | null Land area in square miles. From 2025 Gazetteer ALAND_SQMI. NULL if no gazetteer match.
water_area_sqmi float | null Water area in square miles. From 2025 Gazetteer.
density_per_sqmi float | null pop_2024 / land_area_sqmi. NULL when land area is 0 or NULL.
lat float | null Centroid latitude (INTPTLAT).
lon float | null Centroid longitude (INTPTLONG).
is_consolidated_city boolean True for the 8 SUMLEV=170 records (Indianapolis, Nashville, Louisville, etc.).
is_partially_consolidated boolean True for FUNCSTAT='B' records.
is_nonfunctioning_legal_place boolean True for FUNCSTAT='N' records (Washington DC, Houma LA, Tribune KS).
is_cdp_in_estimates boolean True for the 1 FUNCSTAT='S' record (Urban Honolulu).
incorporated_after_2010 boolean True if V2019 reported CENSUS2010POP='A' (78 places).
gazetteer_match boolean True if a gazetteer row was found for geometry_source_geoid.
geometry_source_geoid string GEOID actually used to look up gazetteer fields. Differs from geoid for consolidated cities.
has_v2019_history boolean True if a V2019 record was found.
source_v2024_csv string Filename of V2024 source.
source_v2019_csv string | null Filename of V2019 source if used for this row.
source_gazetteer string | null Filename of gazetteer source if used for this row.
build_timestamp string ISO 8601 UTC timestamp of the build that wrote this row.

Provenance & methodology

Where this data comes from.

Primary source: U.S. Census Bureau, Vintage V2024 Subcounty Population Estimates (annual estimates for 2020–2024 plus the April 1, 2020 base) and SUB-EST2019 (2010–2019 historical series, used to fill the older annual columns). Geographic enrichment — land area, water area, density, centroid — comes from the 2025 Census Gazetteer places file.

Every number in this CSV is reproducible end-to-end: raw Census file → sha256 recorded in the build manifest → build script → this published CSV (sha256 above). If a value looks wrong, the chain back to the source byte sequence is documented and verifiable.

License & attribution

U.S. Census Bureau publications are works of the United States Government and are in the public domain (17 U.S.C. § 105). No license fee, no required attribution. We attribute anyway because any downstream analysis is only as trustworthy as its citation chain.

Source: U.S. Census Bureau, Population Division. Vintage V2024 Subcounty Resident Population Estimates. Geographic enrichment from the 2025 Census Gazetteer. Compiled and processed by Every City in the USA on 2026-05-11.

Every City in the USA is independent and is not affiliated with the U.S. Census Bureau. Census does not review or approve third-party uses of its data.