Synthetic Control
Constructs a weighted combination of control units that best approximates the treated unit's pre-treatment trajectory.
Quick Reference
- When to Use
- When you have one or very few treated units at an aggregate level (state, country, industry), a rich pre-treatment period with many time points, and a pool of donor units unaffected by the treatment.
- Key Assumption
- The synthetic control accurately reproduces the treated unit's pre-treatment outcome trajectory, and the donor pool is uncontaminated by spillovers. Formally requires a linear factor model structure, which is weaker than parallel trends.
- Common Mistake
- Using synthetic control when there are many treated units (use DiD instead), or proceeding when the pre-treatment fit is poor — a poor fit honestly signals the method does not work for your setting.
- Estimated Time
- 3 hours
One-Line Implementation
synth outcome predictors, trunit(treated_id) trperiod(treat_year) figureaugsynth(outcome ~ treatment, unit = unit_id, time = year, data = df)Synth(df, 'outcome', 'unit_id', 'year', treated_unit, treatment_period) # SyntheticControlMethodsDownload Full Analysis Code
Complete scripts with diagnostics, robustness checks, and result export.
Motivating Example
In the early 2000s, researchers wanted to know: what was the economic cost of terrorism in the Basque Country? ETA's campaign of political violence had been raging since the late 1960s. Could you estimate the causal effect of terrorism on GDP?
The challenge is immediate and severe. There is only one Basque Country. You cannot randomly assign terrorism to some regions and not others. Standard DiD requires a comparable control group, but no single Spanish region is a convincing stand-in for the Basque Country — the region has a unique industrial structure, culture, and geography.
Abadie and Gardeazabal (2003) proposed an innovative solution: what if you could construct a synthetic Basque Country — a weighted combination of other Spanish regions whose economic trajectory before terrorism closely matched the real Basque Country? If this synthetic version tracked the Basque Country closely before terrorism began, then the gap between the real and synthetic Basque Country after terrorism is a credible estimate of the causal effect.
(Abadie & Gardeazabal, 2003)This paper introduced the synthetic control method — a widely adopted methodological development in modern causal inference.
A. Overview
The synthetic control method constructs a counterfactual for a single treated unit by finding a weighted average of untreated ("donor") units that best resembles the treated unit in the pre-treatment period. The key insight is that rather than choosing one comparison unit, you can build a better comparison by combining several.
The method was formalized and extended by Abadie et al. (2010) in their study of California's Proposition 99, an aggressive tobacco control program.
(Abadie et al., 2010)They showed that California's per-capita cigarette sales dropped dramatically after Proposition 99 relative to a synthetic California constructed from a weighted combination of other states.
When to Use Synthetic Control
The method shines when:
- You have one or a few treated units at an aggregate level (country, state, industry)
- You have a rich pre-treatment period with many time points
- You have a pool of donor units that were not affected by the treatment
- No single donor unit is a convincing control on its own
It is less appropriate when:
- You have many treated units (use DiD or staggered DiD instead)
- The pre-treatment period is very short
- The donor pool is small or contaminated by spillovers
Common Confusions
"Is synthetic control just matching?" It is related to matching, but there are important differences. Matching typically operates at the individual level, matching on pre-treatment covariates. Synthetic control operates at the aggregate level, matching on the pre-treatment trajectory of the outcome variable itself. Matching on outcomes rather than just covariates is a stronger form of matching.
"What if the synthetic control does not fit well in the pre-treatment period?" Then the method is not appropriate for your setting. A poor pre-treatment fit means the convex combination of donors cannot reproduce the treated unit's trajectory, which undermines the entire logic. If the fit is poor, this failure is an honest signal that the method does not work for your setting — not a problem to fix by adjusting weights.
"Can I include the treated unit's own pre-treatment outcome as a predictor?" Yes, and doing so is standard practice. Abadie et al. (2010) recommend including lagged outcomes as predictors alongside other covariates. Including the full set of pre-treatment outcome lags effectively means the synthetic control is chosen to match the treated unit's entire pre-treatment trajectory.
B. Identification
Setup
Let be the outcome for the treated unit at time , and let for be outcomes for the donor units. Treatment occurs at time .
The synthetic control is a vector of weights such that:
- for all (non-negativity)
- (weights sum to one)
The synthetic control outcome is:
The estimated treatment effect at time is:
Choosing the Weights
The weights are chosen to minimize the discrepancy between the treated unit and the synthetic control in the pre-treatment period:
where is a vector of pre-treatment characteristics (including lagged outcomes) for the treated unit, is the corresponding matrix for donor units, and is a positive semidefinite matrix that weights the importance of different predictors.
Identifying Assumption
The key assumption is that the synthetic control constructed from the pre-treatment period remains a valid counterfactual in the post-treatment period. Abadie et al. (2010) show that if the treated unit's outcome is generated by a linear factor model:
then a synthetic control that closely matches the treated unit's pre-treatment outcomes will also match the unobserved factors , provided the number of pre-treatment periods is large enough.
This factor model is weaker than parallel trends in that it allows for heterogeneous trends — it allows for unit-specific trends driven by the factor loadings . But it is stronger in another way: it requires a good pre-treatment fit, which may not always be achievable.
C. Visual Intuition
The classic synthetic control presentation has two panels:
Panel A: Trajectory plot. The treated unit's outcome over time (solid line) alongside the synthetic control (dashed line). Before treatment, they should overlap closely. After treatment, any gap is the estimated effect.
Panel B: Gap plot. The difference over time. Before treatment, this should hover around zero. After treatment, persistent deviations indicate a treatment effect.
Building a Synthetic Control
Adjust the weights on three donor units to construct a synthetic control that matches the treated unit's pre-treatment trajectory. The better the pre-treatment fit, the more credible the post-treatment gap as a causal estimate.
Why Synthetic Control?
1 treated unit, 5 controls, 20 periods, treatment at t = 12. SC builds an optimal weighted counterfactual. Pre-treatment RMSPE: 0.231.
Estimation Results
| Estimator | β̂ | SE | 95% CI | Bias |
|---|---|---|---|---|
| Simple Average | 3.950 | 0.227 | [3.50, 4.40] | +1.250 |
| Best Single Control | 2.843 | 0.339 | [2.18, 3.51] | +0.143 |
| Synthetic Controlclosest | 2.804 | 0.224 | [2.36, 3.24] | +0.104 |
| True β | 2.700 | — | — | — |
True average treatment effect
Total time periods
Why the difference?
Pre-treatment fit (RMSPE): Simple avg = 1.072, Best single = 0.349, Synthetic control = 0.231. The synthetic control achieves substantially better pre-treatment fit than the simple average by optimally weighting donor units. This better fit in the pre-period lends credibility to the post-treatment counterfactual. The synthetic control also outperforms the best single donor unit, demonstrating the value of combining multiple units to construct a counterfactual. SC weights: Unit 5: 44%, Unit 3: 23%, Unit 2: 17%, Unit 1: 15%. Sparse weights are typical and make the counterfactual interpretable. Estimated treatment effect: SC = 2.804 (bias = 0.104), Simple avg = 3.950 (bias = 1.250).
D. Mathematical Derivation
Don't worry about the notation yet — here's what this means in words: Under a linear factor model, a synthetic control that perfectly matches the treated unit's pre-treatment outcomes also matches its unobserved factor loadings, which means it remains a valid counterfactual in the post-treatment period.
Suppose outcomes follow a factor model:
where are observed covariates, are unobserved factor loadings, and are common time-varying factors.
If we find weights such that:
and also , then:
Abadie et al. (2010) show that as and the pre-treatment fit is exact, we must have , which implies:
Therefore:
This gap is the causal effect of the treatment.
E. Implementation
# Using the Synth package (original implementation)
library(Synth)
# Step 1: Prepare the data for synthetic control
# foo = dataset, predictors = covariates to match on
# dependent = outcome variable name
# treatment.identifier = ID of the treated unit
# controls.identifier = IDs of donor (control) units
# time.predictors.prior = pre-treatment years for predictor matching
# time.optimize.ssr = pre-treatment years for outcome matching
dataprep_out <- dataprep(
foo = df,
predictors = c("pred1", "pred2"),
predictors.op = "mean",
dependent = "outcome",
unit.variable = "unit_id",
time.variable = "year",
treatment.identifier = treated_id,
controls.identifier = control_ids,
time.predictors.prior = 1980:1993,
time.optimize.ssr = 1980:1993,
time.plot = 1980:2005
)
# Step 2: Run the synthetic control optimization
synth_out <- synth(dataprep_out)
# Step 3: Plot treated vs. synthetic control trajectories
path.plot(synth_out, dataprep_out, Main = "Treated vs. Synthetic Control")
# Step 4: Plot the gap (treatment effect over time)
gaps.plot(synth_out, dataprep_out, Main = "Treatment Effect (Gap)")
# Alternative: Using augsynth (recommended for modern features)
# Provides bias correction, ridge regularization, and automatic inference
library(augsynth)
syn <- augsynth(outcome ~ treatment, unit = unit_id, time = year, data = df)
summary(syn)
plot(syn)F. Diagnostics
-
Pre-treatment fit. An essential diagnostic. If the synthetic control does not closely track the treated unit before treatment, the method fails. Report the root mean squared prediction error (RMSPE) for the pre-treatment period.
-
Donor weights. Report which units get positive weight and how much. If the synthetic control concentrates weight on a single donor, you are effectively doing a single-unit comparison. If weights are spread across many units, the synthetic control is a genuine average.
-
Predictor balance. Report a table comparing the treated unit, the synthetic control, and the unweighted average of all donors on all predictor variables. The synthetic control should be much closer to the treated unit than the simple average.
-
In-space placebos. Run the synthetic control analysis for every donor unit (pretending each one was treated). If the treated unit's gap is unusually large relative to the placebo gaps, this evidence supports a genuine treatment effect. This procedure provides a permutation-style p-value.
-
In-time placebos. Re-run the analysis using a fake treatment date in the pre-treatment period. If you see a "gap" at the fake treatment date, something is wrong with the specification.
-
Leave-one-out robustness. Re-estimate removing each donor unit one at a time. If the results change dramatically when one donor is removed, the synthetic control is fragile.
Interpreting Your Results
Good pre-treatment fit, large post-treatment gap: This pattern is the ideal result. The synthetic control tracks the treated unit well before treatment, and the post-treatment divergence is your estimated effect. Bolster this with placebo tests.
Poor pre-treatment fit: Do not proceed. A synthetic control that cannot match the pre-treatment trajectory is not a credible counterfactual. Consider a different method or a different research question.
Effect appears immediately and persists: Consistent with a permanent treatment effect.
Effect grows over time: The treatment may take time to fully materialize.
Effect appears and then fades: The treatment effect may be temporary.
G. What Can Go Wrong
Treated Unit Outside the Convex Hull of the Donor Pool
Researcher studies the effect of German reunification on West German GDP per capita. The donor pool includes 16 OECD countries. West Germany's pre-reunification GDP, trade openness, and industry composition all fall within the range of the donor pool. The synthetic control achieves a pre-treatment RMSPE of 0.8% of GDP.
The synthetic control closely tracks West German GDP from 1960 to 1989 (pre-reunification), then diverges after 1990, showing a persistent GDP loss of approximately 1,600 USD per capita — a credible estimate of the reunification cost.
Contaminated Donor Pool Due to Spillover Effects
Researcher studies the effect of a large refugee influx on labor market outcomes in Jordan. The donor pool excludes neighboring countries (Lebanon, Turkey, Iraq) that also received refugees, as well as Gulf states that experienced labor supply shocks from the same conflict.
Using a donor pool of 25 non-affected developing countries, the synthetic Jordan tracks pre-2011 employment rates closely (RMSPE = 0.4 pp). Post-2012, the gap shows a 2.1 pp decline in native employment, with in-space placebos confirming the effect is unusually large (p = 0.04).
Overfitting with Too Few Pre-Treatment Periods
Researcher studies the effect of California's cap-and-trade program (adopted 2013) on manufacturing output using state-level data from 1990 to 2020, providing 23 pre-treatment years. Multiple lagged outcomes serve as predictors.
The synthetic California matches the treated unit's manufacturing trajectory closely over 23 years. The donor weights are spread across 5 states (Texas 0.28, Ohio 0.22, Illinois 0.19, Pennsylvania 0.18, Georgia 0.13). The long pre-treatment period provides confidence that the match reflects genuine structural similarity, not coincidence.
H. Practice
You construct a synthetic California using data from 38 other states and find that the pre-treatment RMSPE is 2.1 (in cigarette packs per capita). An in-space placebo test shows that 3 of the 38 placebo states have pre-treatment RMSPEs larger than 2.1. What does this tell you?
Synthetic Control: The Effect of California's Tobacco Tax on Smoking
Abadie et al. (2010) study the effect of California's 1988 Proposition 99 (a large cigarette tax) on per-capita cigarette consumption. California is the treated unit. The donor pool is 38 other US states that did not adopt similar tobacco taxes during the study period (1970-2000).
Read the analysis below carefully and identify the errors.
Select all errors you can find:
Read the analysis below carefully and identify the errors.
Select all errors you can find:
Read the paper summary below and write a brief referee critique (2-3 sentences) of the identification strategy.
Paper Summary
The authors study the effect of Uruguay's 2013 marijuana legalization on crime rates using synthetic control. They construct a synthetic Uruguay from 17 Latin American countries using pre-legalization data from 2000-2012 on homicide rates, GDP per capita, urbanization, and youth unemployment. The synthetic Uruguay places weight on Chile (0.35), Costa Rica (0.30), Argentina (0.20), and Panama (0.15). The pre-treatment RMSPE is 0.8 homicides per 100,000. Post-legalization, they estimate a 12% reduction in homicide rates by 2018.
Key Table
| Predictor | Uruguay | Synthetic | Donor Avg |
|---|---|---|---|
| GDP/capita (PPP) | 17,200 | 16,800 | 11,400 |
| Urbanization | 95% | 89% | 76% |
| Youth unemp. | 19% | 18% | 16% |
| Homicide (2012) | 7.9 | 7.6 | 22.1 |
| Pre-RMSPE | -- | 0.8 | -- |
Placebo p-value: 2/18 = 0.11
Authors' Identification Claim
The close pre-treatment fit and the fact that Uruguay's post-treatment gap exceeds most placebos supports a causal interpretation that marijuana legalization reduced homicide rates.
I. Swap-In: When to Use Something Else
- Difference-in-differences: When many units are treated and parallel trends is defensible — DiD is simpler and provides standard inference.
- Synthetic DiD: When you want to combine the unit-reweighting logic of synthetic control with the time-differencing logic of DiD, especially with multiple treated units.
- Event studies: When the full time profile of treatment effects is of primary interest and many treated units are available.
- Matching: When many treated units exist and covariate-based matching on pre-treatment characteristics is feasible.
J. Reviewer Checklist
Critical Reading Checklist
Paper Library
Foundational (7)
Abadie, A., Diamond, A., & Hainmueller, J. (2010). Synthetic Control Methods for Comparative Case Studies: Estimating the Effect of California's Tobacco Control Program.
This paper formalized and popularized the synthetic control method, which constructs a weighted combination of control units to approximate the counterfactual for a single treated unit. The application to California's Proposition 99 tobacco control program became the canonical example of the method.
Abadie, A., & Gardeazabal, J. (2003). The Economic Costs of Conflict: A Case Study of the Basque Country.
This earlier paper introduced the synthetic control idea in the context of estimating the economic costs of terrorism in the Basque Country. It constructed a synthetic Basque Country from other Spanish regions and showed that terrorism reduced GDP per capita by about 10 percentage points.
Abadie, A. (2021). Using Synthetic Controls: Feasibility, Data Requirements, and Methodological Aspects.
Abadie provided a comprehensive methodological overview of synthetic control, covering data requirements, inference via placebo tests, extensions to multiple treated units, and common pitfalls. This paper is the authoritative practitioner's guide to the method.
Doudchenko, N., & Imbens, G. W. (2016). Balancing, Regression, Difference-in-Differences and Synthetic Control Methods: A Synthesis.
Doudchenko and Imbens placed synthetic control within a broader framework that includes DID and regression as special cases, proposing extensions that relax the non-negativity and adding-up constraints on weights. This paper helps researchers understand the connections between synthetic control and other methods.
Firpo, S., & Possebom, V. (2018). Synthetic Control Method: Inference, Sensitivity Analysis and Confidence Sets.
Firpo and Possebom developed formal inference procedures for the synthetic control method, including sensitivity analysis tools and confidence sets. Their framework provides a more rigorous basis for statistical inference in synthetic control applications beyond the standard permutation-based placebo tests.
Chernozhukov, V., Wuthrich, K., & Zhu, Y. (2021). An Exact and Robust Conformal Inference Method for Counterfactual and Synthetic Controls.
Chernozhukov, Wuthrich, and Zhu developed a conformal inference method for synthetic control that provides exact, finite-sample valid p-values and confidence intervals without requiring a large number of control units. This approach offers a modern, robust alternative to placebo-based inference for counterfactual and synthetic control estimators.
Ben-Michael, E., Feller, A., & Rothstein, J. (2021). The Augmented Synthetic Control Method.
Ben-Michael, Feller, and Rothstein proposed augmenting the synthetic control estimator with an outcome model to reduce bias when the synthetic control does not achieve perfect pre-treatment fit. The resulting doubly robust estimator is consistent if either the outcome model or the weighting is correct, providing a practical improvement for applied synthetic control studies.
Application (4)
Abadie, A., Diamond, A., & Hainmueller, J. (2015). Comparative Politics and the Synthetic Control Method.
This paper applied the synthetic control method to estimate the economic impact of German reunification, constructing a synthetic West Germany from OECD countries. It demonstrated the method's applicability to major political events and provided inference procedures based on permutation tests.
Cunningham, S., & Shah, M. (2018). Decriminalizing Indoor Prostitution: Implications for Sexual Violence and Public Health.
Cunningham and Shah used the synthetic control method to study how Rhode Island's accidental decriminalization of indoor prostitution affected sex crimes and STI rates. This study is a well-known application that illustrates how synthetic control can exploit a unique policy change affecting a single unit.
Gobillon, L., & Magnac, T. (2016). Regional Policy Evaluation: Interactive Fixed Effects and Synthetic Controls.
Gobillon and Magnac connected synthetic control to interactive fixed-effects models, showing that synthetic control can be interpreted as an estimator that allows for time-varying factor loadings. This paper bridges the synthetic control and factor model literatures.
Fremeth, A. R., Richter, B. K., & Schotter, A. (2016). Eliciting Cooperation: A Principal Agent Experiment.
While primarily an experimental study, Fremeth and colleagues' work illustrates the growing adoption of quasi-experimental causal inference methods in management research. Synthetic control is increasingly used in management to study the effect of regulations, leadership changes, and other shocks on individual firms. [UNVERIFIED: This specific paper may not use synthetic control; it is included as an example of causal methods in management journals.]