↖︎ Vishal Singh

Data Teaching Case · Interrupted Time Series

Did Iowa drink more during COVID?

Wholesale spirits orders rose. The regression finds a modest break. But the hardest lesson is that a clean-looking time series can still measure the wrong thing.

Executive Summary

+9.6%

Wholesale volume rose in 2020. Iowa stores ordered 2.71 million nine-liter cases, versus 2.47 million in 2019.

+12.6%

The initial break was modest. The model’s first-four-week estimate has a 95% interval of +4.1% to +21.7%.

≠ consumption

The outcome is retailer orders. Bar closures, stockpiling, and channel substitution are inseparable from drinking.

Analytical decision

Would you publish “COVID increased alcohol consumption in Iowa”?

You have a complete weekly wholesale series but no untreated state, no household panel, and no on-premise depletion data. Your task is to decide what the evidence can support, what regression adds, and which sentence would survive peer review.

On March 16, 2020, Iowa closed restaurants and bars to on-premise customers. Grocery, convenience, and liquor stores remained channels for off-premise spirits. The public transaction record then shows exactly what one might expect: a bump. But “a bump” can mean households drank more, households bought earlier, bars shifted purchases, stores changed order cadence, or demand moved from a missing channel into the observed one.

The closure date and terms come from the Governor of Iowa’s emergency proclamation. The transaction source is the official Iowa Liquor Sales dataset.

1 · The visible break

Align 2020 by week of year and compare it with the 2018–19 seasonal baseline. The week of the closure ran 33.8% above that two-year mean. Yet the line does not stay at crisis-level heights. The increase becomes a sequence of moderate deviations interrupted by ordinary holiday and ordering spikes.

Weekly wholesale spirits volume: 2020 versus the 2018–19 seasonal baseline

Nine-liter-case equivalents · shaded range spans the two baseline years · closure week = ISO week 12

Open weekly table
Figure 1. The comparison controls for the calendar’s strong seasonality but not for trend, macroeconomic conditions, policy changes, or the migration from on-premise to off-premise channels.

2 · What regression adds—and does not

The compact interrupted-time-series model uses all pre-COVID weeks to estimate a linear trend and week-of-year fixed effects. Three indicators represent the first four closure weeks, the next twelve weeks, and the rest of 2020. Standard errors are clustered by calendar month.

log(casest) = αweek-of-year + β·trend + δ₁·weeks 0–3 + δ₂·weeks 4–15 + δ₃·weeks 16–40 + εt

periodestimateclustered SE95% CI

Event-time estimates around the March 16 closure

Log-point differences for 2020 relative to the same calendar weeks in 2018–19 · reference = week −1 · 95% intervals

Open coefficient table
Figure 2. Individual weeks are noisy and the design has only one treated year. The phase regression is more stable because it pools weeks, but neither specification creates an untreated Iowa.

The regression makes the before/after comparison more disciplined. It does not manufacture a counterfactual.

3 · Growth came from a changing basket

Whiskey contributed the most incremental cases, closely followed by cocktails and ready-to-drink products. RTD volume rose 59% year over year, but that category was already expanding before COVID. The distinction matters: a large 2020 change can combine an existing product trend with a pandemic shock.

Change in nine-liter cases by broad category, 2019 to 2020

Absolute calendar-year change · all Iowa wholesale orders

Open category table
Figure 3. Absolute contribution and percentage growth answer different questions. RTD grew fastest; whiskey added slightly more physical volume because it began from a much larger base.

4 · Categories did not move together

Separate category regressions show the initial response concentrated in RTD, whiskey, vodka, and rum. Tequila and schnapps were below their estimated seasonal trends in the first four weeks, then tequila rebounded. This heterogeneity is consistent with a change in occasions and channels—not simply a uniform rise in drinking.

Estimated category shifts by phase

Percent change from separate seasonal trend models · circles: weeks 0–3 · diamonds: weeks 4–15

Open category regression table
Figure 4. Models are estimated separately by category with the same week-of-year fixed effects, trend, and month-clustered inference. Multiple estimates are exploratory; no multiple-testing correction is applied.

5 · The package mix barely moved

If households had shifted dramatically into pantry stockpiling, one might expect a sharp jump in one-liter and 1.75-liter formats. Their share was 59.9% before the closure and 59.4% in the first four weeks. Smaller bottles edged up instead. The package evidence argues against a simple “everyone bought handles” story.

Large- and small-format shares of weekly spirits volume

Large = 1L + 1.75L · small = ≤375mL · weekly, 2018–2021

Figure 5. Shares use liters, not bottle counts. The residual consists mainly of 750mL and other formats.

6 · A tempting drinking story the data cannot tell

Weekend invoice dates are almost absent: across four years, only 17 Saturdays and 41 Sundays contain any volume, and weekends account for less than 1% of cases. The recorded date is therefore dominated by wholesale ordering and distribution operations—not the occasion when a consumer bought or drank the product. Still, invoice timing changed briefly: Friday’s volume share rose from 15.3% before COVID to 22.6% in weeks 0–3 and 21.8% in weeks 4–15, then drifted back toward 18% in 2021.

log(daily cases + 1) = weekday FE + calendar-week FE + Friday × COVID phase + ε

A within-week model estimates Friday volume rose 58% relative to Monday–Thursday in weeks 0–3 and 78% in weeks 4–15. Later estimates are small and statistically inconclusive. The defensible interpretation is a short-run shift in retailer invoice or delivery timing—not evidence that work-from-home caused more weekday drinking.

Wholesale volume by invoice-day group

Share of nine-liter cases within each phase · the weekend is operationally near-zero

Open invoice-day table
Figure 6. Friday temporarily gained share at the expense of Monday–Thursday. Because the source date is a wholesale invoice date and weekend coverage is structurally absent, this chart describes ordering cadence rather than consumer drinking occasions.

Teaching questions

  1. Choose the estimand.

    Is the object of interest total consumption, retail availability, household purchasing, state wholesale revenue, or channel substitution? Which one does this dataset actually observe?

  2. Defend a counterfactual.

    Would you prefer another state, beer and wine data, household panels, or on-premise depletion records? What assumption would each comparison add?

  3. Interrogate the standard errors.

    Month clustering addresses some within-month dependence but not all serial correlation. How would inference change with a longer pre-period or a state panel?

  4. Audit the timestamp.

    Why can an invoice date identify a distribution schedule but not the day a consumer drank? What retail or household data would be needed?

  5. Write the headline.

    Draft one sentence that is accurate enough for a policy memo and one that would overclaim. Identify the exact word that creates the causal leap.

Data & methods

  • Source. `bigquery-public-data.iowa_liquor_sales.sales`, extracted July 10, 2026. The dataset records spirits purchases by Iowa Class E licensees; it does not record household consumption.
  • Grain. Monday-starting weeks from January 2018 through December 2021, aggregated across stores and products.
  • Categories. Product category names are mapped into ten mutually exclusive families. Volume is recorded liters divided by nine.
  • Main model. PyFixest OLS on log weekly cases with a linear trend, ISO-week fixed effects, and three 2020 phase indicators. CRV1 standard errors cluster weeks within calendar month.
  • Event plot. 2020 is compared with the same ISO weeks in 2018–19 using year and week-of-year fixed effects; week −1 is the reference.
  • Invoice-day diagnostic. Monday–Friday daily cases are compared within calendar week using weekday and week fixed effects; standard errors cluster by week. Weekend dates are retained descriptively to reveal the source’s operational coverage gap.
  • Limitations. One treated state; no state control; only two pre-years in the displayed window; wholesale orders are lumpy; COVID changed channels, policy, income, mobility, and product availability simultaneously.
  • Reproducibility. Executed notebooks: `data/iowa-liquor-events/iowa_event_studies.ipynb` and `iowa_covid_invoice_day_diagnostic.ipynb`. The added daily diagnostic is generated by `scripts/iowa_covid_weekday_analyze.py`.

External context: Iowa emergency proclamation; Iowa Restaurant Association retrospective; PyFixest documentation.