Papers
Topics
Authors
Recent
Search
2000 character limit reached

Stacked Event Study Design

Updated 4 July 2026
  • Stacked event study is a design framework that partitions treated cohorts into subexperiments, aligning them by relative event time with clean control groups.
  • It explicitly aggregates cohort-specific effects using designed weights to correct for biases such as negative weights and cross-horizon contamination inherent in TWFE methods.
  • Extensions include SDID, CBWSDID, and stacked DDD variants that further adjust design-based comparisons and improve inference robustness under staggered treatment adoption.

Searching arXiv for papers on stacked event studies, staggered adoption, and related diagnostics. {"query":"all:(\"stacked event study\" OR \"stacked difference-in-differences\" OR \"staggered adoption\" event-study diagnostics stacked)","max_results":10,"sort_by":"submittedDate","sort_order":"descending"} A stacked event study is an event-study design for staggered adoption in which each treated cohort is converted into a cohort-specific subexperiment aligned by relative time, compared with a clean control group within a fixed event window, and then aggregated across cohorts with declared weights. In the recent literature, stacking is motivated by a design problem: conventional two-way fixed effects (TWFE) event-study regressions under staggered adoption do not generally estimate a clean average of the intended cohort-by-event-time effects, because they can mix horizons, compare treated units to already-treated units, and generate negative weights (Wright, 14 Jan 2026). A complementary design-based decomposition reaches the same conclusion by showing that dynamic TWFE coefficients are weighted contrasts that borrow information across units, times, and treatment statuses in ways that may not correspond to the intended hypothetical experiment (Shen et al., 2024).

1. Conceptual definition and formal setup

The canonical staggered-adoption setup indexes treatment timing by an adoption time GiG_i, with absorbing treatment defined as

Dit=π(Gi,t)1{Git}1{Gi<},D_{it}=\pi(G_i,t)\equiv 1\{G_i\le t\}1\{G_i<\infty\},

and event time k=tGik=t-G_i. In this environment, a transparent dynamic target is the cohort-specific effect

τg(k)E ⁣[Yi,g+k(g)Yi,g+k()Gi=g],\tau_g(k) \equiv E\!\left[Y_{i,g+k}(g)-Y_{i,g+k}(\infty)\mid G_i=g\right],

together with an event-time aggregation

τ(k)gG(k)ωg(k)τg(k),\tau(k)\equiv\sum_{g\in\mathcal{G}(k)}\omega_g(k)\,\tau_g(k),

where ωg(k)0\omega_g(k)\ge 0 and gωg(k)=1\sum_g\omega_g(k)=1 (Wright, 14 Jan 2026). A central methodological point in this formulation is that the aggregation weights are part of the estimand, not an incidental feature of the estimator.

In stacked designs, each cohort is aligned by its own adoption date, so event time always means “periods after treatment” for that cohort. This cohort-by-cohort alignment is also the organizing logic of the event-study extension of Synthetic Difference-in-Differences (SDID), where cohort aa and lag \ell index dynamic effects τ^a,sdid\hat\tau^{sdid}_{a,\ell} computed after aligning units by adoption time (Ciccia, 2024). The common design principle is that dynamic treatment effects are defined first at the cohort-event-time level and only then pooled across cohorts.

This suggests a useful conceptual distinction. A stacked event study is not defined by a single regression formula. It is defined by a design choice: the sample is partitioned into cohort-specific comparisons, each with an admissible control group and an explicit event-time indexing scheme, and the resulting cohort-level dynamic contrasts are then aggregated.

2. Construction of stacks and cohort-specific subexperiments

A standard stacked design creates one subexperiment for each admissible treated cohort. In the absorbing-treatment formulation of Covariate-Balanced Weighted Stacked Difference-in-Differences (CBWSDID), cohort Dit=π(Gi,t)1{Git}1{Gi<},D_{it}=\pi(G_i,t)\equiv 1\{G_i\le t\}1\{G_i<\infty\},0 is associated with a fixed event window Dit=π(Gi,t)1{Git}1{Gi<},D_{it}=\pi(G_i,t)\equiv 1\{G_i\le t\}1\{G_i<\infty\},1, treated units

Dit=π(Gi,t)1{Git}1{Gi<},D_{it}=\pi(G_i,t)\equiv 1\{G_i\le t\}1\{G_i<\infty\},2

and clean controls

Dit=π(Gi,t)1{Git}1{Gi<},D_{it}=\pi(G_i,t)\equiv 1\{G_i\le t\}1\{G_i<\infty\},3

Within each subexperiment, outcomes are long-differenced relative to period Dit=π(Gi,t)1{Git}1{Gi<},D_{it}=\pi(G_i,t)\equiv 1\{G_i\le t\}1\{G_i<\infty\},4,

Dit=π(Gi,t)1{Git}1{Gi<},D_{it}=\pi(G_i,t)\equiv 1\{G_i\le t\}1\{G_i<\infty\},5

and the cohort-specific contrast is

Dit=π(Gi,t)1{Git}1{Gi<},D_{it}=\pi(G_i,t)\equiv 1\{G_i\le t\}1\{G_i<\infty\},6

Under no anticipation and within-subexperiment parallel trends, this identifies Dit=π(Gi,t)1{Git}1{Gi<},D_{it}=\pi(G_i,t)\equiv 1\{G_i\le t\}1\{G_i<\infty\},7 (Ustyuzhanin, 2 Apr 2026).

The same construction appears in more general language in design-robust event-study work: stacking means constructing cohort-specific event-time comparisons in subsamples where the control group is restricted to units that are not yet treated or never treated in that cohort-specific window (Wright, 14 Jan 2026). The control restriction is the operational device that prevents already-treated observations from entering the comparison set for later-treated cohorts.

A triple-differences extension makes the stack structure even more explicit. For each treated cohort Dit=π(Gi,t)1{Git}1{Gi<},D_{it}=\pi(G_i,t)\equiv 1\{G_i\le t\}1\{G_i<\infty\},8 and a clean comparison cohort Dit=π(Gi,t)1{Git}1{Gi<},D_{it}=\pi(G_i,t)\equiv 1\{G_i\le t\}1\{G_i<\infty\},9, a stacked DDD design forms a self-contained event-window subexperiment with four cells: treated eligible, within-group ineligible, clean comparison eligible, and clean comparison ineligible. On the stacked dataset, the fully saturated pooled event-study regression is

k=tGik=t-G_i0

with stack-by-group-by-time and stack-by-eligibility-by-time fixed effects (Hsieh, 24 Apr 2026). This generalization shows that stacking is not limited to simple DiD comparisons; it is a broader design architecture for dynamic treatment evaluation under staggered timing.

3. Why stacking is used: contamination, forbidden comparisons, and design diagnostics

The principal motivation for stacked event studies is the failure of conventional TWFE event-study regressions to recover interpretable dynamic averages under heterogeneous effects. In the standard specification

k=tGik=t-G_i1

the probability limit of k=tGik=t-G_i2 can be written as

k=tGik=t-G_i3

Hence the coefficient labeled k=tGik=t-G_i4 can load on effects at horizons k=tGik=t-G_i5, and some weights can be negative (Wright, 14 Jan 2026).

Two design pathologies are then formalized by

k=tGik=t-G_i6

Here k=tGik=t-G_i7 measures negative-weight mass and k=tGik=t-G_i8 measures cross-horizon contamination. Because these diagnostics depend only on the design matrix k=tGik=t-G_i9, they are computable ex ante from adoption timing, event window, and fixed-effect structure rather than from outcome data (Wright, 14 Jan 2026).

A parallel critique emerges from the exact decomposition of dynamic TWFE coefficients as weighted treatment components minus weighted control components. In that decomposition, the “control” side can contain never-treated observations, future-treated observations, and already-treated observations at other event times. The design-based interpretation is that TWFE is borrowing information across measurements in a way that often exceeds the intended hypothetical experiment (Shen et al., 2024). Stacked event studies can therefore be understood as a restriction of the information set: they deliberately exclude many of the observations that TWFE would otherwise use automatically.

This also clarifies a common misconception. Stacking does not improve interpretability merely because data are appended into a larger file. Its role is to change the comparison set so that each event-time contrast is closer to a convex average of within-cohort treated-versus-appropriate-control comparisons, rather than a projection-induced mixture across cohorts and horizons (Wright, 14 Jan 2026).

4. Aggregation, weighting, and the estimand

Once cohort-specific contrasts are defined, stacked event studies require an aggregation rule. In the design-robust formulation, the event-time estimand itself is a convex aggregation τg(k)E ⁣[Yi,g+k(g)Yi,g+k()Gi=g],\tau_g(k) \equiv E\!\left[Y_{i,g+k}(g)-Y_{i,g+k}(\infty)\mid G_i=g\right],0, so weights are substantive components of the target (Wright, 14 Jan 2026). In the absorbing-treatment stacked DID formulation, the trimmed aggregate ATT at event time τg(k)E ⁣[Yi,g+k(g)Yi,g+k()Gi=g],\tau_g(k) \equiv E\!\left[Y_{i,g+k}(g)-Y_{i,g+k}(\infty)\mid G_i=g\right],1 is

τg(k)E ⁣[Yi,g+k(g)Yi,g+k()Gi=g],\tau_g(k) \equiv E\!\left[Y_{i,g+k}(g)-Y_{i,g+k}(\infty)\mid G_i=g\right],2

which uses treated-cohort shares fixed across event time (Ustyuzhanin, 2 Apr 2026).

The importance of explicit weighting is visible in the contrast between uncorrected and corrected stacked DID aggregation. The uncorrected pooled contrast is

τg(k)E ⁣[Yi,g+k(g)Yi,g+k()Gi=g],\tau_g(k) \equiv E\!\left[Y_{i,g+k}(g)-Y_{i,g+k}(\infty)\mid G_i=g\right],3

Its problem is that treated observations are aggregated with treated-cohort shares, while controls are aggregated with control-pool shares. Even if each subexperiment satisfies parallel trends, those trends do not cancel in the pooled estimand unless the aggregation weights match. Weighted stacked DID corrects this by reweighting controls so that the control side uses the same cohort shares as the treated side (Ustyuzhanin, 2 Apr 2026).

CBWSDID retains this corrective aggregation while separating it from within-subexperiment design adjustment. It first assigns nonnegative design weights τg(k)E ⁣[Yi,g+k(g)Yi,g+k()Gi=g],\tau_g(k) \equiv E\!\left[Y_{i,g+k}(g)-Y_{i,g+k}(\infty)\mid G_i=g\right],4 to control units based on pre-treatment information, and then rescales those weights across subexperiments using

τg(k)E ⁣[Yi,g+k(g)Yi,g+k()Gi=g],\tau_g(k) \equiv E\!\left[Y_{i,g+k}(g)-Y_{i,g+k}(\infty)\mid G_i=g\right],5

This yields a two-layer weighting structure: τg(k)E ⁣[Yi,g+k(g)Yi,g+k()Gi=g],\tau_g(k) \equiv E\!\left[Y_{i,g+k}(g)-Y_{i,g+k}(\infty)\mid G_i=g\right],6 determines the donor pool within a subexperiment, while the corrective factor determines how much that subexperiment contributes to the aggregate event-study coefficient (Ustyuzhanin, 2 Apr 2026).

Other variants make the same aggregation issue explicit in different ways. The SDID event-study estimator aggregates cohort-specific lag effects τg(k)E ⁣[Yi,g+k(g)Yi,g+k()Gi=g],\tau_g(k) \equiv E\!\left[Y_{i,g+k}(g)-Y_{i,g+k}(\infty)\mid G_i=g\right],7 into τg(k)E ⁣[Yi,g+k(g)Yi,g+k()Gi=g],\tau_g(k) \equiv E\!\left[Y_{i,g+k}(g)-Y_{i,g+k}(\infty)\mid G_i=g\right],8 with weights proportional to cohort size among cohorts observed at lag τg(k)E ⁣[Yi,g+k(g)Yi,g+k()Gi=g],\tau_g(k) \equiv E\!\left[Y_{i,g+k}(g)-Y_{i,g+k}(\infty)\mid G_i=g\right],9, so later event times are averaged only across cohorts still observed at that horizon (Ciccia, 2024). In stacked DDD, the fully saturated event-time coefficient is a strictly positive, cell-size-weighted average of stack-level causal effects, and the paper further separates cohort-size, equal, precision, and welfare weights as alternative aggregation schemes with distinct interpretations (Hsieh, 24 Apr 2026).

5. Major extensions and methodological variants

One extension replaces ordinary untreated controls with synthetic controls. The SDID event-study estimator disaggregates the cohort-specific SDID ATT into dynamic effects τ(k)gG(k)ωg(k)τg(k),\tau(k)\equiv\sum_{g\in\mathcal{G}(k)}\omega_g(k)\,\tau_g(k),0 by comparing the treated-minus-synthetic gap at event time τ(k)gG(k)ωg(k)τg(k),\tau(k)\equiv\sum_{g\in\mathcal{G}(k)}\omega_g(k)\,\tau_g(k),1 with the weighted pre-treatment average gap. In the simple adoption design, the cohort-level SDID estimator is the average of these event-time effects; in the staggered adoption design, the pooled event-study curve is obtained by aggregating cohort-specific lag effects across cohorts. The method is described as “stacked” in spirit because it builds cohort-specific event-time effects and aggregates them, but the underlying identifying and computational object is SDID rather than a new regression specification with stacked leads and lags (Ciccia, 2024).

A second extension incorporates design-based covariate adjustment. CBWSDID is explicitly motivated by settings in which untreated trends may be conditionally rather than unconditionally parallel. Matching or balancing weights improve treated-control comparability within each cohort-specific subexperiment, while corrective stacked weights recover the target aggregate ATT. The same logic extends from absorbing treatment to repeated τ(k)gG(k)ωg(k)τg(k),\tau(k)\equiv\sum_{g\in\mathcal{G}(k)}\omega_g(k)\,\tau_g(k),2 and τ(k)gG(k)ωg(k)τg(k),\tau(k)\equiv\sum_{g\in\mathcal{G}(k)}\omega_g(k)\,\tau_g(k),3 episodes under a finite-memory assumption, producing episode-weighted rather than unit-weighted event-study estimands (Ustyuzhanin, 2 Apr 2026).

A third extension carries the stacking logic into triple differences. Stacked DDD creates self-contained stacks with four cells over an event window and estimates event-time effects using fully saturated fixed effects on the stacked dataset. Its main identification result is that, at each post-treatment event time, the coefficient is a strictly positive, cell-size-weighted average of stack-level conditional average treatment effects, rather than the contaminated linear combination that arises in pooled three-way fixed-effects DDD under staggered adoption (Hsieh, 24 Apr 2026).

These variants have a common architecture. Each first defines cohort- or episode-specific dynamic treatment effects using admissible comparisons, and only afterward chooses a transparent weighting rule for aggregation. This suggests that “stacking” is less a single estimator than a family of designs organized around local subexperiments and explicit aggregation.

6. Inference, sensitivity, and interpretation

Interpretability at the design stage does not by itself resolve inference. One recent contribution argues that robust inference based on aggregated event-study coefficients can be misleading because pre- and post-treatment coefficients are identified from different cohort compositions and, for not-yet-treated control designs, the control group changes over time. The proposed remedy is to work at the cohort-period level and define a cohort-specific block bias relative to the cohort’s anchored initial control group. The key algebraic result is an invertible decomposition

τ(k)gG(k)ωg(k)τg(k),\tau(k)\equiv\sum_{g\in\mathcal{G}(k)}\omega_g(k)\,\tau_g(k),4

linking the overall biases of post-treatment estimators to block biases. This permits robust inference under restrictions such as Relative Magnitudes and Second Differences, implemented with the Rambachan–Roth algorithm and the hybrid method from Andrews et al. (2023) (Liu, 1 Sep 2025).

A complementary design-first framework provides sensitivity-robust inference under restricted violations of parallel trends. It defines a deviation process

τ(k)gG(k)ωg(k)τg(k),\tau(k)\equiv\sum_{g\in\mathcal{G}(k)}\omega_g(k)\,\tau_g(k),5

embeds that deviation in a restriction class τ(k)gG(k)ωg(k)τg(k),\tau(k)\equiv\sum_{g\in\mathcal{G}(k)}\omega_g(k)\,\tau_g(k),6, and constructs uniformly valid confidence regions for the identified set τ(k)gG(k)ωg(k)τg(k),\tau(k)\equiv\sum_{g\in\mathcal{G}(k)}\omega_g(k)\,\tau_g(k),7. The same paper also develops orthogonal score constructions with a Riesz representer τ(k)gG(k)ωg(k)τg(k),\tau(k)\equiv\sum_{g\in\mathcal{G}(k)}\omega_g(k)\,\tau_g(k),8 and cross-fitting for covariate-adjusted group-time ATT estimation (Wright, 14 Jan 2026). For stacked event studies, the implication is that design quality and inferential robustness are separate questions: a stack may eliminate forbidden comparisons and still remain sensitive to bounded violations of parallel trends.

Another interpretive limitation concerns endogenous covariate feedback. In a dynamic panel event-study framework with persistent outcomes, persistent treatment effects, and time-varying covariates, observed post-event outcome dynamics may combine a direct structural treatment effect with an indirect effect operating through endogenous covariate adjustment. Under sequential exogeneity and homogeneous feedback, these channels can be identified and decomposed, but absent such structure event-study coefficients should be interpreted as reduced-form dynamic responses rather than pure treatment effects (Botosaru et al., 9 Jan 2026). Stacking addresses cohort alignment and some treatment-timing contamination; it does not automatically separate direct effects from adjustment through post-treatment covariates.

The broader design-based literature also adds practical diagnostics that apply naturally to stacked specifications: covariate balance, sign reversal from negative weights, group-wise effective sample size,

τ(k)gG(k)ωg(k)τg(k),\tau(k)\equiv\sum_{g\in\mathcal{G}(k)}\omega_g(k)\,\tau_g(k),9

and observation-level influence through leave-one-out perturbations (Shen et al., 2024). A plausible implication is that stacked event studies are best viewed as design-based weighting procedures whose credibility depends on three distinct objects: the admissibility of each cohort-specific comparison, the transparency of the aggregation weights, and the robustness of inference to residual bias and model dependence.

In practice, this perspective has produced software implementations that mirror the underlying methodological distinctions. The SDID event-study estimators are implemented in the sdid_event Stata package, including pooled event-time effects and, with the disag option, cohort-by-event-time effects (Ciccia, 2024). CBWSDID is implemented in the cbwsdid R package, which supports both absorbing-treatment and repeated-treatment settings (Ustyuzhanin, 2 Apr 2026). These implementations reinforce the central feature of the stacked event-study literature: dynamic treatment evaluation under staggered timing is treated as a problem of design, weighting, and aggregation rather than as a single regression coefficient path.

Topic to Video (Beta)

No one has generated a video about this topic yet.

Whiteboard

No one has generated a whiteboard explanation for this topic yet.

Follow Topic

Get notified by email when new papers are published related to Stacked Event Study.