AFL In-Running Predictor — User Guide
This app produces live predictions for an AFL match in progress: the probability the home team wins, the expected final margin, and the expected final total score, along with 50%, 90%, and 95% prediction intervals. It's calibrated on 2,879 V/AFL matches from 2012–2025 (excluding the structurally shorter 16-minute-quarter 2020 season).
Setting the match clock
Start by selecting the current quarter (Q1–Q4) from the dropdown. Then enter the time as MM:SS in the clock field. By default this is interpreted as time elapsed in the current quarter — so 12:30 in Q3 means twelve minutes and thirty seconds into the quarter. If you'd rather work with the broadcast clock that counts down toward zero, flip the Count down toggle and the same field will be interpreted as time remaining in the quarter.
You can leave the Quarter length override field blank in most cases. The app forecasts how long the current quarter will run based on scoring so far (each goal adds about 37 seconds of stoppage time, each behind about 3 seconds), blended with the historical mean for that quarter. The italic line below the override field shows what length the app is currently using and how it compares to the long-run median. Only override this when you have specific information — for example if you know the umpires have lengthened time-on for an unusual reason.
Entering scores
Two score blocks sit side-by-side. The Whole game so far block takes the current scoreboard — total Home and Away goals and behinds across the whole match to date. The At start of current quarter block takes the score as it stood when the current quarter began. The app subtracts the second from the first to infer how much scoring has happened in the current quarter, displayed below the inputs as "This Q so far". This current-quarter signal feeds directly into the totals model, where it improves predictions especially around the end of Q1 (where it captures pace-of-play differences that persist through the rest of the game).
In Q1 the start-of-quarter scores will all be zeros, so just leave them at zero. From Q2 onward, fill in what the score was at the last quarter break.
Pre-game forecasts (A and B)
The app accepts two pre-game forecasts so you can compare them side-by-side. Forecast A might be your own model's prediction; Forecast B might be a market-implied number, a friend's tip, or your previous-version model. Each forecast takes a margin (positive favours home, negative favours away) and a predicted total score. All downstream results are computed twice and shown next to each other so you can see how the in-running prediction shifts depending on which pre-game number you trust. If you only have one pre-game forecast, just enter the same values in both columns.
The pre-game forecast becomes less influential as the match progresses — by the final quarter the live scoreboard dominates, and the pre-game numbers barely move the prediction. The Model blend card at the bottom shows the actual weights at each point in the game.
Reading the outputs
The rem_frac badge in the top-right of the input panel shows where you are in the match on a 0-to-1 scale: 1.00 is pre-game, 0.75 is end of Q1, 0.50 is half-time, 0.25 is end of Q3, and 0.00 is full-time. Almost everything in the calibration tables is indexed by this number.
The Live prediction summary shows the current scoreboard and two probability bars — one for each pre-game forecast — giving the chance the home team wins.
The Final margin and Final total cards each split into two columns (A and B), showing the expected value plus 50%, 90%, and 95% prediction intervals. The intervals come from empirical residual quantiles on the calibration data, not from a Gaussian assumption, so they correctly capture the asymmetric uncertainty pattern in low-rem_frac situations (the 95% interval is genuinely the empirical 95% range observed in similar historical situations).
The Model blend card shows how much weight the model gives to each input source at this point in the game. The Out-of-sample calibration card shows mean error and interval coverage from a hold-out test on the 2015–2025 seasons — useful for sanity-checking how much faith to put in any single prediction.
Tips
A few situations worth knowing about. At the very start of Q1 (rem_frac near 1.0) the prediction is essentially your pre-game forecast plus a small adjustment — there's no information yet. Around the start of Q2 (rem_frac near 0.75) the totals model puts unusual weight on the current-quarter score (the b_qtr coefficient peaks here), so getting the start-of-quarter scores right matters most at this point. By the time you're deep into Q4 (rem_frac below 0.10) the prediction is dominated by the current scoreboard and the pre-game forecasts barely move the needle. P(home wins) typically saturates at 100% or 0% well before full-time when leads are sufficiently large.
If the rem_frac badge turns red and reads "Check your inputs", something is invalid — usually the start-of-quarter scores exceed the whole-game scores (which would mean negative current-quarter scoring), or the clock isn't in MM:SS format. Predictions stop updating until you fix it.
