Testing a Famous Political Proxy: Whole Foods vs. Cracker Barrel

The metric replicates to within a point, and then does not survive being asked about people

Democracy’s Data

Last updated September 15, 2026 at 4:42p EDT

In September 2011 David Wasserman, the House editor of the Cook Political Report, stood in the Cracker Barrel in Manassas, Virginia, then drove twenty-six miles east to the Whole Foods in Clarendon. The column he wrote for the Washington Post proposed that the coming election would be fought between those two parking lots.1 It carried a number quoted ever since:

In 2008, candidate Barack Obama carried 81 percent of counties with a Whole Foods and just 36 percent of counties with a Cracker Barrel — a record 45-point gap.

Fifteen years later the shorthand is a fixture of election-night commentary. It says you can read a county’s politics off its grocery stores. Is that true? The question is worth your time because a proxy, a stand-in like this one for something harder to see directly, is how many people picture the political divide, and one that is wrong in a particular direction moves the picture with it.

The test

Answering it takes three files joined together. Store locations for both chains come from OpenStreetMap, the world map built by volunteers, where mappers have placed every Whole Foods and Cracker Barrel they know of; the copy here is as the map stood on 14 August 2026. County presidential returns for 2008 through 2024 are the researcher Tony McGovern’s compilation from news organizations’ results pages, downloadable at https://github.com/tonmcg/US_County_Level_Election_Results_08-24. The Census Bureau supplies county boundaries, populations and land area, and the Department of Agriculture a count of college-educated adults by county; addresses for all of them are in the sources.

The returns and census tables are the easy half. The store list is the problem: neither company publishes where its stores are. Cracker Barrel is a public company, so its annual report to the Securities and Exchange Commission, the Form 10-K, carries a count: 657 stores in 43 states as of 12 September 2025. A count is not a list, and carries no addresses. Whole Foods has been an Amazon subsidiary since 2017 and files nothing about itself, so the number of its markets in the country is not a published figure at all.

So the inventory here is OpenStreetMap’s: every United States object its volunteers have tagged with the chain’s Wikidata identifier, a code that names the brand however the store’s name was typed. That gives 532 Whole Foods Markets and 647 Cracker Barrels. The independent half of a famous political metric is a crowd-sourced guess at a private fact.

The join turns three files into one table. Each store is placed inside a county’s boundary on the map, which hands it the county’s five-digit federal code, the FIPS code that identifies every county in the country, and that code is the column the returns and census tables also carry. Join Keys and Crosswalks states the rule this section keeps returning to, and explains the crosswalk, a table that translates one set of areas into another. A number built from two sources inherits the assumptions of both, and the join adds one about how they line up. Here that assumption is that a county code means the same ground in the store file and in every year’s returns. It does not.

The data

The main table has one row per county. counties.csv carries has_wf and has_cb, the four-way cat combining them, then pop, land_sqmi, density, ba_pct, and win, dem, gop, total per election. gap.csv reduces that to one row per election, with wf_counties, cb_counties, wf_votes, cb_votes, gap_counties and gap_votes. categories.csv reduces it the other way, one row per store category, with county_share, vote_share, dem_counties_pct, dem_votes_pct, med_pop, med_density and med_ba.

Stores are matched on the brand’s Wikidata identifier rather than on the name. Names are typed by hand by thousands of people, as Whole Foods, Whole Foods Market or WholeFoods, and a name match drops whichever spellings nobody anticipated.

Only one brand can be audited, which is itself a finding. Against Cracker Barrel’s own filing the volunteer map holds up: 647 of 657 stores, 98.5%. The state count does not. The map places Cracker Barrels in 44 states and the company says 43, and the difference is one restaurant: Maine’s only Cracker Barrel closed in January 2025 and is still mapped.2 Nothing equivalent can be done for Whole Foods, because there is no filing to check.

Four cleaning decisions follow, and each changed a published number.

Connecticut is two different maps. In 2022 the Census Bureau, at the state’s request, replaced Connecticut’s eight counties with its nine planning regions as the units that stand in for counties;3 the 2024 returns use the new shapes and the four earlier elections the old ones. Uncorrected, this file showed no Whole Foods county in Connecticut until 2024, and there were four. Stores are now assigned twice, once per set of boundaries.

Washington is eight rows in 2024 and one before it. The compilation reports the District by ward, and no boundary file contains wards, so its 8 Whole Foods are summed back into one row. Shannon County, South Dakota, does not exist: renamed Oglala Lakota County in 2015 and given a new code,4 it leaves a careless table carrying two rows for one place. And Alaska has no counties at all, reporting votes by State House district, so every share here is of fifty jurisdictions rather than fifty-one. Each of these fails quietly, because a missing match produces a zero and a zero is a valid store count.

Before you read on, commit to two numbers. In 2024 the Democratic candidate carried some share of counties containing a Whole Foods and some share of counties containing a Cracker Barrel. How many percentage points apart are those two shares? Now ask the same question of people: take every vote cast in Whole Foods counties and every vote cast in Cracker Barrel counties, and take the Democratic share of each. How many points apart are those? Write both down.

What it says about democracy

Start with whether the metric can be reproduced. This store list was captured in August 2026; Wasserman’s 2020 figures, posted a month after that election, came from one five and a half years older.5 Recomputing his four categories:

Counties with How many Wasserman published This file recomputes Difference
whole foods only 95 95% 94.7% -0.3
both 116 77% 75.9% -1.1
cracker barrel only 363 18% 17.4% -0.6
neither 2538 12% 11.7% -0.3

Every category lands within about a point. The same holds further back: for 2008 the column reports a 45-point gap and this file recomputes 43.3 points, a drift of 1.7 across fifteen years of openings and closings. So nothing that follows can be blamed on the data.

2024, measured in Whole Foods counties Cracker Barrel counties Gap
counties carried 76.9% 26.5% 50.4 points
votes cast 59.4% 48.6% 10.8 points

Measured the way the metric is always measured, one county and one tally, the divide is enormous and has grown: 43 points in 2008 and 50 in 2024. Measured in people, the same counties are 10.8 points apart, and that number has barely moved in sixteen years.

Here is how one county enters both rows of that table. Knox County, Tennessee, which holds Knoxville, has 1 Whole Foods and 2 Cracker Barrels on the map, so it counts in both columns. In 2024 its voters cast 218,331 ballots for the two major candidates and Trump carried it, the Democrat taking 40.1% of that two-party vote. In the first row Knox is one tally mark: a Whole Foods county the Democrat lost, and a Cracker Barrel county the Democrat lost, one mark on each side. In the second row Knox is 218,331 ballots at 40.1% Democratic, poured into both sides’ totals, where it weighs as much as 24 counties with neither store of typical size. Do that for all 3,121 counties and you have both lines of Figure 1.

Move across the figure for both readings of any year.

Figure 1. The same metric on two units. Both readings are drawn on one axis, because the claim under test is a distance, and a distance split across two panels is one the reader will not measure. The upper line is the published version, the share of counties carried. The lower line is the same counties, elections and stores, with the Democratic share of the two-party vote in place of the count of counties.

Nothing was done to the data between the two lines. The disagreement comes from a fact about American counties the metric’s arithmetic assumes away.

Counties with How many Share of all counties D carried Share of all votes D share of votes
whole foods only 96 3.1% 90.6% 24.1% 65.5%
both 116 3.7% 65.5% 27.8% 54.2%
cracker barrel only 363 11.6% 14.0% 17.9% 39.9%
neither 2,546 81.6% 9.4% 30.2% 37.4%

The first reason is a category. The counties with neither store are 82% of all counties and 30% of all votes. They are the largest block of the electorate and the most Republican group in the table, and the metric has no column for them. Whatever the gap measures, it measures on the 18% of counties where one of two companies opened.

The second reason is the definition. Wasserman’s own rule is that a county with both stores counts in both columns, which is nearly harmless for 116 counties out of 3,121 when the unit is counties. It is not harmless when the unit is votes: those counties are the big metros, they cast 28% of the national vote, and they appear at full weight on both sides of the subtraction. Take the overlap out and the exclusive categories are 65.5% to 39.9%, a 25.6-point gap. That is a real and large difference, describing 42% of the electorate rather than all of it.

Hover a pair of dots for the counts behind it.

Figure 2. Counties are not people. Each category carries two shares, one of counties and one of votes, and the bar between them is the distance the metric ignores. Cracker Barrel counties are 12% of counties and 18% of votes; Whole Foods counties are the reverse.

The folk reading of the metric is that Whole Foods stands for the urban professional and Cracker Barrel for rural America. The first half is right and the second is wrong. A median Cracker Barrel county holds 172,069 people; a median county with neither store holds 19,722. Cracker Barrels sit on interstate exits outside regional towns, where the traffic is, so Cracker Barrel country is the middle of American county size rather than the bottom. Rural America is the 2,546 counties with neither store, and it is the more Republican: the Democratic candidate carried 9.4% of them against 14.0% of Cracker Barrel counties.

One question is left. The metric feels like a reading of culture, but a cheaper explanation is available: Whole Foods opens where there are dense, affluent, highly educated customers, and those are the people who vote Democratic. Take the 212 counties selected by “has a Whole Foods”, then the same number selected by rules using no store data, and ask each the identical question.

The 212 counties picked by D carried D share of their votes That also have a Whole Foods
has a Whole Foods 76.9% 59.4% 100%
the 212 densest counties 74.5% 59.9% 64%
the 212 most-educated counties 71.7% 61.5% 50%
the 212 most populous counties 63.7% 57.5% 74%

On counties the store list wins by about two points. On votes it loses. Density and education each pick a set of counties whose electorate is more Democratic than the Whole Foods set. The last column shows why the contest is close: 64% of the densest 212 counties already contain a Whole Foods. The store list is substantially a density list with a brand name on it.

Cracker Barrel’s spokeswoman told Wasserman in 2011 that “politics don’t play any role in our site selection process.” She was right, and that is the problem. The stores are sited on traffic counts, rooftops and household income, which is why they line up with the vote and why they add so little once you have the rooftops.

What this brief cannot tell you

It cannot tell you that the store list is complete. It is a volunteer file audited against one company’s filing and against nothing for the other. 98.5% coverage is reassuring, but no guarantee that the missing 10 are scattered at random. If volunteers map less thoroughly where fewer volunteers live, the gaps sit where the metric is most sensitive.

The matched-count test is a comparison, not a regression, meaning not a best line drawn through a scatter of points. That density picks a similar set of counties does not prove the store adds nothing, only that whatever it adds is small.

A store is not a shopper. Every claim here is about counties containing a store, never about people who shop in one. Wasserman’s headline was about shoppers; his data, like this data, was about county boundaries. This book makes that argument at length in levels-of-aggregation.

And it says nothing about 2028. Every figure here is retrospective, and the bellwether brief is the warning about pointing a county-level regularity at the future.

What you should have learned

Extensions

Each can be answered by sorting or grouping in a spreadsheet, and none is answered above.

Two go past the spreadsheet. Pick another chain with a political reputation and see whether it publishes addresses at all. Or rebuild the four categories in counties.csv on the 2020 returns, using has_wf_2020 and has_cb_2020, and say which answer you would print.

Sources

Data

The data itself

The tables this brief rests on are plain CSV and open in a spreadsheet.

alternatives.csv, anachronism.csv, categories.csv, cb_by_state.csv, counties.csv, gap.csv, inventory_check.csv, missing.csv, published_2020.csv, stores.csv

One more file is not data about the subject – it is how this chapter checked its own numbers: facts.csv, the individual numbers the text above quotes.

Rebuild this data yourself, with an AI assistant
I want to rebuild a public dataset from its original source, without
any starting files. Please do the following and show your work — and
know going in that this source is edited by volunteers every day, so
your counts will sit near the ones below, not on them.

THE SOURCE. OpenStreetMap, read through the Overpass API at
https://overpass-api.de/api/interpreter
Free, no account, no key, but rate-limited — be polite and expect a
long query to take a minute. Ask for every United States object whose
brand:wikidata tag is Q1809448 (Whole Foods Market) or Q4492609
(Cracker Barrel). Each object is one mapped store, with coordinates.
Neither company publishes a store list: Cracker Barrel files only a
count with the SEC, and Whole Foods, as an Amazon subsidiary, files
nothing — so a volunteer map is the best public inventory there is,
and that is the point worth noticing.

WHAT TO BUILD.
1. A count of each chain's mapped stores, and the number of states
   each appears in.
2. The same counts audited against the one official number that
   exists: Cracker Barrel's annual report (Form 10-K, fiscal 2025)
   says how many stores in how many states.
3. Each store placed in its county, using the Census Bureau's county
   boundary files, and a count of counties containing each chain.

CHECK YOUR WORK. The copy this book used was drawn on 13 August 2026,
against a map database current to the day. You should find numbers
near these:
- 532 Whole Foods and 647 Cracker Barrel objects
- the 10-K says 657 stores in 43 states; the volunteer map finds
  Cracker Barrel in 44, because it still carries a Maine store that
  closed — disagreement of that size is the expected finding
- 212 counties with a Whole Foods, 479 with a Cracker Barrel
OpenStreetMap changes every day; a count a handful off means
volunteers edited the map, not that you made an error.

  1. David Wasserman, “Will the 2012 election be a contest of Whole Foods vs. Cracker Barrel shoppers?,” Washington Post, 28 September 2011; the address is in the sources below.↩︎

  2. The South Portland restaurant closed on 21 January 2025: News Center Maine, “Cracker Barrel closes its only Maine location in South Portland,” https://www.newscentermaine.com/article/money/business/cracker-barrel-closes-its-only-maine-location-january/97-42f0ab30-2d97-4f84-9c66-8914769cc8d3.↩︎

  3. Census Bureau, “Change to County-Equivalents in the State of Connecticut,” Federal Register, 6 June 2022, https://www.federalregister.gov/documents/2022/06/06/2022-12063/change-to-county-equivalents-in-the-state-of-connecticut.↩︎

  4. The change was published in the Federal Register on 17 July 2015: https://www.federalregister.gov/documents/2015/07/17/2015-17501/change-to-the-name-of-shannon-county-south-dakota.↩︎

  5. Dave Wasserman (@Redistrict), 8 December 2020, giving the four-category breakdown: https://x.com/Redistrict/status/1336355310789922820.↩︎