Event Window & Estimation Window Selection
Window selection is one of the most important design choices in an event study. The event window determines which days are examined for abnormal returns. The estimation window determines the data used to calibrate the expected return model. Poorly chosen windows can reduce statistical power, introduce bias, or miss the market reaction entirely. This page explains how to select both windows, what gap to use between them, and which window lengths work best for common event types.
Part of the Methodology Guide
This page is part of the Event Study Methodology Guide.
Event Study Timeline
An event study divides the time series into three periods. Each plays a distinct role in the analysis.
| Period | Typical Range | Purpose |
|---|---|---|
| Estimation window | T0 to T1 (e.g., -260 to -11) | Estimate the expected return model parameters (alpha, beta) |
| Gap | T1 to T2 (e.g., -10 to -6) | Buffer to prevent event contamination of estimation |
| Event window | T2 to T3 (e.g., -5 to +5) | Measure abnormal returns around the event |
Day 0 is the event date. Negative days precede the event; positive days follow it. The estimation window comes first, followed by an optional gap, then the event window. These periods must never overlap — overlap would mean the event contaminates the estimation of "normal" behavior.
Event Window
The event window captures the market's reaction to the event. It should be long enough to capture the full reaction (including any information leakage before the announcement and post-event drift) but short enough to avoid confounding from unrelated events.
Trade-offs
| Characteristic | Short Window (e.g., [-1, +1]) | Long Window (e.g., [-10, +10]) |
|---|---|---|
| Power | Higher -- less noise in abnormal returns | Lower -- more noise dilutes the signal |
| Confounding risk | Lower -- fewer unrelated events in window | Higher -- other news may affect returns |
| Captures leakage | May miss pre-event information leakage | Captures anticipatory trading and rumors |
| Captures drift | May miss post-event drift | Captures gradual price adjustment |
| Best for | Clean, well-dated events with efficient markets | Events with uncertain timing or gradual revelation |
Start narrow, then expand
Begin with a narrow window ([-1, +1] or [-2, +2]) to test your primary hypothesis. Then widen the window as a robustness check to see if results change. If the effect disappears in a wider window, it may be noise. If it grows, there may be information leakage or post-event drift.
Estimation Window
The estimation window provides the historical data used to estimate the expected return model. Its length determines the precision of model parameters (alpha, beta, factor loadings, or GARCH parameters).
| Window Length | Trading Days | Pros | Cons |
|---|---|---|---|
| Short | 120 days (~6 months) | Adapts to recent market conditions; works for newly listed firms | Less precise parameter estimates; higher estimation variance |
| Standard | 250 days (~1 year) | Good balance of precision and adaptability; most common in literature | May span a structural break |
| Long | 500 days (~2 years) | Very precise parameter estimates; better for GARCH models | May include stale data; risk of structural breaks |
The standard choice is 250 trading days (approximately one calendar year). This is the default in most event study software and the recommendation in Campbell, Lo, and MacKinlay (1997).
Structural breaks
If the estimation window spans a major market regime change (e.g., a financial crisis), the estimated parameters may not reflect "normal" behavior. Consider shortening the estimation window or using a Rolling Window Model that adapts to changing parameters.
Gap Between Windows
The gap (also called the guard period) separates the estimation window from the event window. It prevents pre-event information leakage from contaminating the estimation of normal returns.
If the event was anticipated by the market (e.g., through rumors, media speculation, or regulatory filings), stock prices may start moving before the official announcement. Without a gap, these anticipatory movements would be included in the estimation window, biasing the model parameters and reducing the measured abnormal return.
| Gap Length | Trading Days | When to Use |
|---|---|---|
| No gap | 0 days | Only if the event was completely unanticipated (rare) |
| Short | 5-10 days | Standard choice for most event types |
| Medium | 10-20 days | Events with potential rumor effects (M&A, regulatory) |
| Long | 20-30 days | Events with extended pre-announcement leakage |
In the EventStudy R package, the gap is controlled by the shift_estimation_window parameter. A value of -10 means the estimation window ends 10 days before the start of the event window.
Recommended Windows by Event Type
Window choices vary by event type. The table below summarizes recommendations from the academic literature and common practice.
| Event Type | Event Window | Estimation Window | Gap | Rationale |
|---|---|---|---|---|
| M&A announcements | [-1, +1] | 250 days | 10 days | Well-dated; strong immediate reaction; pre-announcement run-up captured separately |
| Earnings announcements | [-1, +1] | 250 days | 5 days | Precise announcement date; fast market reaction in efficient markets |
| Regulatory changes | [-5, +5] | 250 days | 20 days | Date may be uncertain; often anticipated through political process |
| ESG events | [-2, +2] | 250 days | 10 days | Moderate uncertainty in timing; some events are gradual |
| Product launches | [-1, +1] | 250 days | 5 days | Usually well-dated; immediate market assessment |
| CEO turnover | [-1, +1] | 250 days | 10 days | Often preceded by rumors; use wider window for robustness |
| Credit rating changes | [-5, +5] | 250 days | 20 days | Rating agencies may signal changes in advance through watch lists |
| Macroeconomic announcements | [-1, +1] | 250 days | 5 days | Precise timing; fast reaction; clustered across firms |
| IPOs (first-day performance) | [0, +1] | 120 days (index only) | 0 days | No pre-event firm data; use Market Adjusted model |
| Dividend announcements | [-1, +1] | 250 days | 5 days | Well-dated; clean identification |
Always justify your choice
In your paper or report, explicitly justify the chosen window lengths. Reference prior studies that use similar event types and windows. Run robustness checks with alternative window specifications.
How Does Window Length Affect Statistical Power?
Statistical power is the probability of detecting a true abnormal return. Window length affects power through two channels.
Event window length: A longer event window includes more days with zero abnormal returns (noise), diluting the signal. If the event effect is concentrated on days [0, +1], a [-10, +10] window adds 19 days of noise. The cumulative abnormal return (CAR) remains the same, but the variance of the CAR estimate increases, reducing the t-statistic and power.
Estimation window length: A longer estimation window produces more precise estimates of model parameters and the residual variance. This reduces the standard error of abnormal returns, increasing power. The improvement diminishes beyond about 250 days.
| Factor | Effect on Power | Recommendation |
|---|---|---|
| Shorter event window | Increases power (less noise) | Use the narrowest window that captures the full effect |
| Longer estimation window | Increases power (better estimation) | Use at least 120 days; 250 days is standard |
| Larger sample (more events) | Increases power (cross-sectional averaging) | Include as many events as data quality allows |
| Higher abnormal return magnitude | Increases power (larger signal) | Cannot control, but affects detectable effect size |
For a formal analysis of power as a function of study design parameters, see the Power Analysis & Monte Carlo Simulation page.
How Do I Configure Windows in R?
Windows are specified in the event request table. Each event can have different window parameters.
# Standard M&A event study setup
request <- tibble(
event_id = 1:3,
firm_symbol = c("AAPL", "MSFT", "GOOGL"),
index_symbol = "SP500",
event_date = c("15.03.2022", "20.04.2022", "10.05.2022"),
group = "Acquisition",
# Event window: [-1, +1] (3 days)
event_window_start = -1,
event_window_end = 1,
# Gap: 10 trading days
shift_estimation_window = -10,
# Estimation window: 250 trading days
estimation_window_length = 250
)
task <- EventStudyTask$new(firm_data, index_data, request)
ps <- ParameterSet$new()
task <- run_event_study(task, ps)# Run with different event windows for robustness
windows <- list(
narrow = c(-1, 1),
medium = c(-5, 5),
wide = c(-10, 10)
)
results <- map(windows, function(w) {
req <- request |>
mutate(event_window_start = w[1], event_window_end = w[2])
task <- EventStudyTask$new(firm_data, index_data, req)
ps <- ParameterSet$new()
task <- run_event_study(task, ps)
# Extract CAAR
tidy.EventStudyTask(task, type = "aar")
})
# Compare CAAR across window specifications
bind_rows(results, .id = "window_spec")Best Practices
- Start with standard windows: Use [-1, +1] for the event window and 250 days for estimation unless you have a specific reason to deviate.
- Include a gap: Always use a gap of at least 5-10 trading days to prevent contamination.
- Run robustness checks: Test your results with at least two alternative event window specifications.
- Report all specifications: If results are sensitive to window choice, report all specifications transparently.
- Check for confounding events: With wider event windows, verify that other firm-specific events do not fall within the window.
- Cite precedent: Reference prior studies in your field that use similar window choices.
Literature
- Campbell, J.Y., Lo, A.W. & MacKinlay, A.C. (1997). The Econometrics of Financial Markets. Chapter 4.
- MacKinlay, A.C. (1997). Event studies in economics and finance. Journal of Economic Literature, 35(1), 13-39.
- Kothari, S.P. & Warner, J.B. (2007). Econometrics of event studies. In Handbook of Corporate Finance, Vol. 1.
Run this in R
The EventStudy R package lets you run these calculations programmatically with full control over parameters.
What Should I Do Next?
- Data Preparation — format your data for the EventStudy package
- Expected Return Models — choose the right benchmark model
- Choosing the Right Test Statistic — select tests appropriate for your study design
- Power Analysis — simulate power for your specific design