Quant Memo
Core

Event Study Designs

Instead of collapsing a policy's effect into one before/after number, an event-study design estimates a separate effect for each period relative to when treatment happened, revealing both pre-trends and how the effect evolves over time.

Prerequisites: Parallel Trends and Pre-Trend Tests

A standard difference-in-differences regression collapses a policy's whole effect into a single number: "trading volume fell by $14m on average after the tax." But that single number hides a lot: did the effect appear immediately or build gradually over several months? Did it fade over time as traders adapted? Was there already movement in the weeks before the policy took effect, which would undercut the parallel-trends assumption the whole comparison relies on? An event-study design answers all three by estimating a separate effect for every time period relative to the event, not one pooled average.

An analogy: a heart-rate monitor instead of one pulse reading

A doctor checking "did this medication change your heart rate" could take one reading before and one after, and report the difference. But a continuous heart-rate monitor worn for a week before and after gives a much richer picture: was the rate already drifting before the dose (a bad sign for attributing any change to the medication)? Did the effect kick in immediately or ramp up over hours? Did it plateau or fade? An event study is the continuous monitor version of a treatment-effect estimate — one number per time period, plotted as a path, rather than a single before/after snapshot.

The design, one symbol at a time

Let e=tTie = t - T_i be event time: periods relative to when unit ii was treated (negative before, zero at, positive after). Instead of one treatment dummy, include a separate indicator for each event-time period (omitting one, typically e=1e=-1, as the reference):

Yit=αi+γt+k1βk1[eit=k]+εitY_{it} = \alpha_i + \gamma_t + \sum_{k \ne -1} \beta_k \cdot \mathbb{1}[e_{it} = k] + \varepsilon_{it}

In plain English: αi\alpha_i soaks up each unit's permanent average level, γt\gamma_t soaks up shocks common to every unit in each calendar period, and each βk\beta_k measures how much unit outcomes deviate, at exactly kk periods relative to treatment, from the omitted reference period — plotting the sequence of estimated βk\beta_k's against kk gives the full dynamic path. The βk\beta_k's for k<0k < 0 (pre-treatment) should be close to zero and statistically insignificant if parallel trends holds — this is exactly the visual version of the pre-trend test from parallel trends and pre-trend tests. The βk\beta_k's for k0k \ge 0 trace out how the effect builds, peaks, or fades after treatment.

Worked example 1: reading a clean event-study path

Suppose estimated coefficients (relative to e=1e=-1) are: β3=0.3\beta_{-3}=0.3, β2=0.2\beta_{-2}=-0.2, β0=4.1\beta_0=-4.1, β1=8.7\beta_1=-8.7, β2=9.5\beta_2=-9.5, β3=9.2\beta_3=-9.2 (all in $m, none of the pre-period coefficients statistically distinguishable from zero, but the post-period ones highly significant). Reading this: the pre-treatment coefficients bounce near zero with no trend, supporting parallel trends. The effect isn't immediate and full-sized at e=0e=0 (only −$4.1m) — it builds over the first two post-periods to about −$9.5m by e=2e=2, then holds roughly steady. A single before/after diff-in-diff number would have reported something like the average of these post-period values, roughly −$7.9m, obscuring that the effect actually ramped up over time and only partially materialized in the first period.

Worked example 2: catching a fading effect and a pre-trend problem

Now suppose a different policy shows: β3=2.1\beta_{-3}=-2.1, β2=1.0\beta_{-2}=-1.0 (a mild pre-trend already moving toward the eventual post-period direction), β0=6.0\beta_0=-6.0, β1=3.5\beta_1=-3.5, β2=1.0\beta_2=-1.0, β3=0.2\beta_3=0.2 (essentially back to baseline by three periods out). Two things an event study catches that a single diff-in-diff number would hide: first, the modest pre-trend (β3,β2\beta_{-3}, \beta_{-2} moving away from zero before treatment) is a warning sign that some of the post-treatment effect might be a continuation of a pre-existing trend rather than a clean treatment response. Second, the effect visibly fades to nothing by e=3e=3 — reporting a single "the policy reduced volume by $3.2m on average" (a rough average of the post-period coefficients) would misleadingly suggest a stable, permanent effect when the real story is a temporary shock that dissipated within a quarter.

event time = 0 flat pre-period effect builds, then holds
Plotting one coefficient per event-time period, rather than a single pooled number, shows both that the pre-period was flat (supporting parallel trends) and how the effect actually evolved after treatment.
event time = 0 mild pre-trend fades to ~0
A slight pre-period drift (left) and an effect that decays back to baseline (right) are both visible in the event-time plot but would be invisible in a single pooled coefficient.

What this means in practice

Event-study designs are the natural extension of diff-in-differences whenever a single before/after number would obscure dynamics that matter for the decision at hand — regulatory changes, product launches, or any policy where "does the effect persist" is as important as "does an effect exist." They also serve as the most direct, visual pre-trend diagnostic available: a chart of the βk\beta_k's makes any pre-existing divergence immediately obvious in a way a single pre-trend test statistic can't. This is a distinct concept from the finance-specific event study methodology used for abnormal stock returns around announcements, though both share the "event time" framing and the goal of isolating an effect from background noise.

An event-study design estimates a separate treatment effect for each period relative to treatment, rather than one pooled number — the resulting plotted path shows both whether the pre-treatment periods were flat (supporting the parallel-trends assumption) and how the effect built, peaked, or faded afterward.

With staggered treatment timing — different units treated at different calendar dates — the standard two-way fixed-effects event-study regression can produce badly biased coefficients, because "already-treated" units can end up implicitly serving as comparison units for later-treated ones, contaminating the estimated βk\beta_k's with other units' own treatment effects. This is a known, actively researched problem in modern applied econometrics; with staggered adoption, use estimators specifically designed to avoid this contamination rather than the naive two-way fixed-effects event study.

Related concepts

Practice in interviews

Further reading

  • Angrist & Pischke, Mostly Harmless Econometrics, ch. 5
ShareTwitterLinkedIn