Methodology
Every number in BMIE can answer one question: where did this come from? This page explains how.
Classification of every figure
Each stored observation carries one of these labels. Public pages print the label whenever a figure is anything other than a direct observation.
| Label | Meaning | Figures on file |
|---|---|---|
OBSERVED_PUBLIC | Directly reported by a public/government source | 9,141,839 |
DERIVED | Arithmetic on observed values (sums, ratios, growth) | 4,905,927 |
MODELED | Output of a BMIE model | 115,985 |
FORECAST | Projected future value | 46,003 |
NORMALIZED_ESTIMATE | Historical value re-expressed in a different geography vintage | 0 |
USER_PROVIDED | Entered by a user | 0 |
BLUFOODIES_FIRST_PARTY | Measured on BluFoodies / MenuMate | 0 |
OBSERVED_LICENSED | Directly reported by a licensed commercial source | 0 |
Geography
- ZIP Code Tabulation Areas (ZCTAs) are the primary market unit. They are Census Bureau approximations of USPS ZIP codes, redrawn after each decennial census. BMIE keeps the 2010 and 2020 definitions separately; a figure is stored on the boundary it was published for and the page says which.
- USPS ZIP codes are delivery routes, not areas. ZIP Code Business Patterns reports by ZIP; BMIE links a ZIP to the ZCTA with the same code. For most codes they describe the same place; for some (PO-box ZIPs, large-volume ZIPs) they do not.
- Counties carry a share for every ZCTA that crosses them (land-area share for 2020, population/housing/area shares for 2010). A ZCTA's "county" on a market page is the one holding the largest share.
- Historical values are never silently re-expressed on new boundaries. When BMIE does convert one, the result is labelled
NORMALIZED_ESTIMATE.
Known limitations
- ZIP Code Business Patterns disclosure change, 2017. From the 2017 reference year the Census Bureau withholds small ZIP-level industry cells. Far fewer ZIPs carry restaurant rows than in 2016 and earlier. A ZIP that disappears from the series is not evidence that its restaurants closed.
- Older Business Patterns files publish only six-digit codes (for example 2005), so BMIE's category totals there are sums of the published detail rather than a published subtotal. Both are exact counts.
- Industry classifications changed from SIC (through 1997) to successive NAICS editions. BMIE maps every code to a stable set of categories; under SIC, full-service and limited-service restaurants cannot be separated.
- Population is the 2010 Census count until American Community Survey estimates are connected. Density figures say which restaurant year was divided by it.
- Growth percentages are simple percentage change between two published counts and make no adjustment for the disclosure change above.
Derived variables
| Variable | Name | How it is computed |
|---|---|---|
bmie.density.restaurants.per10k | Establishments per 10,000 residents, restaurants | ZBP establishments for the USPS ZIP with the same code (year in original_code) ÷ 2010 Census population of the ZCTA × 10,000. |
bmie.est.cafeteria_buffet | Establishments: cafeteria_buffet (BMIE category, from ZBP) | Coarsest industry code mapped to the category in industry_code_map, else the sum of child categories. |
bmie.est.caterers | Establishments: caterers (BMIE category, from ZBP) | Coarsest industry code mapped to the category in industry_code_map, else the sum of child categories. |
bmie.est.drinking_places | Establishments: drinking_places (BMIE category, from ZBP) | Coarsest industry code mapped to the category in industry_code_map, else the sum of child categories. |
bmie.est.food_contractors | Establishments: food_contractors (BMIE category, from ZBP) | Coarsest industry code mapped to the category in industry_code_map, else the sum of child categories. |
bmie.est.food_services | Establishments: food_services (BMIE category, from ZBP) | Coarsest industry code mapped to the category in industry_code_map, else the sum of child categories. |
bmie.est.full_service | Establishments: full_service (BMIE category, from ZBP) | Coarsest industry code mapped to the category in industry_code_map, else the sum of child categories. |
bmie.est.limited_service | Establishments: limited_service (BMIE category, from ZBP) | Coarsest industry code mapped to the category in industry_code_map, else the sum of child categories. |
bmie.est.mobile_food | Establishments: mobile_food (BMIE category, from ZBP) | Coarsest industry code mapped to the category in industry_code_map, else the sum of child categories. |
bmie.est.restaurants | Establishments: restaurants (BMIE category, from ZBP) | Coarsest industry code mapped to the category in industry_code_map, else the sum of child categories. |
bmie.est.snack_beverage | Establishments: snack_beverage (BMIE category, from ZBP) | Coarsest industry code mapped to the category in industry_code_map, else the sum of child categories. |
bmie.est.special_food | Establishments: special_food (BMIE category, from ZBP) | Coarsest industry code mapped to the category in industry_code_map, else the sum of child categories. |
bmie.forecast.population.5y | Projected population, 5 years ahead (linear trend) | Least-squares line through the last 11 observed years, extended 5 years. Range = 80% prediction interval from the fit residuals. original_code = as-of year. |
bmie.forecast.restaurants.5y | Projected restaurants, 5 years ahead (linear trend) | Least-squares line through the last 11 observed years, extended 5 years. Range = 80% prediction interval from the fit residuals. original_code = as-of year. |
bmie.growth.restaurants.10y | Establishment growth, restaurants, 10y (%) | 100 × (end − start) ÷ start over the ZBP years on file; start year in original_code. A start value of 0 gives no result (division by zero). |
bmie.growth.restaurants.20y | Establishment growth, restaurants, 20y (%) | 100 × (end − start) ÷ start over the ZBP years on file; start year in original_code. A start value of 0 gives no result (division by zero). |
bmie.growth.restaurants.5y | Establishment growth, restaurants, 5y (%) | 100 × (end − start) ÷ start over the ZBP years on file; start year in original_code. A start value of 0 gives no result (division by zero). |
bmie.growth.restaurants.longest | Establishment growth, restaurants, longest (%) | 100 × (end − start) ÷ start over the ZBP years on file; start year in original_code. A start value of 0 gives no result (division by zero). |
bmie.score.bmie_market_score | BMIE Market Score (0–100) | Weighted mean of national percentile ranks of its components; weights in the model registry (bmie_market_score). |
bmie.score.consumer_market_score | Consumer Market Score (0–100) | Weighted mean of national percentile ranks of its components; weights in the model registry (consumer_market_score). |
bmie.score.market_momentum_score | Market Momentum Score (0–100) | Weighted mean of national percentile ranks of its components; weights in the model registry (market_momentum_score). |
bmie.score.restaurant_opportunity_score | Restaurant Opportunity Score (0–100) | Weighted mean of national percentile ranks of its components; weights in the model registry (restaurant_opportunity_score). |
Sources and licences
| Source | Status | Licence | Coverage | Years | Update cycle | Last import |
|---|---|---|---|---|---|---|
| American Community Survey 5-Year Estimates U.S. Census Bureau · site Detailed demographic, economic and housing estimates. ZCTA-level from 2011 (2007-2011). Requires CENSUS_API_KEY. |
connected | U.S. Government public domain | national | 2011-2023 | annual (December) | 2026-09-05 |
| Census Cartographic Boundary Files U.S. Census Bureau · site Generalised (1:500k) polygons for ZCTAs, counties, states. |
connected | U.S. Government public domain | national | 2010, 2013-2024 | annual | 2026-09-04 |
| Census Gazetteer Files U.S. Census Bureau · site Centroids and land/water area for every ZCTA, county and place, per boundary vintage. |
connected | U.S. Government public domain | national | 2010, 2012-2024 | annual | 2026-09-05 |
| Census Geographic Relationship Files U.S. Census Bureau · site ZCTA-to-county and 2010-to-2020 ZCTA relationship files with land-area and population shares. |
connected | U.S. Government public domain | national | 2010, 2020 | decennial | 2026-09-05 |
| Overture Maps Places Overture Maps Foundation · site Open POI dataset incl. restaurants with category, address, coordinates. Candidate restaurant master seed — NOT imported until approved. |
connected | CDLA-Permissive-2.0 | global | 2023- | monthly | 2026-09-05 |
| ZIP Code Business Patterns U.S. Census Bureau · site Establishment counts by ZIP and NAICS/SIC with size classes. Flat files 1994-2022 (no API key needed). |
connected | U.S. Government public domain | national | 1994-2022 | annual (~18 months lag) | 2026-09-05 |
| BluFoodies / MenuMate first-party BluFoodies · site Menus, prices, searches, engagement, advertising (§30, §46, §49). Aggregate only (§91). |
registered | BluFoodies first-party | wherever BluFoodies operates | 2026- | continuous | not yet |
| Bureau of Economic Analysis U.S. Department of Commerce · site Regional income and GDP; consumer expenditure inputs (§29). |
registered | U.S. Government public domain | national | varies | annual | not yet |
| Bureau of Labor Statistics U.S. Department of Labor · site QCEW employment/wages, CPI for inflation adjustment (§18). |
registered | U.S. Government public domain | national | varies | monthly/quarterly | not yet |
| County Business Patterns U.S. Census Bureau · site County-level establishments, employment and payroll by industry, 1986 onward. |
registered | U.S. Government public domain | national | 1986-2022 | annual | not yet |
| Decennial Census U.S. Census Bureau · site Population and housing counts every ten years. Long-term horizon (§16). |
registered | U.S. Government public domain | national | 1970-2020 (digital) | decennial | not yet |
| USDA Food Environment Atlas USDA Economic Research Service · site County-level restaurant availability, food access, food stores, socioeconomic indicators. County only — never shown as ZCTA (§9). |
registered | U.S. Government public domain | national (county) | 2011-2020 | irregular | not yet |
Datasets loaded
| Dataset | Source | Vintage | Reports at | Boundary vintage | Notes |
|---|---|---|---|---|---|
| ACS 5-Year 2023 (2019-2023) ZCTA | American Community Survey 5-Year Estimates | 2023 | zcta | 2020 | |
| ACS 5-Year 2024 (2020-2024) ZCTA | American Community Survey 5-Year Estimates | 2024 | zcta | 2020 | |
| Cartographic boundary ZCTA 2020 1:500k | Census Cartographic Boundary Files | 2020 | zcta | 2020 | |
| Census Gazetteer ZCTA 2010 | Census Gazetteer Files | 2010 | zcta | 2010 | |
| Census Gazetteer counties 2010 | Census Gazetteer Files | 2010 | county | 2010 | |
| Census Gazetteer ZCTA 2023 | Census Gazetteer Files | 2023 | zcta | 2020 | |
| Census Gazetteer counties 2023 | Census Gazetteer Files | 2023 | county | 2020 | |
| Census Gazetteer places 2023 | Census Gazetteer Files | 2023 | place | 2020 | |
| Census Gazetteer ZCTA 2024 | Census Gazetteer Files | 2024 | zcta | 2020 | |
| Census Gazetteer counties 2024 | Census Gazetteer Files | 2024 | county | 2020 | |
| Census Gazetteer places 2024 | Census Gazetteer Files | 2024 | place | 2020 | |
| ZCTA to county relationship file 2010 | Census Geographic Relationship Files | 2010 | zcta | 2010 | |
| ZCTA to county relationship file 2020 | Census Geographic Relationship Files | 2020 | zcta | 2020 | |
| ZCTA to place relationship file 2020 | Census Geographic Relationship Files | 2020 | zcta | 2020 | |
| Overture Places 2026-08-19.0 — US food and drink | Overture Maps Places | 2026-08-19.0 | point | n/a | Filtered to taxonomy hierarchy food_and_drink and country US. Licence CDLA-Permissive-2.0. |
| ZIP Code Business Patterns 1994 detail | ZIP Code Business Patterns | 1994 | zip | n/a | Industry codes: SIC1987. Reference week of March 12, 1994. |
| ZIP Code Business Patterns 1995 detail | ZIP Code Business Patterns | 1995 | zip | n/a | Industry codes: SIC1987. Reference week of March 12, 1995. |
| ZIP Code Business Patterns 1996 detail | ZIP Code Business Patterns | 1996 | zip | n/a | Industry codes: SIC1987. Reference week of March 12, 1996. |
| ZIP Code Business Patterns 1997 detail | ZIP Code Business Patterns | 1997 | zip | n/a | Industry codes: SIC1987. Reference week of March 12, 1997. |
| ZIP Code Business Patterns 1998 detail | ZIP Code Business Patterns | 1998 | zip | n/a | Industry codes: NAICS1997. Reference week of March 12, 1998. |
| ZIP Code Business Patterns 1999 detail | ZIP Code Business Patterns | 1999 | zip | n/a | Industry codes: NAICS1997. Reference week of March 12, 1999. |
| ZIP Code Business Patterns 2000 detail | ZIP Code Business Patterns | 2000 | zip | n/a | Industry codes: NAICS1997. Reference week of March 12, 2000. |
| ZIP Code Business Patterns 2001 detail | ZIP Code Business Patterns | 2001 | zip | n/a | Industry codes: NAICS1997. Reference week of March 12, 2001. |
| ZIP Code Business Patterns 2002 detail | ZIP Code Business Patterns | 2002 | zip | n/a | Industry codes: NAICS1997. Reference week of March 12, 2002. |
| ZIP Code Business Patterns 2003 detail | ZIP Code Business Patterns | 2003 | zip | n/a | Industry codes: NAICS2002. Reference week of March 12, 2003. |
| ZIP Code Business Patterns 2004 detail | ZIP Code Business Patterns | 2004 | zip | n/a | Industry codes: NAICS2002. Reference week of March 12, 2004. |
| ZIP Code Business Patterns 2005 detail | ZIP Code Business Patterns | 2005 | zip | n/a | Industry codes: NAICS2002. Reference week of March 12, 2005. |
| ZIP Code Business Patterns 2006 detail | ZIP Code Business Patterns | 2006 | zip | n/a | Industry codes: NAICS2002. Reference week of March 12, 2006. |
| ZIP Code Business Patterns 2007 detail | ZIP Code Business Patterns | 2007 | zip | n/a | Industry codes: NAICS2002. Reference week of March 12, 2007. |
| ZIP Code Business Patterns 2008 detail | ZIP Code Business Patterns | 2008 | zip | n/a | Industry codes: NAICS2007. Reference week of March 12, 2008. |
| ZIP Code Business Patterns 2009 detail | ZIP Code Business Patterns | 2009 | zip | n/a | Industry codes: NAICS2007. Reference week of March 12, 2009. |
| ZIP Code Business Patterns 2010 detail | ZIP Code Business Patterns | 2010 | zip | n/a | Industry codes: NAICS2007. Reference week of March 12, 2010. |
| ZIP Code Business Patterns 2011 detail | ZIP Code Business Patterns | 2011 | zip | n/a | Industry codes: NAICS2007. Reference week of March 12, 2011. |
| ZIP Code Business Patterns 2012 detail | ZIP Code Business Patterns | 2012 | zip | n/a | Industry codes: NAICS2012. Reference week of March 12, 2012. |
| ZIP Code Business Patterns 2013 detail | ZIP Code Business Patterns | 2013 | zip | n/a | Industry codes: NAICS2012. Reference week of March 12, 2013. |
| ZIP Code Business Patterns 2014 detail | ZIP Code Business Patterns | 2014 | zip | n/a | Industry codes: NAICS2012. Reference week of March 12, 2014. |
| ZIP Code Business Patterns 2015 detail | ZIP Code Business Patterns | 2015 | zip | n/a | Industry codes: NAICS2012. Reference week of March 12, 2015. |
| ZIP Code Business Patterns 2016 detail | ZIP Code Business Patterns | 2016 | zip | n/a | Industry codes: NAICS2012. Reference week of March 12, 2016. |
| ZIP Code Business Patterns 2017 detail | ZIP Code Business Patterns | 2017 | zip | n/a | Industry codes: NAICS2017. Reference week of March 12, 2017. KNOWN DISCONTINUITY: from the 2017 release the Census Bureau applies stricter disclosure avoidance to ZBP, withholding many small ZIP/industry cells. Far fewer ZIPs carry restaurant rows than in 2016 and earlier; a ZIP that disappears is NOT evidence of closures. Compare across this break only at county level or with explicit caveats (spec §78, §83). |
| ZIP Code Business Patterns 2018 detail | ZIP Code Business Patterns | 2018 | zip | n/a | Industry codes: NAICS2017. Reference week of March 12, 2018. KNOWN DISCONTINUITY: from the 2017 release the Census Bureau applies stricter disclosure avoidance to ZBP, withholding many small ZIP/industry cells. Far fewer ZIPs carry restaurant rows than in 2016 and earlier; a ZIP that disappears is NOT evidence of closures. Compare across this break only at county level or with explicit caveats (spec §78, §83). |
| ZIP Code Business Patterns 2019 detail | ZIP Code Business Patterns | 2019 | zip | n/a | Industry codes: NAICS2017. Reference week of March 12, 2019. KNOWN DISCONTINUITY: from the 2017 release the Census Bureau applies stricter disclosure avoidance to ZBP, withholding many small ZIP/industry cells. Far fewer ZIPs carry restaurant rows than in 2016 and earlier; a ZIP that disappears is NOT evidence of closures. Compare across this break only at county level or with explicit caveats (spec §78, §83). |
| ZIP Code Business Patterns 2020 detail | ZIP Code Business Patterns | 2020 | zip | n/a | Industry codes: NAICS2017. Reference week of March 12, 2020. KNOWN DISCONTINUITY: from the 2017 release the Census Bureau applies stricter disclosure avoidance to ZBP, withholding many small ZIP/industry cells. Far fewer ZIPs carry restaurant rows than in 2016 and earlier; a ZIP that disappears is NOT evidence of closures. Compare across this break only at county level or with explicit caveats (spec §78, §83). |
| ZIP Code Business Patterns 2021 detail | ZIP Code Business Patterns | 2021 | zip | n/a | Industry codes: NAICS2017. Reference week of March 12, 2021. KNOWN DISCONTINUITY: from the 2017 release the Census Bureau applies stricter disclosure avoidance to ZBP, withholding many small ZIP/industry cells. Far fewer ZIPs carry restaurant rows than in 2016 and earlier; a ZIP that disappears is NOT evidence of closures. Compare across this break only at county level or with explicit caveats (spec §78, §83). |
| ZIP Code Business Patterns 2022 detail | ZIP Code Business Patterns | 2022 | zip | n/a | Industry codes: NAICS2022. Reference week of March 12, 2022. KNOWN DISCONTINUITY: from the 2017 release the Census Bureau applies stricter disclosure avoidance to ZBP, withholding many small ZIP/industry cells. Far fewer ZIPs carry restaurant rows than in 2016 and earlier; a ZIP that disappears is NOT evidence of closures. Compare across this break only at county level or with explicit caveats (spec §78, §83). |
| ZIP Code Business Patterns 2022 totals | ZIP Code Business Patterns | 2022 | zip | n/a | All-industry totals per ZIP plus the USPS city and county name. emp/qp1/ap carry noise flags G/H/J (low/medium/high noise) or D/S (withheld). |
| ZIP Code Business Patterns 2023 detail | ZIP Code Business Patterns | 2023 | zip | n/a | Industry codes: NAICS2022. Reference week of March 12, 2023. KNOWN DISCONTINUITY: from the 2017 release the Census Bureau applies stricter disclosure avoidance to ZBP, withholding many small ZIP/industry cells. Far fewer ZIPs carry restaurant rows than in 2016 and earlier; a ZIP that disappears is NOT evidence of closures. Compare across this break only at county level or with explicit caveats (spec §78, §83). |
| ZIP Code Business Patterns 2023 totals | ZIP Code Business Patterns | 2023 | zip | n/a | All-industry totals per ZIP plus the USPS city and county name. emp/qp1/ap carry noise flags G/H/J (low/medium/high noise) or D/S (withheld). |
What BMIE will not do
- Invent a figure where a source is missing. Pages say "Data source not yet connected."
- Present a model output or forecast as an observation.
- Scrape sources whose terms prohibit it.
- Publish statistics from samples too small to be reliable, or expose individual consumer behaviour.
- Rewrite history: a revised value is stored as a new version beside the old one.