docs/us_economy/economy_industry_establishments_county_year_naics

economy_industry_establishments_county_year_naics

Census CBP establishments by county, year, and NAICS — long format (F2). Tier A-.

tier a-admin_recordeconomycbpestablishmentsnaicslong_formatfirms
grain
county-year-naics
years
2019 – 2023
cadence
Annual (released ~16-20 months after reference year)
overview

overview

5,371,582 rows - county x NAICS-6 x year over 5 years. CBP near-census of paid-employee establishments.

current vintage — 2023 (released spring 2025)

history — CBP: 1986 to present; NAICS-based 1998 forward

provenance

source & licensing

authority
U.S. Census Bureau
dataset
County Business Patterns (CBP) — county × NAICS (2019–2023)
license
Public domain (U.S. Federal Government work)
citation
U.S. Census Bureau. County Business Patterns (CBP), county x NAICS, 2019-2023.
schema

fields

nametypedefinition
annual_payroll_1000int64 · thousands of dollars (nominal)Total annual payroll paid to employees in the county-NAICS-year cell, reported in thousands of nominal dollars. Higher values indicate greater wage mass in the industry. Suppressed (zero) when is_suppressed=TRUE.
country_idkeystringISO alpha-2 country code (always 'US' for domestic tables).Part of primary key.
county_idkeystring5-character FIPS code identifying the county.Part of primary key. Joins dim.counties on county_id.
emp_nfstringCensus CBP employment noise flag indicating data quality or suppression status for the employees field. Common values include letter codes (e.g., 'a'–'f') denoting imputed employment ranges, or 'G' for geographic suppression.
employeesint64 · workersMid-March employment count for establishments in the county-NAICS-year cell. Subject to Census noise infusion and suppression; check emp_nf and is_suppressed before use.
establishmentsint64 · countNumber of business establishments (physical locations) operating in the county under this NAICS code in the reference year. Higher values indicate greater industry presence. Set to zero or omitted when suppressed.
is_suppressedboolTrue when the Census suppressed employment and payroll figures for this cell to protect establishment confidentiality. Rows with is_suppressed=TRUE still carry a valid establishments count but have unreliable or zeroed numeric fields.
n10_19int64 · establishmentsNumber of establishments in the county-NAICS-year cell with 10–19 paid employees. One of eight Census CBP establishment size-class columns.
n100_249int64 · establishmentsNumber of establishments in the county-NAICS-year cell with 100–249 paid employees. One of eight Census CBP establishment size-class columns.
n1000int64 · establishmentsNumber of establishments in the county-NAICS-year cell with 1,000 or more paid employees. Represents the largest employer size class in the Census CBP size distribution.
n20_49int64 · establishmentsNumber of establishments in the county-NAICS-year cell with 20–49 paid employees. One of eight Census CBP establishment size-class columns.
n250_499int64 · establishmentsNumber of establishments in the county-NAICS-year cell with 250–499 paid employees. One of eight Census CBP establishment size-class columns.
n5_9int64 · establishmentsNumber of establishments in the county-NAICS-year cell with 5–9 paid employees. One of eight Census CBP establishment size-class columns.
n50_99int64 · establishmentsNumber of establishments in the county-NAICS-year cell with 50–99 paid employees. One of eight Census CBP establishment size-class columns.
n500_999int64 · establishmentsNumber of establishments in the county-NAICS-year cell with 500–999 paid employees. One of eight Census CBP establishment size-class columns.
naics_codekeystringNAICS industry classification code identifying the industry sector for this row. May represent full 6-digit codes or higher-level summaries (2–4 digit) depending on Census CBP disclosure rules.Part of primary key. Joins dim.naics_codes on naics_code.
state_idkeystring2-character FIPS code identifying the state.Part of primary key. Joins dim.states on state_id.
yearkeyint64Reference year of the observation.Part of primary key.
relationships

joins

primary key
county_id, state_id, country_id, year, naics_code
common joins
dim.geographies on county_id
economy_establishments_county_year on (county_id, year)
economy_industry_employment_county_year_naics on (county_id, naics_code, year)
usage

how to use this table

method

CBP Business Register extract aggregated by county x NAICS-6 x employment-size-class. Pipeline retains all NAICS levels (2-6 digit); use the digit count to filter granularity.

do not use for

Government establishments; non-employer firms (nonemployer statistics is separate); high-precision NAICS-6 cells in small counties (heavy suppression).

known issues

Heavy suppression at NAICS-6 in small counties. Establishment counts != firm counts.

last updated · Jul 7, 2026