Use when defending the causal identification of a Journal of Policy Analysis and Management (JPAM) manuscript — RCTs, difference-in-differences / event study, regression discontinuity / kink, instrumental variables, and synthetic control for policy and program evaluation. Strengthens the design and its assumptions; it does not write estimation code.
Scanned 9/5/2026
Install to Claude Code
npx -y skills add brycewang-stanford/Awesome-Journal-Skills --skill jpam-research-design --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Jpam Research Design?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/brycewang-stanford-jpam-research-design)More formats (shields.io, HTML) on the badges page.
---
name: jpam-research-design
description: Use when defending the causal identification of a Journal of Policy Analysis and Management (JPAM) manuscript — RCTs, difference-in-differences / event study, regression discontinuity / kink, instrumental variables, and synthetic control for policy and program evaluation. Strengthens the design and its assumptions; it does not write estimation code.
---
# Research Design & Identification (jpam-research-design)
Credible identification is JPAM's **core bar**. The journal evaluates the effects of real policies and
programs, so the design must connect the theory of change (`jpam-theory-building`) to evidence a
policymaker can trust. State the **estimand**, the **assumptions** that license a causal reading, and
**how each is defended** — then rule out the single strongest rival explanation. Selection-on-
observables alone rarely clears the bar.
## When to trigger
- Specifying or defending identification for a policy evaluation
- A reviewer questioned causal claims, parallel trends, the instrument, the discontinuity, or confounding
- Choosing among RCT / DiD / RD / IV / synthetic control for a given policy variation
- Preparing a pre-analysis plan for a prospective program evaluation
## Design menu (match to the policy variation)
- **RCT / field experiment.** The gold standard where feasible. Report randomization unit, balance,
power/MDE, take-up, attrition, and ITT vs. TOT/LATE. Pre-register primary outcomes and subgroups.
- **Difference-in-differences / event study.** For staggered policy adoption use **heterogeneity-robust
estimators** (Callaway–Sant'Anna, Sun–Abraham, de Chaisemartin–D'Haultfœuille, BJS imputation) — not
naive TWFE. Show pre-trends as an event study; test, don't assert, parallel trends.
- **Regression discontinuity / kink.** For eligibility thresholds and benefit formulas. Report
bandwidth selection, local-polynomial robustness, density/manipulation tests (McCrary/rddensity),
covariate continuity, and the local nature of the estimand.
- **Instrumental variables.** For policy-induced variation. Defend the exclusion restriction
*substantively*, report first-stage strength (effective F / weak-IV-robust inference), and interpret
the LATE — whose behavior the instrument shifts.
- **Synthetic control.** For a single treated unit (a state/country policy). Report donor pool, pre-
period fit, placebo/permutation inference, and leave-one-out robustness.
## Inference & policy-evaluation standards
- Cluster at the level of treatment assignment; with few clusters use wild-cluster bootstrap.
- Adjust for multiple outcomes/subgroups (and say which test is primary).
- Distinguish **ITT vs. treatment-on-the-treated**; report take-up for any offer-based program.
- Specify the **estimand and target population** — JPAM cares which population the policy decision is about.
## The adjudication test (JPAM-specific)
For the **single strongest rival explanation** (selection, anticipation, concurrent policy, mean
reversion), write one sentence: *"If the rival were driving the result, the data would look like ___;
instead they look like ___."* If you cannot, the design does not yet identify the policy effect.
## Execution bridge (StatsPAI / Stata MCP)
Estimate and audit the design, don't only describe it. Full map:
[`execution-with-mcp`](../../../shared-resources/empirical-methods/execution-with-mcp.md). JPAM is policy analysis — program evaluation is the core; DiD/IV/RDD and the policy-relevant magnitude are decisive.
- `detect_design` → `recommend` → fit with `as_handle=true` → `audit_result`.
- **Observational causal claims:** staggered DiD (`callaway_santanna` / `sun_abraham` +
`bacon_decomposition` + `honest_did_from_result`); IV (`effective_f_test` +
`anderson_rubin_ci`); RDD (`rdrobust` + `mccrary_test`).
- **Experiments:** randomization-based inference + `romano_wolf` for many-outcome control.
- **Sensitivity:** `oster_delta` / `sensemakr` for observational claims.
Report the magnitude in interpretable units; route the full battery to the appendix. A
run end-to-end (synthetic data, real returns) is in the [JF execution walkthrough](../../../Journal-of-Finance-Skills/resources/worked-examples/02-execution-walkthrough.md).
## Checklist
- [ ] Estimand and target population stated explicitly
- [ ] Identifying assumption named and **defended**, not asserted
- [ ] Modern, heterogeneity-robust estimator for staggered DiD; pre-trends shown
- [ ] RD: bandwidth, density, and covariate-continuity tests reported
- [ ] IV: substantive exclusion argument + first-stage strength + LATE interpretation
- [ ] Clustering at the assignment level; multiple-testing handled
- [ ] Strongest rival explicitly ruled out (adjudication sentence)
## Anti-patterns
- Naive TWFE on staggered policy adoption; clustering at the wrong level
- "Causal effect of the policy" language on a selection-on-observables design
- Asserting parallel trends without an event-study pre-trend test
- A weak or substantively implausible instrument waved through on a high F alone
- Ignoring take-up/attrition so ITT and TOT are conflated
- Over-claiming a local RD/LATE estimate as the average policy effect for the whole population
## Calibration anchors (hedged)
- Credible identification is JPAM's price of entry; a real exogenous source of variation typically beats
a richer set of controls on the same selection problem.
- The estimand JPAM cares about is the one the policy decision is about — be explicit when an RD/LATE is
*local* and the decision concerns a broader population, and discuss external validity rather than
papering over it.
- For staggered policy rollouts, default to a heterogeneity-robust estimator and show the underlying
TWFE bias (e.g., a Goodman-Bacon decomposition) if a reviewer expects it.
## Worked micro-example (illustrative)
A state raises a benefit eligibility threshold; the team uses an **RD at the income cutoff**. The design
write-up states the estimand (effect at the threshold), defends continuity (covariates smooth across the
cutoff, no manipulation by a density test), reports bandwidth and local-polynomial robustness, and
**adjudicates the strongest rival**: *"If families were sorting just under the cutoff to qualify, the
running-variable density would spike there; it does not."* It then flags that the estimate is **local**
and discusses how it might differ away from the threshold. (Illustrative.)
## Output format
```
【Design】RCT / DiD-event-study / RD-kink / IV / synthetic control
【Estimand + population】what is identified, for whom
【Key assumption(s)】and how each is defended
【Rival ruled out】the adjudication sentence
【Inference】clustering, multiple-testing, weak-IV plan
【Next】jpam-data-analysis
```
## Supplementary resources
- [`../../resources/code/`](../../resources/code/) — runnable DiD / IV / RD / DML skeletons (Stata + Python)
- [`../../../shared-resources/empirical-methods/reviewer-objection-checklist.md`](../../../shared-resources/empirical-methods/reviewer-objection-checklist.md) — objections by identification strategy, each with a preemption
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!