Synthetic Control
Python · from-scratch optimisation · R · Synth, tidysynth · Abadie, 39 states × 31 years
Building the Control You Do Not Have
Every design so far has needed a control group supplied by the world — another state, a set of never-treated units, districts just below a threshold. Sometimes there is only one treated unit and no obvious comparison. California passed Proposition 99 in 1988; no other state did anything similar, and no single state resembles California closely enough to stand in for it.
Synthetic control (Abadie and co-authors) builds the missing control instead of finding it: a weighted average of donor units, with non-negative weights summing to one, chosen so the composite reproduces the treated unit's pre-treatment path. Those two constraints are what make it interpretable — no extrapolation beyond the donors' range, and weights that read as a recipe rather than a regression.
The panel is 39 states over 31 years, 1970–2000, with per-capita cigarette sales. California's pre-1988 path is distinctive — already low and already falling — so a plain average of other states does not resemble it.
| donor | weight |
|---|---|
| Utah | 0.394 |
| Montana | 0.232 |
| Nevada | 0.205 |
| Connecticut | 0.109 |
| New Hampshire | 0.045 |
| Colorado | 0.015 |
| pre-treatment RMSPE | 1.66 packs over 18 years |
The optimiser finds a sparse blend, and the pre-treatment fit is the credibility check: an RMSPE of 1.66 packs across eighteen years. If synthetic California tracks real California that closely before the law, its post-1988 path is a defensible counterfactual.
After 1988 the two diverge, and the gap widens as the programme matures: −8.4 packs in 1989, reaching −26.6 by 2000 — roughly a quarter of baseline consumption.
Inference Without a Standard Error
With a single treated unit there is no standard error to compute, so Abadie's inference is a placebo permutation test: pretend in turn that each donor state was treated, build its synthetic control, and record how badly the fit deteriorates afterwards. The test statistic is the post/pre RMSPE ratio, and the question is where California falls among the 39.
Third. California's ratio of 12.4 is high, but two placebo states blow up more after their pretend treatment date, giving a permutation of 0.077 — which does not clear the conventional 5%. Suggestive rather than decisive, and worth reporting that way.
| quantity | value | reading |
|---|---|---|
| effect by 2000 | −26.6 packs | about a quarter of baseline |
| post/pre RMSPE ratio | 12.4 | large error inflation after 1988 |
| rank among 39 states | 3rd | two placebos inflate more |
| permutation p | 0.077 | does not clear 5% |
| smallest attainable p | 1/39 = 0.026 | the ceiling set by 38 placebos |
The reason is instructive rather than damning. This from-scratch implementation matches on the pre-treatment outcome path only. Abadie's published analysis also matches on economic predictors — price, income, age structure, beer consumption — with an optimally weighted distance, which tightens California's pre-period fit relative to the placebos and lifts it to the top of the ranking. The R companion runs that version. The effect size is robust across both at roughly 26 packs; it is the inference that depends on how the donors were matched.
There is also a structural ceiling worth noticing. With 38 placebos the smallest attainable -value is . A comparative case study has one treated unit, so the permutation distribution is as coarse as the donor pool — this test has little room to be decisive even in principle, whatever the effect.
Against Difference-in-Differences
Why not simply run difference-in-differences against the average of all donor states? Because that imposes equal weights and assumes the donors collectively trend in parallel with California. They do not: the equal-weighted average sits well above California and on a different slope before 1988.
| counterfactual | estimated effect | pre-treatment fit |
|---|---|---|
| equal-weighted donor average naive DiD | −27.3 | sits above California, different slope |
| synthetic control optimised weights | −19.5 | tracks California to 1.66 packs |
The two answers differ accordingly — naive DiD gives −27.3 packs against synthetic control's −19.5. So synthetic control is difference-in-differences with data-driven weights, which enforce pre-treatment parallelism instead of assuming it. Where Honest DiD prices a parallel-trends violation you cannot rule out, synthetic control tries to engineer the violation away in the first place.
Where this sits
The placebo test is the same permutation reasoning as Fisher's exact test in the first group, transported to a comparative case study — hand the treatment label to each unit in turn and ask where the real one falls. The weighting connects to matching: both construct a comparison from weighted controls, one across time-series trajectories rather than covariate profiles. And the constrained, sparse weights are what the next page generalises, adding time weights alongside the unit weights.
Notebooks
Downloads
References
- Abadie, A. & Gardeazabal, J. (2003). The Economic Costs of Conflict: A Case Study of the Basque Country. American Economic Review 93(1), 113–132. — the first synthetic control
- Abadie, A., Diamond, A. & Hainmueller, J. (2010). Synthetic Control Methods for Comparative Case Studies: Estimating the Effect of California’s Tobacco Control Program. Journal of the American Statistical Association 105(490), 493–505. — the method, stated generally
- Arkhangelsky, D., Athey, S., Hirshberg, D. A., Imbens, G. W. & Wager, S. (2021). Synthetic Difference-in-Differences. American Economic Review 111(12), 4088–4118. — its difference-in-differences hybrid