SDID Inference - Bootstrap, Jackknife and Placebo
Summary
Theorem 1 of Arkhangelsky et al. shows is asymptotically normal with an oracle variance , which licenses the usual interval . Three estimators of are offered: a unit-level (clustered) bootstrap (Alg. 2; best coverage, expensive, needs many treated units), a fixed-weight jackknife (Alg. 3; cheap, provably conservative, undefined for ), and a placebo estimator (Alg. 4; the only option when , but it requires homoskedasticity across units). In the paper’s simulations all three deliver roughly 93–97% coverage for SDID where DiD intervals fall as low as 30%.
Overview
Classical SC has no asymptotic theory — hence the permutation/RMSPE-ratio approach in Synthetic Control Inference and Diagnostics. Classical DiD has cluster-robust standard errors (Standard Errors and Clustering; Bertrand, Duflo & Mullainathan 2004) but these are only meaningful if the point estimate is approximately unbiased. SDID’s contribution is a large-panel normal limit under a factor model in which DiD is misspecified, plus variance estimators that respect within-unit serial correlation. The paper’s moral from Table 4: “If the point estimates from DID and SC are dominated by bias, then we should not expect confidence intervals that only focus on variance to achieve coverage.”
Main Content
Assumptions 1-4 (§4.3) ^def-sdid-assumptions
- Errors. Rows are i.i.d. Gaussian with covariance (homoskedastic across units, arbitrary across time) whose eigenvalues are bounded and bounded away from zero.
- Sample sizes. ; with bounded above and below; and . One of , may stay fixed, not both. The treated block must be small relative to the control block.
- Spectrum of . With , . Sufficient: . No lower bound on non-zero singular values.
- Oracle weights cancel (the identifying assumption). The oracle unit weights are dispersed, , and fit the pre-period well; the oracle time weights are close to the autoregression vector and fit the control block well; and jointly the oracle bias is negligible, (eqs. 4.11-4.13).
A correctly specified TWFE model with uncorrelated homoskedastic errors satisfies all four (fn. 10): , , , and additive makes (4.13) hold exactly.
Theorem 1 — asymptotic linearity and normality ^thm-sdid-asymptotic-normality
Under model (4.1) with , fixed, Assumptions 1-4, and satisfying :
and therefore
with bounded and bounded away from zero. Here . The variance is optimal: it equals what one would get knowing and and averaging plus unpredictable noise. Note that only the treated units’ errors appear — the control block is large enough that its noise is second order.
Algorithm 2 — (clustered) bootstrap ^alg-sdid-bootstrap
For : resample rows (units) of with replacement; if the draw has no treated or no control units, discard and redraw; re-run the full SDID algorithm (weights included) to get . Set . Unit-level resampling respects serial correlation (Bertrand et al. 2004). Downside: cost — every replication re-solves two constrained QPs.
Algorithm 3 — fixed-weight jackknife ^alg-sdid-jackknife
Holding fixed, for each unit compute from the weighted TWFE regression omitting unit . Set
Runs SDID’s optimisation only once. Undefined for .
Theorem 2 — the jackknife is conservative ^thm-sdid-jackknife
If the elements of are bounded and Theorem 1’s conditions hold, then for any ,
If moreover treatment effects are constant, , and the time weights are predictive on the treated units, , coverage is exact. This relies on SDID’s specific structure: the analogous jackknife for SC “would be severely biased upwards, and would not be exact even in the well-specified fixed effects model,” so the authors do not recommend it for SC. (Under heterogeneous effects the jackknife implicitly treats the estimand as random, producing excess variance — fn. 11.)
Algorithm 4 — placebo variance ^alg-sdid-placebo
Using control units only: for , sample of the controls without replacement to “receive the placebo”; build the placebo assignment ; compute SDID on . Set = the sample variance of the . Plug into the Gaussian interval (5.1). Works with .
What the placebo method assumes
- Homoskedasticity across units is essential: “if the exposed and unexposed units have different noise distributions then there is no way we can learn from unexposed units alone.” With one treated unit, nonparametric variance estimation is impossible in general, so this assumption is “effectively necessary.”
- It is an adaptation of Conley & Taber (2011) inference for DiD with few treated units.
- It is related to but not a randomisation test (fn. 12): “in many synthetic controls applications, the exposed unit was not chosen at random, in which case placebo tests do not have the formal properties of randomization tests (Firpo & Possebom 2018; Hahn & Shi 2016), and so may need to be interpreted via a more qualitative lens.” Contrast the design-based guarantees in Fisher Randomization Test and the Sharp Null and Permutation Tests and Exact Inference, which hold when assignment is randomised — as in a designed geo experiment.
- Unlike the ADH permutation -value, Algorithm 4 yields a variance and hence a confidence interval, not just a rank-based -value.
Choosing among the three
| Bootstrap | Jackknife | Placebo | |
|---|---|---|---|
| Re-estimates weights? | yes | no (fixed) | yes |
| Cost | high ( full fits) | one fit + cheap regressions | high ( full fits on controls) |
| not defined | not defined | yes | |
| Guarantee | heuristic, best in simulations for large panels | conservative (Thm 2) | needs homoskedasticity across units |
| Heteroskedastic units | fine | fine | invalid |
Examples
Coverage of nominal 95% intervals (Table 4, 400 replications), selected rows:
| Design | Boot: SDID / SC / DID | Jack: SDID / DID | Placebo: SDID / SC / DID |
|---|---|---|---|
| CPS baseline | 0.96 / 0.93 / 0.89 | 0.93 / 0.92 | 0.95 / 0.89 / 0.96 |
| CPS random assignment | 0.96 / 0.96 / 0.92 | 0.93 / 0.94 | 0.96 / 0.96 / 0.94 |
| CPS unemployment rate | 0.91 / 0.90 / 0.57 | 0.86 / 0.64 | 0.88 / 0.89 / 0.62 |
| CPS | — | — | 0.97 / 0.95 / 0.96 |
| CPS resampled to | 0.95 / 0.92 / 0.96 | 0.96 / 0.95 | 0.96 / 0.91 / 0.96 |
| PWT democracy | 0.93 / 0.96 / 0.55 | 0.94 / 0.59 | 0.98 / 0.97 / 0.79 |
| PWT education | 0.95 / 0.95 / 0.30 | 0.95 / 0.34 | 0.99 / 0.90 / 0.94 |
(Column assignment follows the table header; the printed caption lists the three methods in a different order.) The bootstrap “performs particularly well, yielding nearly nominal 95% coverage”; the authors caution that the simulated noise was Gaussian and homoskedastic across units, “assumptions that are both heavily used by the placebo estimator.” DiD under-coverage is a bias problem, not a variance problem.
California Prop 99: , so only Algorithm 4 applies; it gives for , i.e. a 95% interval of roughly packs per capita.
Jackknife sketch given fixed weights (each leave-one-out estimate is just the double difference with the remaining weights renormalised within the control or treated group):
def sdid_jackknife_var(Y, N0, T0, w, l):
N, T = Y.shape; N1, T1 = N - N0, T - T0
lam = np.r_[-l, np.ones(T1) / T1]
delta = Y @ lam # adjusted outcome per unit, eq. (2.5)
full = np.r_[w, np.ones(N1) / N1]
sign = np.r_[-np.ones(N0), np.ones(N1)]
tau = (sign * full) @ delta
taus = []
for i in range(N):
keep = np.arange(N) != i
wi = full[keep].copy(); grp = sign[keep]
for g in (-1, 1): # renormalise within group
wi[grp == g] /= wi[grp == g].sum()
taus.append((grp * wi) @ delta[keep])
return (N - 1) / N * np.sum((np.array(taus) - tau) ** 2)Connections
- Standard Errors and Clustering — unit-level resampling is the panel analogue of clustering by unit; serial correlation is the reason.
- Synthetic Control Inference and Diagnostics — ADH permutation inference; SDID’s placebo estimator uses the same placebo logic to build a variance.
- Randomization Inference - Overview — when geos are randomised, placebo reassignment regains a design-based justification.
- Simultaneous Inference via Multiplier Bootstrap — the bootstrap used for staggered-DiD event-study bands; a different bootstrap for a related target.
- Generalized Synthetic Control Method — uses a parametric bootstrap under an explicitly estimated factor model.