Wagglelytics.ca
CFL stats in motion. Updated through Week 20 of 2026.
A fan's guide

Learn the Stats

Everything on Wagglelytics.ca comes from the CFL's game reports and play-by-play data, plus my own charting from game film.

Why Wagglelytics.ca

You don't need advanced stats to love Canadian football, and most fans have never looked at them. That's mostly because there has been nowhere to look: the deeper numbers either aren't tracked for the CFL or sit behind a paywall.

Wagglelytics.ca is my attempt to change that. The goal is to put those numbers in front of more people, to help fans understand the game a little better and to show clearly, with numbers, what they already see on the field.

To be honest about the timing: when Stewart Johnson announced the rule changes, my first thought was to hold the site and launch it in 2027 with the new rules. I changed my mind, which is why it's arriving so late in the season.

EPA (expected points added)

This website started with one idea: bring EPA (expected points added) to the CFL. It's used all the time in the NFL to judge teams and players. Here's how it works.

Before every snap, the team with the ball has an expected points value: how many points it's likely to score next. This is based on every CFL play I've charted, and takes into account the down, the distance, where the ball is, the time left in the half and who's at home. It runs from about −3 to just over 6.

EPA is how much one play moves that number, up or down. Example: Pinned at your own 5 (expected −0.9), a 30-yard catch to your 35 (expected 1.0) is +1.9 EPA. A touchdown is worth 7, so scoring from the other team's 1 (expected 6.4) is only +0.6 EPA.

1st down, ball onWorth
Own 5−0.9
Own 351.0
Centre field2.6
Opponent's 453.1
Opponent's 154.9
Opponent's 16.4

Success rate

Success rate is how often a play leaves the offence better off than before the snap (positive EPA). Example: On 1st and 10, it usually takes a gain of 7 yards or more. League average is just under 50%.

Explosive plays

An explosive play is a pass of 20+ yards or a rush of 10+. About 1 in 8 passes and 1 in 7 rushes are explosive, and they produce over 40% of an offence's value.

2025–2026 Rushers who lead in Explosive Plays
NameTeamExplosive playsRushes
Dedrick MillsCGY74418
Brady OliveiraWPG70419
Justin RankinEDM64371

aDOT and YAC

aDOT (average depth of target) is how far the ball travels in the air past the line of scrimmage, on average, whether it's caught or not. A high aDOT means a quarterback likes to throw deep; a low one means short, quick passes. The league average is about 10 yards.

YAC (yards after the catch) is how far a receiver runs with the ball after he catches it.

Example: A receiver catches the ball 5 yards past the line of scrimmage, then runs another 7 yards before he's tackled. That's a 12-yard gain: 5 yards aDOT and 7 YAC.

aDOT isn't in the CFL's official stats, so I work it out from the play-by-play.

Time to throw

Time to throw is how long a quarterback holds the ball, from the snap to the moment it leaves his hand. I time it from game film on every play that ends in a throw. The site shows the median, the time on a typical dropback, because I found the average was inflated by plays where the quarterback scrambled before throwing. I may take scramble plays out later, but for now every throw counts. So far 13 games are timed. Timing every throw by hand is slow, tedious work, but the goal is to build a full catalogue over time. Until then, these numbers will move from week to week.

Sacks are not timed.

Davis Alexander to Tyson Philpot, a 46-yard touchdown against Saskatchewan: 2.41 seconds from snap to release.

Red zone

The red zone is any play run at or inside the opponent's 20-yard line. On player cards, red zone attempts, targets, carries and touchdowns are per game played, so a player who missed games isn't punished for it. Each one is ranked as a percentile, the same way as the stats above.

Win probability

Win probability is each team's chance of winning before a snap, based on the score, time left, field position and who has the ball. WPA (win probability added) is how much one play changed it. The Game Centre charts it for every game.

Percentiles and qualifying

Player cards show each stat as a percentile: 90 means better than 90% of qualified players at that position. Green is good, purple is bad. To be ranked, a player needs 100 dropbacks (quarterbacks), 30 targets (receivers) or 40 carries (rushers).

Glossary

aDOT
Average depth of target: air yards per pass attempt.
Catch rate
Catches divided by targets.
Deep throw rate
Share of attempts thrown 20+ yards past the line.
Dropback
A pass attempt or a sack.
EP
Expected points: how many points the team with the ball is likely to score next.
EPA
Expected points added: EP after a play minus EP before it.
Explosive play
Pass of 20+ yards or rush of 10+ yards.
Median
The middle value: half the numbers are above it and half below.
Net EPA
Team offence EPA minus defence EPA, with opponent strength and home field removed.
Percentile
Where a player ranks among qualified players at his position, 1 to 99.
Red zone
Plays at or inside the opponent's 20-yard line.
Sack rate
Sacks divided by dropbacks.
Stuffed rate
Share of runs that gain zero yards or lose yards.
Success rate
Share of plays with positive EPA.
Target
A pass thrown to a receiver, caught or not.
Time to throw
Seconds from the snap to the moment the ball leaves the quarterback's hand, timed from game film.
WP / WPA
Win probability, and win probability added: the change in it on one play.
YAC
Yards after the catch: total gain minus air yards on a completion.