Beat Streaks in Canada: +1.22% T+21 Over 25 Years on the TSX

Canadian beat streaks produce twice the abnormal return of US stocks. 5,684 events on the TSX from 2000-2025. T+21 CAR of +1.22% vs +0.55% for US. The drift keeps building to +1.76% at T+63.

Grouped bar chart showing cumulative abnormal returns by beat streak length at T+1, T+5, T+21, and T+63 windows for Canadian TSX stocks 2000-2025.

Earnings Beat Streaks in Canada: +1.22% T+21 Over 25 Years

Canadian stocks with two or more consecutive earnings beats produce cumulative abnormal returns roughly twice the magnitude of US equivalents. We analyzed 5,684 streak events on the TSX from 2000 to 2025 and found T+21 drift of +1.22% and T+63 drift of +1.76%. Unlike the US, where 63-day drift has compressed significantly, the Canadian signal keeps building for three months.

Contents

  1. Method
  2. What We Found
  3. Streak Length Breakdown
  4. The SQL Screen
  5. Why It Works
  6. Limitations
  7. Takeaway

Method

Universe: TSX-listed stocks with market cap above CAD 500M. We required at least two consecutive quarters of EPS beats. Data sourced from FMP's earnings surprises endpoint, 2000–2025.

Beat definition: epsActual > epsEstimated where ABS(epsEstimated) > 0.01. The floor on estimated EPS filters near-zero estimates.

Windows: CAR measured at T+1, T+21, and T+63 trading days after each streak-extending announcement.

Benchmark: EWC (iShares MSCI Canada ETF). CAR = stock return minus EWC return over each window.

Total events: 5,684


What We Found

The Canadian beat streak signal is stronger and more persistent than the US equivalent. The T+21 CAR of +1.22% is 2.2x the US result (+0.55%). More striking: the T+63 drift of +1.76% keeps building rather than compressing. In the US, 63-day drift has been arbitraged down to +0.31%. In Canada, it's nearly six times larger.

Two explanations for this gap. First, Canadian markets have lower institutional coverage. Fewer analysts follow TSX mid-caps, which means information travels more slowly and the post-announcement drift window stays open longer. Second, the TSX is more concentrated in resources and financials. These sectors have earnings that are more genuinely surprising and harder to predict than the technology-heavy US universe.

Window Mean CAR t-stat N
T+1 +0.83% 16.82 5,684
T+21 +1.22% 10.15 ~5,680
T+63 +1.76% 8.57 ~5,650

All three windows are statistically significant with t-stats well above conventional thresholds. The hit rate isn't shown here but is consistent with the US pattern at T+1 (just above 50%).


Streak Length Breakdown

The streak pattern in Canada differs from the US in one important way: streak 3 outperforms streak 2 at both T+21 and T+63. That's unusual. In the US, streak 2 is the peak. In Canada, the third consecutive beat produces the strongest T+21 return (+1.65%) of any category.

Streak N T+1 T+21 T+63
Streak 2 2,137 +0.94% +1.33% +2.15%
Streak 3 1,204 +0.92% +1.65% +2.23%
Streak 4 717 +0.72% +0.43% +0.75%
Streak 5+ 1,599 +0.67% +1.12% +1.39%

Streak 4 shows a notable dip at T+21 (+0.43%), which then recovers strongly at streak 5+ (+1.12%). This non-monotonic pattern at streak 4 is worth investigating. One hypothesis: at streak 4, the market starts pricing in streak continuation more aggressively, temporarily suppressing the post-announcement drift. By streak 5+, that pricing effect has normalized.

The practical read: streak 2 and streak 3 are the strongest entry points for T+21 and T+63 holds. Streak 4 is the weakest. Streak 5+ recovers but at lower absolute levels.


The SQL Screen

This query finds TSX stocks currently on a beat streak of 3 or more quarters. The structure mirrors the US version but with a CAD 500M market cap floor (approximately USD 370M depending on exchange rate):

WITH ordered_earnings AS (
    SELECT symbol,
        CAST(date AS DATE) AS event_date,
        epsActual AS actual,
        epsEstimated AS estimated,
        CASE WHEN epsActual > epsEstimated THEN 1 ELSE 0 END AS is_beat,
        ROUND((epsActual - epsEstimated) / ABS(NULLIF(epsEstimated, 0)) * 100, 1) AS surprise_pct,
        ROW_NUMBER() OVER (PARTITION BY symbol ORDER BY date DESC) AS recency_rank
    FROM earnings_surprises
    WHERE epsEstimated IS NOT NULL
      AND ABS(epsEstimated) > 0.01
      AND epsActual IS NOT NULL
),
streak_calc AS (
    SELECT *, SUM(CASE WHEN is_beat = 0 THEN 1 ELSE 0 END)
        OVER (PARTITION BY symbol ORDER BY recency_rank
              ROWS UNBOUNDED PRECEDING) AS streak_breaker
    FROM ordered_earnings
),
streaks AS (
    SELECT symbol,
        COUNT(*) AS current_streak,
        ROUND(AVG(surprise_pct), 1) AS avg_surprise_pct,
        MIN(event_date) AS streak_start,
        MAX(event_date) AS latest_beat
    FROM streak_calc
    WHERE streak_breaker = 0 AND is_beat = 1
    GROUP BY symbol
    HAVING COUNT(*) >= 3
)
SELECT s.symbol, s.current_streak, s.avg_surprise_pct,
    s.streak_start, s.latest_beat,
    ROUND(k.mktCapUSD / 1e9, 1) AS mktcap_bn
FROM streaks s
JOIN key_metrics k ON s.symbol = k.symbol AND k.period = 'TTM'
WHERE k.mktCapUSD > 370000000  -- ~CAD 500M
QUALIFY ROW_NUMBER() OVER (PARTITION BY s.symbol ORDER BY k.date DESC) = 1
ORDER BY s.current_streak DESC, s.avg_surprise_pct DESC
LIMIT 30

FMP stores Canadian tickers with their TSX suffix (e.g., SHOP.TO, CNQ.TO). Filtering by exchange is possible if you add AND exchange = 'TSX' to the earnings_surprises subquery, though coverage varies by data vintage.

Run this screen live on Ceta Research → (pre-loaded query, no account required)


Why It Works

The academic literature on post-earnings announcement drift (PEAD) consistently finds stronger effects in markets with lower analyst coverage and less liquid stocks. Canada sits in a middle ground: it has professional institutional infrastructure but far fewer analysts per stock than US markets.

Loh and Warachka (2012) documented that streak information is under-priced across markets. Their findings were US-centric, but the mechanism generalizes: analysts don't fully update their forward estimates after each consecutive beat, leaving a predictable pattern in post-announcement returns. With fewer analysts per Canadian stock, the adjustment is slower and the drift window is longer.

Myers, Myers, and Skinner (2007) noted that earnings management to sustain streaks is common. Canadian companies have similar incentives to their US counterparts. The difference is that when genuine fundamental outperformance drives a streak, the market takes longer to recognize it in Canada than in the US.

The resource sector provides a structural explanation too. Mining and energy earnings are driven by commodity prices, which are genuinely hard to forecast. When a mining company beats consistently, it often reflects operational discipline that analysts systematically underestimate. That's a fundamentally different kind of streak than a software company guiding conservatively.


Limitations

Smaller sample: 5,684 events vs 73,386 in the US. Individual streak categories have a few hundred to ~2,000 events. The t-stats are strong, but subcategory results (especially streak 4 with 717 events) carry more uncertainty.

EWC as benchmark: EWC tracks large-cap Canadian stocks and is energy-heavy. If beat-streak stocks are concentrated in resources, EWC may partially capture their returns, understating true CAR. A sector-neutral benchmark would be more precise.

Currency effects: The CAR is computed in local currency (CAD). US investors would also absorb CAD/USD moves over the 63-day window, which adds noise.

Coverage gaps: FMP's Canadian coverage for older periods (pre-2010) is thinner. The 25-year result relies heavily on recent data where coverage is better.


Takeaway

Canadian beat streaks produce larger and more persistent drift than US equivalents. The T+21 result (+1.22%) is 2.2x the US figure, and the T+63 drift (+1.76%) hasn't compressed the way it has south of the border. The streak 3 category specifically outperforms streak 2 at T+21, which is unusual and suggests the market under-reacts to the third consecutive beat more than the second.

For investors screening TSX stocks, active beat streaks at streak 2 and streak 3 represent the highest-probability entry points based on this data. Streak 4 shows anomalous weakness that recovers at streak 5+, which complicates simple streak-length rankings.

The Canadian market's analyst coverage gap, resource sector concentration, and lower institutional arbitrage capacity all point toward this signal remaining more durable than the US equivalent. Whether that holds through the next decade depends on how quickly institutional coverage of TSX mid-caps improves.

Part of a series: Beat streaks analyzed across 16 exchanges. See US, Japan, Taiwan, India, Brazil, and the global comparison.


Data: FMP earnings surprises + key metrics, 2000–2025. TSX. Market cap > CAD 500M. 5,684 streak events. Benchmark: EWC.