# St Kilda v Sydney Swans — AFL Round 21 2026 AI Prediction by Alphr

## Full Time: St Kilda 88 – 107 Sydney Swans

_Sydney Swans rally to sail past St Kilda._

Half time: 55 – 42 · Alphr AI pre-game win probability: St Kilda 33% / Sydney Swans 67% · Marvel Stadium · Sat, 01 Aug, 01:05 pm AEST

**Goal Kickers** — St Kilda: Nasiah Wanganeen-Milera (12' ×3), Liam Ryan (14' Tipped ⚡), Max Hall (19' ×3), Hugo Garcia (27'), Jack Higgins (39' ×2 Tipped ⚡), Campbell Lake (43' ×2), Anthony Caminiti (75') · Sydney Swans: Charlie Curnow (1' ×3 1st Tipped 🎯), Jai Serong (9'), Logan McDonald (23' ×4 Tipped ⚡), Chad Warner (41' ×2 Tipped ⚡), Isaac Heeney (54' ×2 Tipped ⚡), Errol Gulden (93'), Billy Cootee (83' ×2), Tom Papley (85' Tipped ⚡)

### Match Winner — AI Prediction Market (resolved)

| Team | Pre-game AI win probability | Result |
|---|---|---|
| Sydney Swans | 67% | Won |
| St Kilda | 33% | Lost |

Model call: **Correct** · Margin: 10.7 predicted → 19 actual · Markets hit: 2/4

_AI win probability priced pre-game · Markets hit = core betting markets._

### Full-Time Report

**St Kilda Saints vs Sydney Swans Prediction & Tips | AFL Round 21 2026**

_By Ben Dunlop · Published: 30 July 2026, 06:55 pm · Last updated: 1 Aug 2026, 03:57 pm_

St Kilda 88–107 Sydney Swans in AFL Round 21 at Marvel Stadium. Here's how the result stacked up against the model's call, with the win-probability story and where the value landed.

St Kilda fell short against the Sydney Swans, losing 107-88 at Marvel Stadium. Despite leading 74-62 at three-quarter time, they couldn't maintain their advantage. St Kilda's first half was strong, with a 55-42 lead at the main break, thanks to a midfield rated higher than Sydney's. However, they couldn't sustain their momentum in the final quarter.

The Saints excelled in disposals, recording 387 to the Swans' 365, and had a slightly better disposal efficiency at 76.0% compared to Sydney's 75.1%. They also led in tackles, with 54 to Sydney's 48. This defensive effort, along with 94 marks, suggested they had the potential to control the game.

But when it mattered most, St Kilda faltered. Despite winning the intercept battle narrowly, 72 to 73, and having a stronger forward and midfield line on paper, they couldn't keep up the intensity. The Swans took advantage of their superior ruck strength, winning 35 hit-outs to 22, and capitalised on St Kilda's vulnerabilities.

Clearances were another area where Sydney excelled, recording 40 to St Kilda's 33. This allowed them to use their possession more effectively, especially in the latter stages, as they surged into St Kilda’s defensive half. Although both teams matched up on inside 50s in recent weeks, Sydney managed 60 entries compared to St Kilda’s 49 on the day, showing their ability to dominate territory as the game progressed.

In the decisive final quarter, Sydney's accuracy and composure inside 50 stood out. They took 14 marks inside the arc compared to St Kilda's 11, highlighting a clinical edge that proved pivotal. This efficiency contrasted with early form, as St Kilda's average conceding was 74 points over their last five games, much less than the 93.4 the Swans were allowing. On the day, it was St Kilda's defence that cracked.

Pre-match predictions favoured the Swans, with a 67% chance to win. The model's anticipated margin of 10.7 was conservative against the 19-point reality, but it correctly predicted the win. The total score of 195 points exceeded expectations, well beyond the predicted 170. Sydney outperformed relative to their previous five-game average, coming from behind to secure victory with a strong final quarter.

Ultimately, the Swans' ability to convert possession dominance into scoring pressure shifted the contest. For St Kilda, it was a tale of missed opportunities and what might have been. Consistent trends didn't hold, and Sydney capitalised on that lapse. St Kilda will need to reassess how to maintain their structure under pressure, especially when the stakes rise late in the game.

**Scoring by Quarter**

| Team | Q1 | Q2 | Q3 | Q4 | T |
|---|---|---|---|---|---|
| St Kilda | 35 | 20 | 19 | 14 | 88 |
| Sydney Swans | 26 | 16 | 20 | 45 | 107 |

**Key Match Stats**

| St Kilda | Stat | Sydney Swans |
|---|---|---|
| **387** | Disposals | 365 |
| 129 | Contested poss. | **142** |
| 33 | Clearances | **40** |
| 49 | Inside 50s | **60** |
| **94** | Marks | 81 |
| 11 | Marks inside 50 | **14** |
| **54** | Tackles | 48 |
| 22 | Hit-outs | **35** |
| 72 | Intercepts | **73** |
| **76.0%** | Disposal eff. | 75.1% |

**Model Report Card**

Our model correctly predicted Sydney Swans to win at 67% probability. The predicted margin of 10.7 was reasonable against the actual 19-point result. The game's 195 points came in 25 points higher than the predicted 170. Sydney Swans trailed 55–42 at half-time before staging a second-half comeback to win 88–107. The model went 2/4 on this match. The 1-39 margin band call landed.

_Official AFL match stats · Generated by Alphr's model_

### Edge Analysis — the model's pre-game markets

- **Head to Head:** Sydney Swans to win @ $1.50 (edge +0.0%) — model probability 66.7% — result: WON
- **Line / Spread:** St Kilda +13.5 @ $1.89 (edge +2.8%) — result: LOST
- **Margin Band:** Sydney Swans 1-39 @ $3.30 (edge +0.0%) — result: WON
- **Total (Over/Under):** Under 182.5 @ $1.90 (edge +2.4%) — result: LOST
- Predicted margin: Sydney Swans by 11 · Predicted total: 170

### Match Preview (pre-match read)

The model is firm on Sydney Swans here: 67% to see off St Kilda. The heaviest factor is the ratings gap: Sydney Swans sit 206 ELO points clear, 1704 to 1498. Form leans St Kilda's way: 3 from their last 5, against 2 for Sydney Swans.

On paper St Kilda shade it, ahead on 5 of 7 factors including Forward Line, Recent Form and Weather. The model still sides with Sydney Swans, which says ELO Rating and Stat Profile carry the most weight. The margin model has Sydney Swans by 10.7, with the two sides combining for about 170. Sydney Swans to win, and win clearly. The model isn't hedging.

_Pre-match read · Alphr model_

### Recent Form (Last 5)

| St Kilda | Stat | Sydney Swans |
|---|---|---|
| 3.0 | Wins (Last 5) | 2.0 |
| 86.6pts | Avg Score | 91.2pts |
| 74.0pts | Avg Conceded | 93.4pts |
| 12.6pts | Avg Margin | -2.2pts |
| 414.0 | Disposals | 362.8 |
| 50.0 | Inside 50s | 50.0 |
| 65.6 | Tackles | 63.2 |
| 36.8 | Clearances | 34.8 |

### Form & History

_Last 5 games, oldest → newest._

| Team | Last 5 | Avg Pts |
|---|---|---|
| St Kilda | R15 L · R17 W · R18 W · R19 L · R20 W | 86.6 |
| Sydney Swans | R16 L · R17 W · R18 L · R19 L · R20 W | 91.2 |

### Positional Matchup

_Season-to-date production per game with league-wide attack/defence tiers (18 teams)._

**Forwards** (Key Forwards · Med/Mid Forwards)

|  | St Kilda | Sydney Swans |
|---|---|---|
| Attack rank | 13th (weak) | 5th (strong) |
| Defence rank | 10th | 2nd (strong) |
| Goals scored · conceded | 156 · 167 | 196 · 144 |
| Goal Assists | 4.6/g | 4.3/g |
| Disposals | 103/g | 96/g |
| Inside 50s | 17.8/g | 18.5/g |
| Marks Inside 50 | 8.2/g | 10.3/g |
| Disposal Efficiency | 68.6% | 69.2% |

**Midfield & Ruck** (Midfielders · Rucks)

|  | St Kilda | Sydney Swans |
|---|---|---|
| Attack rank | 7th | 1st (strong) |
| Defence rank | 4th (strong) | 11th |
| Goals scored · conceded | 62 · 49 | 92 · 60 |
| Goal Assists | 3.3/g | 5.1/g |
| Disposals | 155/g | 157/g |
| Inside 50s | 23.1/g | 28.6/g |
| Marks Inside 50 | 3.6/g | 2.6/g |
| Disposal Efficiency | 71.1% | 69.7% |

**Defenders** (Key & Medium Defenders)

|  | St Kilda | Sydney Swans |
|---|---|---|
| Attack rank | 1st (strong) | 11th |
| Defence rank | 8th | 8th |
| Goals scored · conceded | 27 · 14 | 11 · 14 |
| Goal Assists | 1.5/g | 2/g |
| Disposals | 132/g | 133/g |
| Inside 50s | 11.2/g | 13.1/g |
| Marks Inside 50 | 1.3/g | 0.6/g |
| Disposal Efficiency | 79.7% | 79.5% |

**Who scores on Sydney Swans** — Rucks 0.71/g (lg 0.52) +37% · Midfielders 2.35/g (lg 2.48) -5% · Forwards 4.13/g (lg 4.46) -7%
**Who scores on St Kilda** — Midfielders 2.62/g (lg 2.48) +6% · Key Forwards 3.98/g (lg 3.85) +3% · Forwards 4.17/g (lg 4.46) -7%

_Goals conceded by position, last 3 seasons; positive = concedes above league average to that position._

### Goal Scorer History — Who Kicks The Goals

_Last 10 games, career record vs the opponent and at Marvel Stadium. ⚡ = our AI backs them to score; 🎯 = our AI's first-goal pick. 🏉 = scored in this game. Goal % = share of games with a goal, last 10 weighted double vs the 30 prior — historical frequency, not a market price._

**St Kilda** (team sheet)

| # | Player | Pos | 2026 | Last 10 | vs opp | Venue | Goal % | Alphr play | This game |
|---|---|---|---|---|---|---|---|---|---|
| – | Liam Ryan | FWD | 29 in 14g | 23/10g (1·1·3·5·6·0·2·2·2·1) | 13/7g | 39/22g | 76% | ⚡ Anytime Goal $1.17 AI 86% ✓ Scored; 🎯 First Goal $13.00 AI 7% ✗ Not first | 🏉 14' |
| – | Jack Higgins | FWD | 25 in 13g | 20/10g (2·0·4·5·1·1·2·2·1·2) | 10/9g | 112/72g | 86% | ⚡ Anytime Goal $1.16 AI 83% ✓ Scored | 🏉 39' 71' |
| – | Mitch Owens | KF | 20 in 16g | 9/10g (0·3·1·1·0·0·1·1·0·2) | 5/5g | 59/51g | 68% | — | — |
| – | Max Hall | FWD | 19 in 19g | 9/10g (2·2·0·1·1·0·1·0·2·0) | 4/2g | 17/23g | 64% | — | 🏉 19' 72' 101' |
| – | Darcy Wilson | FWD | 16 in 18g | 8/10g (1·1·1·1·0·1·2·0·0·1) | 2/2g | 22/31g | 58% | — | — |
| – | Nasiah Wanganeen-Milera | MID | 16 in 15g | 10/10g (0·0·1·1·1·1·1·0·1·4) | 2/6g | 20/58g | 56% | — | 🏉 12' 31' 68' |
| – | Rowan Marshall | RUC | 11 in 17g | 7/10g (0·1·0·1·0·0·0·2·1·2) | 3/10g | 56/88g | 44% | — | — |
| – | Tom De Koning | RUC | 11 in 16g | 10/10g (0·2·0·2·0·2·2·1·1·0) | 5/7g | 19/39g | 38% | — | — |
| – | Mattaes Phillipou | FWD | 10 in 17g | 5/10g (0·0·2·2·0·0·0·1·0·0) | 2/3g | 18/32g | 40% | — | — |
| – | Bradley Hill | DEF | 9 in 19g | 5/10g (0·2·0·1·0·0·1·1·0·0) | 5/19g | 24/93g | 34% | — | — |
| – | Hugo Garcia | MID | 8 in 19g | 5/10g (2·0·0·0·0·1·1·0·1·0) | 1/2g | 9/25g | 28% | — | 🏉 27' |
| – | Mason Wood | MID | 8 in 18g | 3/10g (0·2·0·0·0·0·0·1·0·0) | 7/9g | 87/90g | 46% | — | — |
| – | Anthony Caminiti | DEF | 7 in 16g | 6/10g (2·0·0·0·0·0·2·1·0·1) | 1/3g | 29/40g | 26% | — | 🏉 75' |
| – | Jack Silvagni | DEF | 5 in 19g | 4/10g (0·0·3·0·0·0·0·0·1·0) | 5/8g | 32/49g | 20% | — | — |
| – | Marcus Windhager | MID | 3 in 19g | 1/10g (0·0·1·0·0·0·0·0·0·0) | 2/6g | 10/50g | 10% | — | — |
| – | Ryan Byrnes | MID | 2 in 11g | 2/10g (0·0·0·0·0·1·0·0·0·1) | 2/6g | 8/50g | 16% | — | — |
| – | Campbell Lake | FWD | 1 in 3g | 1/3g (0·0·1) | 0/0g | 0/2g | 33% | — | 🏉 43' 47' |
| – | Hugh Boxshall | MID | 1 in 6g | 2/10g (1·0·0·0·0·0·0·0·0·1) | 1/1g | 3/7g | 19% | — | — |
| – | Callum Wilkie | DEF | 0 in 19g | 0/10g (0·0·0·0·0·0·0·0·0·0) | 0/10g | 1/88g | 0% | — | — |
| – | Hunter Clark | DEF | 0 in 5g | 0/10g (0·0·0·0·0·0·0·0·0·0) | 1/8g | 10/62g | 6% | — | — |
| – | Liam O'Connell | DEF | 0 in 9g | 0/10g (0·0·0·0·0·0·0·0·0·0) | 0/0g | 0/10g | 0% | — | — |
| – | Liam Stocker | DEF | 0 in 14g | 0/10g (0·0·0·0·0·0·0·0·0·0) | 0/5g | 0/51g | 0% | — | — |
| – | Tobie Travaglia | DEF | 0 in 4g | 1/10g (1·0·0·0·0·0·0·0·0·0) | 0/0g | 0/9g | 12% | — | — |

**Sydney Swans** (team sheet)

| # | Player | Pos | 2026 | Last 10 | vs opp | Venue | Goal % | Alphr play | This game |
|---|---|---|---|---|---|---|---|---|---|
| – | Charlie Curnow | KF | 54 in 18g | 34/10g (1·2·8·2·3·3·6·5·0·4) | 15/9g | 128/50g | 80% | ⚡ Anytime Goal $1.04 AI 94% ✓ Scored; 🎯 First Goal $8.50 AI 10% ✓ Scored first | 🏉 1' 92' 100' |
| – | Logan McDonald | KF | 30 in 17g | 21/10g (3·3·2·2·2·1·3·1·1·3) | 7/5g | 14/9g | 86% | ⚡ Anytime Goal $1.20 AI 84% ✓ Scored; 🎯 First Goal $13.00 AI 6% ✗ Not first | 🏉 23' 29' 88' 65' |
| – | Chad Warner | MID | 26 in 19g | 15/10g (1·0·3·2·1·4·1·0·2·1) | 5/7g | 18/13g | 68% | ⚡ Anytime Goal $1.33 AI 71% ✓ Scored | 🏉 41' 95' |
| – | Isaac Heeney | MID | 26 in 17g | 13/10g (1·1·5·2·1·1·1·0·0·1) | 19/14g | 46/31g | 78% | ⚡ Anytime Goal $1.39 AI 71% ✓ Scored | 🏉 54' 65' |
| – | Tom Papley | FWD | 22 in 14g | 18/10g (3·1·1·1·2·2·0·2·4·2) | 19/12g | 42/25g | 82% | ⚡ Anytime Goal $1.11 AI 81% ✓ Scored | 🏉 85' |
| – | Malcolm Rosas | FWD | 16 in 15g | 10/10g (0·7·0·0·0·2·1·0·0·0) | 3/4g | 3/9g | 52% | — | — |
| – | Hayden McLean | KF | 13 in 8g | 17/10g (2·2·3·4·2·0·3·0·0·1) | 3/4g | 15/13g | 74% | ⚡ Anytime Goal $1.55 AI 77% ✗ No goal | — |
| – | Jake Lloyd | FWD | 12 in 19g | 5/10g (0·0·0·0·2·0·0·2·0·1) | 5/15g | 7/34g | 30% | — | — |
| – | Brodie Grundy | RUC | 9 in 18g | 2/10g (0·1·0·0·0·0·0·0·0·1) | 1/12g | 12/33g | 34% | — | — |
| – | James Rowbottom | FWD | 9 in 19g | 8/10g (0·0·0·1·1·2·0·0·2·2) | 5/10g | 4/18g | 36% | — | — |
| – | James Jordon | MID | 5 in 19g | 1/10g (0·0·1·0·0·0·0·0·0·0) | 1/6g | 2/14g | 22% | — | — |
| – | Nick Blakey | DEF | 5 in 19g | 2/10g (1·0·0·0·0·0·0·0·0·1) | 1/9g | 3/20g | 26% | — | — |
| – | Billy Cootee | FWD | 4 in 5g | 4/5g (1·0·1·0·2) | 0/0g | 2/2g | 60% | — | 🏉 83' 89' |
| – | Jai Serong | MID | 4 in 18g | 3/10g (1·0·0·1·0·0·0·0·0·1) | 1/2g | 0/2g | 21% | — | 🏉 9' |
| – | Braeden Campbell | FWD | 2 in 2g | 7/10g (0·0·1·0·2·1·1·0·1·1) | 2/4g | 7/12g | 50% | — | — |
| – | Matt Roberts | MID | 2 in 15g | 0/10g (0·0·0·0·0·0·0·0·0·0) | 0/3g | 1/8g | 4% | — | — |
| – | Riley Bice | DEF | 2 in 17g | 1/10g (0·0·0·0·0·0·1·0·0·0) | 0/2g | 0/5g | 9% | — | — |
| – | Errol Gulden | MID | 1 in 7g | 3/10g (0·0·2·0·1·0·0·0·0·0) | 5/6g | 12/14g | 38% | — | 🏉 93' |
| – | Callum Mills | DEF | 0 in 18g | 0/10g (0·0·0·0·0·0·0·0·0·0) | 0/10g | 2/21g | 10% | — | — |
| – | Dane Rampe | DEF | 0 in 12g | 0/10g (0·0·0·0·0·0·0·0·0·0) | 0/16g | 1/33g | 4% | — | — |
| – | Harry Kyle | DEF | 0 in 6g | 0/6g (0·0·0·0·0·0) | 0/1g | 0/0g | 0% | — | — |
| – | Tom McCartin | DEF | 0 in 16g | 0/10g (0·0·0·0·0·0·0·0·0·0) | 7/10g | 1/22g | 6% | — | — |
| – | William Edwards | DEF | 0 in 13g | 0/10g (0·0·0·0·0·0·0·0·0·0) | 0/1g | 0/2g | 0% | — | — |

### Player Props — Disposal Counts

_Bookmaker disposal lines vs our model's read. ⚡ = the validated under signal (model ≥10 points past the price) — everything else is market intel, not a tip. The ⚡ under signal's verified record: 57.7% of 1,278 flags in 2025._

**St Kilda**

| Player | Line | Under | AI Under | Actual |
|---|---|---|---|---|
| Nasiah Wanganeen-Milera | 31.5 | $1.80 | 54% | 24 ✓ |
| Bradley Hill ⚡ Under | 27.5 | $1.91 | 65% | 28 ✗ |
| Hugo Garcia ⚡ Under | 24.5 | $1.93 | 65% | 15 ✓ |
| Mattaes Phillipou ⚡ Under | 23.5 | $1.87 | 85% | 19 ✓ |
| Darcy Wilson ⚡ Under | 23.5 | $1.91 | 69% | 16 ✓ |
| Marcus Windhager | 22.5 | $1.87 | 58% | 17 ✓ |
| Max Hall | 21.5 | $1.87 | 59% | 23 ✗ |
| Callum Wilkie | 21.5 | $1.87 | 56% | 26 ✗ |
| Rowan Marshall | 18.5 | — | 51% | 15 ✓ |
| Mason Wood | 18.5 | — | 62% | 24 ✗ |
| Matthew Roberts | 16.5 | — | — | — |
| Hunter Clark | 15.5 | — | 68% | 16 ✗ |
| Ryan Byrnes | 15.5 | — | 45% | 24 ✗ |
| Hugh Boxshall | 14.5 | — | 44% | 14 ✓ |

**Sydney Swans**

| Player | Line | Under | AI Under | Actual |
|---|---|---|---|---|
| Errol Gulden ⚡ Under | 27.5 | $1.90 | 66% | 34 ✗ |
| Isaac Heeney | 27.5 | $1.87 | 60% | 22 ✓ |
| Nick Blakey | 24.5 | $1.89 | 59% | 28 ✗ |
| Callum Mills | 24.5 | $1.87 | 56% | 14 ✓ |
| Chad Warner | 24.5 | $1.89 | 51% | 25 ✗ |
| Riley Bice | 19.5 | — | 54% | 19 ✓ |
| Brodie Grundy | 18.5 | $1.90 | 41% | 20 ✗ |
| Tom McCartin | 18.5 | $1.87 | 57% | 20 ✗ |
| Jai Serong | 17.5 | $1.87 | 50% | 13 ✓ |
| James Rowbottom | 17.5 | $1.90 | 62% | 1 ✓ |
| Jake Lloyd | 16.5 | $1.87 | 41% | 17 ✗ |
| Braeden Campbell | 15.5 | — | 74% | 17 ✗ |
| Tom Papley | 15.5 | — | 63% | 10 ✓ |
| James Jordon | 14.5 | — | 42% | 19 ✗ |

### Prediction Breakdown — Pure Alpha Model

**Team ELO Ratings** — St Kilda 1498 · Sydney Swans 1704 · ELO difference: 206 in favour of Sydney Swans

**Positional Matchups** — lineup ELO by unit

| Unit | St Kilda | Sydney Swans | Edge |
|---|---|---|---|
| Midfield | 1309 (best 1309) | 1241 (best 1300) | St Kilda +68 |
| Forwards | 1277 (best 1513) | 1048 (best 1286) | St Kilda +229 |
| Defence | 1189 (best 1381) | 1113 (best 1253) | St Kilda +76 |
| Ruck | 1278 (best 1278) | 1341 (best 1341) | Sydney Swans +63 |

**Key Prediction Factors** — what the model weighted most

| # | Factor | Weight | Favours |
|---|---|---|---|
| 1 | ELO Rating | 42.0% | Sydney Swans |
| 2 | Stat Profile | 16.7% | Sydney Swans |
| 3 | Forward Line | 14.4% | St Kilda |
| 4 | Recent Form | 5.1% | St Kilda |
| 5 | Weather | 5.1% | St Kilda |
| 6 | Defence | 4.2% | St Kilda |
| 7 | Venue | 3.6% | St Kilda |

**Model Confidence: 67%** — Sydney Swans predicted to win by 11 points · Predicted total: 170 pts

**Record:** 2/4 predictions correct

**Prediction by Alphr** (https://alphr.com.au) — free AI predictions for every AFL, NRL & Super League match, published before kick-off and never edited. Verified track record: https://alphr.com.au/accuracy

---
Canonical URL: https://alphr.com.au/afl/match/2026-r21-st-kilda-v-sydney-swans
RSS feed: https://alphr.com.au/feed.xml
Prediction JSON API: today https://alphr.com.au/api/predictions/today · this week https://alphr.com.au/api/predictions/weekly
Markdown view for AI agents. Machine-readable index: https://alphr.com.au/llms.txt · full reference: https://alphr.com.au/llms-full.txt
All predictions are published before kick-off and verified after full time. Free, no login. 18+ gamble responsibly (AU).
Last updated: 2026-08-01 05:57 UTC (latest tip update)