# GWS GIANTS v Sydney Swans — AFL Round 20 2025 AI Prediction by Alphr

## Full Time: GWS GIANTS 102 – 58 Sydney Swans

_GWS GIANTS hit back to dwarf Sydney Swans from 28 down._

Half time: 22 – 50 · Alphr AI pre-game win probability: GWS GIANTS 77% / Sydney Swans 23% · ENGIE Stadium · Fri, 25 July, 07:50 pm AEST

**Goal Kickers** — GWS GIANTS: Jesse Hogan (10' 1st Tipped 🎯), Tom Green (53'), Aaron Cadman (64' ×3 Tipped ⚡), Finn Callaghan (68'), Jake Stringer (79' ×3 Tipped ⚡), Toby Greene (82' Tipped ⚡), Toby Bedford (86' ×2), Harry Himmelberg (93'), Lachie Ash (95'), Final quarter (27m 47s)Jesse Hogan (69') · Sydney Swans: Isaac Heeney (14' Tipped ⚡), Brodie Grundy (20'), Will Hayward (33' ×2), Callum Mills (47'), Tom Papley (57'), Justin McInerney (69')

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

| Team | Pre-game AI win probability | Result |
|---|---|---|
| GWS GIANTS | 77% | Won |
| Sydney Swans | 23% | Lost |

Model call: **Correct** · Margin: 10.5 predicted → 44 actual · Markets hit: 3/3

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

### Full-Time Report

**GWS GIANTS vs Sydney Swans Prediction & Tips | AFL Round 20 2025**

_By Ben Dunlop · Published: 24 Feb 2026, 10:45 pm_

GWS GIANTS 102–58 Sydney Swans in AFL Round 20 at ENGIE Stadium. Here's how the result stacked up against the model's call, with the win-probability story and where the value landed.

Twenty-eight points down at half-time, GWS Giants then produced a third term that turned the whole afternoon on its head. Sydney led 50-22 at the long break. By three-quarter time it was Giants 79, Swans 56. That's a 57-6 quarter, the kind of scoreboard swing that decides a season, let alone a Saturday.

The final read was Giants 102, Swans 58, a 44-point win that bore no resemblance to the tight contest the first half promised. Sydney simply had no answer once GWS found its rhythm, and by full time the margin had blown out from a two-goal Swans lead to a 44-point Giants romp.

Look at the disposal count and you'd think it was even, 332 to 334, with efficiency almost identical at 70.8 to 70.6 per cent. Sydney even won the clearance count comfortably, 41 to 27, and dominated hit-outs 36 to 26, which lines up with the ruck rating going in, Swans 1046 to the Giants' 959. On paper that should have been the difference. It wasn't.

What actually decided it was what each side did once the ball hit the ground. GWS went inside 50 fifty-four times to Sydney's 44, and once there they made it count, 15 marks inside forward 50 to just 3 for the Swans. That's not a stat, that's a target-practice session. GWS also camped in front of the ball with 102 marks to 73, and read the intercept battle far better, 60 to 45, which tracks with the pre-match defence rating that had the Giants well clear at 1028 to Sydney's 960.

Sydney's form coming in showed an average of 86.95 points conceded across their last five, easily the softer defensive number of the two sides, and this game did nothing to flatter it. Winning the clearance and hit-out battle counts for little if the other side is taking marks inside 50 at a five-to-one clip and turning every second contest into an interception.

Alphr's model had this one right where it mattered most. It backed GWS Giants at 77 per cent to win, and they obliged easily. The total score prediction of 164 landed within 4 points of the actual 160, a tidy read given how lopsided the scoring pattern turned out to be. Where it missed was the margin, tipped at 10.5 points against an actual 44. Picking the buffer between a stroll and a hiding is always harder than picking the winner, and this was one of the more emphatic misses on that front.

Sydney's problem wasn't generating the ball, it was doing anything with it once forward half turned into forward 50. Three marks inside the attacking arc all day tells you the story better than any clearance count can. GWS took a below-average ruck day, shrugged, and let their forward-half pressure and clean hands do the rest. Three quarters of dominance from one 57-6 term, and the rest wrote itself.

**Scoring by Quarter**

| Team | Q1 | Q2 | Q3 | Q4 | T |
|---|---|---|---|---|---|
| GWS GIANTS | 8 | 14 | 57 | 23 | 102 |
| Sydney Swans | 23 | 27 | 6 | 2 | 58 |

**Key Match Stats**

| GWS GIANTS | Stat | Sydney Swans |
|---|---|---|
| 332 | Disposals | **334** |
| **131** | Contested poss. | 123 |
| 27 | Clearances | **41** |
| **54** | Inside 50s | 44 |
| **102** | Marks | 73 |
| **15** | Marks inside 50 | 3 |
| 58 | Tackles | **64** |
| 26 | Hit-outs | **36** |
| **60** | Intercepts | 45 |
| **70.8%** | Disposal eff. | 70.6% |

**Model Report Card**

Our model correctly predicted GWS GIANTS to win at 77% probability. The margin model missed here, predicting 10.5 but the actual margin was 44 points. Total score prediction of 164 was close to the actual 160, within 4 points. GWS GIANTS trailed 22–50 at half-time before staging a second-half comeback to win 102–58. A clean sweep, all 3 model picks hit for this match.

_Official AFL match stats · Generated by Alphr's model_

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

- **Head to Head:** GWS GIANTS to win @ $1.45 (edge +7.9%) — model probability 76.9% — result: WON
- **Line / Spread:** GWS GIANTS -14.5 @ $1.91 (edge +7.9%) — result: WON
- **Total (Over/Under):** Under 166.5 @ $1.91 (edge +2.6%) — result: WON
- Predicted margin: GWS GIANTS by 11 · Predicted total: 164

### H2H History (Last 5) — Sydney Swans lead 5-0

| Season | Round | Home | Score | Away |
|---|---|---|---|---|
| 2026 | R20 | GWS GIANTS | 88 – 139 | Sydney Swans |
| 2026 | R6 | Sydney Swans | 107 – 66 | GWS GIANTS |
| 2025 | R8 | Sydney Swans | 87 – 73 | GWS GIANTS |
| 2024 | WF | Sydney Swans | 88 – 82 | GWS GIANTS |
| 2024 | R15 | GWS GIANTS | 75 – 102 | Sydney Swans |

### Positional Matchup

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

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

|  | GWS GIANTS | Sydney Swans |
|---|---|---|
| Attack rank | 2nd (strong) | 16th (weak) |
| Defence rank | 2nd (strong) | 6th (strong) |
| Goals scored · conceded | 193 · 119 | 110 · 137 |
| Goal Assists | 4.4/g | 3.3/g |
| Disposals | 96/g | 100/g |
| Inside 50s | 19.2/g | 16/g |
| Marks Inside 50 | 9.7/g | 7.3/g |
| Disposal Efficiency | 65.6% | 69.4% |

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

|  | GWS GIANTS | Sydney Swans |
|---|---|---|
| Attack rank | 11th | 2nd (strong) |
| Defence rank | 13th (weak) | 15th (weak) |
| Goals scored · conceded | 42 · 57 | 80 · 60 |
| Goal Assists | 3.4/g | 3.5/g |
| Disposals | 140/g | 142/g |
| Inside 50s | 22/g | 24.7/g |
| Marks Inside 50 | 1/g | 3/g |
| Disposal Efficiency | 71.6% | 67.1% |

**Defenders** (Key & Medium Defenders)

|  | GWS GIANTS | Sydney Swans |
|---|---|---|
| Attack rank | 18th (weak) | 10th |
| Defence rank | 9th | 11th |
| Goals scored · conceded | 4 · 19 | 16 · 21 |
| Goal Assists | 1.4/g | 1.3/g |
| Disposals | 133/g | 106/g |
| Inside 50s | 9.8/g | 11.8/g |
| Marks Inside 50 | 0.4/g | 0.6/g |
| Disposal Efficiency | 80.6% | 77.5% |

**Who scores on Sydney Swans** — Rucks 0.62/g (lg 0.51) +22% · Midfielders 2.41/g (lg 2.39) +1% · Forwards 4.31/g (lg 4.42) -2%
**Who scores on GWS GIANTS** — Rucks 0.51/g (lg 0.51) +0% · Defenders 1.22/g (lg 1.27) -4% · Forwards 4.14/g (lg 4.42) -6%

_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 ENGIE 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._

**GWS GIANTS** (team sheet)

| # | Player | Pos | 2025 | Last 10 | vs opp | Venue | Goal % | Alphr play | This game |
|---|---|---|---|---|---|---|---|---|---|
| – | Jesse Hogan | KF | 41 in 13g | 26/10g (2·1·7·1·4·0·2·6·2·1) | 20/12g | 84/26g | 96% | ⚡ Anytime Goal $1.06 AI 91% ✓ Scored; 🎯 First Goal $8.25 AI 9% ✓ Scored first | 🏉 10' |
| – | Aaron Cadman | KF | 33 in 18g | 24/10g (1·1·2·2·1·5·3·2·6·1) | 8/4g | 23/17g | 88% | ⚡ Anytime Goal $1.13 AI 86% ✓ Scored; 🎯 First Goal $11.00 AI 7% ✗ Not first | 🏉 64' 73' 77' |
| – | Toby Greene | FWD | 31 in 17g | 15/10g (0·1·1·3·1·0·2·3·2·2) | 36/23g | 142/84g | 82% | ⚡ Anytime Goal $1.18 AI 77% ✓ Scored | 🏉 82' |
| – | Callum Brown | FWD | 19 in 16g | 17/10g (0·2·3·3·0·3·2·1·1·2) | 4/6g | 29/16g | 64% | ⚡ Anytime Goal $1.41 AI 75% ✗ No goal | — |
| – | Jake Riccardi | KF | 19 in 14g | 14/10g (1·0·3·2·2·0·2·1·1·2) | 4/5g | 31/25g | 80% | ⚡ Anytime Goal $1.35 AI 74% ✗ No goal | — |
| – | Jake Stringer | KF | 18 in 11g | 18/10g (0·2·1·0·3·2·2·1·4·3) | 32/16g | 11/10g | 82% | ⚡ Anytime Goal $1.25 AI 82% ✓ Scored; 🎯 First Goal $13.00 AI 7% ✗ Not first | 🏉 79' 96' 92' |
| – | Darcy Jones | FWD | 15 in 17g | 9/10g (1·2·0·0·1·1·0·2·1·1) | 3/3g | 10/11g | 68% | — | — |
| – | Tom Green | MID | 10 in 17g | 5/10g (1·1·0·1·0·0·1·0·0·1) | 3/11g | 20/35g | 42% | — | 🏉 53' |
| – | Toby Bedford | FWD | 8 in 17g | 3/10g (0·0·0·0·0·0·1·1·1·0) | 2/6g | 11/21g | 34% | — | 🏉 86' 91' |
| – | Xavier O'Halloran | MID | 7 in 17g | 5/10g (1·0·0·0·0·1·0·2·0·1) | 3/9g | 6/23g | 28% | — | — |
| – | Finn Callaghan | MID | 3 in 15g | 1/10g (0·0·0·0·0·0·0·1·0·0) | 0/5g | 4/20g | 10% | — | 🏉 68' |
| – | Josh Kelly | MID | 3 in 13g | 3/10g (0·0·1·0·0·0·0·0·2·0) | 6/22g | 51/75g | 40% | — | — |
| – | Kieren Briggs | RUC | 3 in 14g | 3/10g (0·0·0·0·0·1·1·0·0·1) | 0/5g | 7/22g | 18% | — | — |
| – | Stephen Coniglio | FWD | 3 in 4g | 4/10g (1·0·0·0·0·0·0·3·0·0) | 16/20g | 34/74g | 28% | — | — |
| – | Harry Himmelberg | DEF | 1 in 18g | 1/10g (0·0·0·0·0·1·0·0·0·0) | 19/17g | 58/60g | 4% | — | 🏉 93' |
| – | Sam Taylor | DEF | 1 in 14g | 0/10g (0·0·0·0·0·0·0·0·0·0) | 0/10g | 1/38g | 2% | — | — |
| – | Toby McMullin | DEF | 1 in 9g | 2/10g (1·0·0·0·0·0·0·1·0·0) | 1/3g | 4/9g | 28% | — | — |
| – | Connor Idun | DEF | 0 in 18g | 0/10g (0·0·0·0·0·0·0·0·0·0) | 0/11g | 0/33g | 0% | — | — |
| – | Jack Buckley | DEF | 0 in 18g | 0/10g (0·0·0·0·0·0·0·0·0·0) | 0/7g | 0/27g | 2% | — | — |
| – | Joe Fonti | DEF | 0 in 11g | 0/10g (0·0·0·0·0·0·0·0·0·0) | 0/1g | 0/6g | 0% | — | — |
| – | Lachie Ash | DEF | 0 in 18g | 0/10g (0·0·0·0·0·0·0·0·0·0) | 0/11g | 3/33g | 2% | — | 🏉 95' |
| – | Lachie Whitfield | DEF | 0 in 17g | 0/10g (0·0·0·0·0·0·0·0·0·0) | 8/25g | 30/88g | 0% | — | — |
| – | Ryan Angwin | MID | 0 in 4g | 1/10g (0·0·0·1·0·0·0·0·0·0) | 0/3g | 0/9g | 9% | — | — |

**Sydney Swans** (team sheet)

| # | Player | Pos | 2025 | Last 10 | vs opp | Venue | Goal % | Alphr play | This game |
|---|---|---|---|---|---|---|---|---|---|
| – | Isaac Heeney | MID | 28 in 18g | 20/10g (0·2·3·1·1·2·5·0·1·5) | 29/22g | 7/7g | 76% | ⚡ Anytime Goal $1.21 AI 80% ✓ Scored | 🏉 14' |
| – | Will Hayward | FWD | 24 in 18g | 13/10g (2·1·1·1·1·3·0·1·3·0) | 23/16g | 4/3g | 80% | — | 🏉 33' 45' |
| – | Hayden McLean | KF | 21 in 15g | 12/10g (1·1·1·2·1·1·0·3·1·1) | 11/9g | 6/3g | 80% | — | — |
| – | Chad Warner | MID | 17 in 18g | 8/10g (0·2·1·0·2·0·1·1·0·1) | 5/9g | 3/2g | 68% | — | — |
| – | Braeden Campbell | FWD | 12 in 18g | 6/10g (1·1·1·1·0·1·0·0·0·1) | 2/7g | 0/2g | 40% | — | — |
| – | James Jordon | MID | 10 in 18g | 7/10g (0·0·0·0·3·0·1·2·1·0) | 6/7g | 1/2g | 36% | — | — |
| – | Nick Blakey | DEF | 8 in 18g | 3/10g (0·0·1·0·0·1·0·1·0·0) | 7/13g | 1/3g | 22% | — | — |
| – | Jake Lloyd | FWD | 7 in 17g | 6/10g (0·0·0·0·0·0·1·2·3·0) | 3/24g | 2/7g | 26% | — | — |
| – | Aaron Francis | KF | 5 in 9g | 5/10g (0·3·0·1·0·0·1·0·0·0) | 2/7g | 1/3g | 22% | — | — |
| – | Angus Sheldrick | MID | 5 in 15g | 2/10g (1·0·0·0·0·0·0·0·1·0) | 1/3g | 0/0g | 27% | — | — |
| – | Brodie Grundy | RUC | 5 in 18g | 5/10g (1·1·0·0·1·0·1·1·0·0) | 6/15g | 3/7g | 24% | — | 🏉 20' |
| – | Jack Buller | KF | 5 in 4g | 5/5g (0·1·0·2·2) | 0/0g | 0/0g | 60% | ⚡ Anytime Goal $1.52 AI 70% ✗ No goal | — |
| – | James Rowbottom | FWD | 5 in 18g | 2/10g (0·0·0·0·0·0·1·0·1·0) | 6/13g | 0/3g | 24% | — | — |
| – | Justin McInerney | MID | 5 in 14g | 5/10g (0·1·1·0·0·1·1·0·0·1) | 3/9g | 1/1g | 36% | — | 🏉 69' |
| – | Errol Gulden | MID | 3 in 5g | 5/10g (0·2·0·0·0·0·0·1·1·1) | 8/10g | 3/2g | 50% | — | — |
| – | Joel Hamling | DEF | 3 in 13g | 3/10g (0·0·1·0·1·1·0·0·0·0) | 1/6g | 0/2g | 12% | — | — |
| – | Tom Papley | FWD | 3 in 6g | 9/10g (0·2·3·1·1·0·0·0·2·0) | 31/19g | 8/5g | 76% | — | 🏉 57' |
| – | Callum Mills | DEF | 1 in 7g | 1/10g (0·0·0·1·0·0·0·0·0·0) | 1/15g | 0/4g | 22% | — | 🏉 47' |
| – | Matt Roberts | MID | 1 in 17g | 0/10g (0·0·0·0·0·0·0·0·0·0) | 0/3g | 0/0g | 6% | — | — |
| – | Dane Rampe | DEF | 0 in 16g | 0/10g (0·0·0·0·0·0·0·0·0·0) | 2/23g | 0/6g | 4% | — | — |
| – | Harry Cunningham | DEF | 0 in 6g | 0/10g (0·0·0·0·0·0·0·0·0·0) | 4/21g | 4/6g | 4% | — | — |
| – | Lewis Melican | DEF | 0 in 12g | 0/10g (0·0·0·0·0·0·0·0·0·0) | 0/11g | 0/2g | 2% | — | — |
| – | Sam Wicks | DEF | 0 in 16g | 0/10g (0·0·0·0·0·0·0·0·0·0) | 3/9g | 1/2g | 22% | — | — |

### 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._

**GWS GIANTS**

| Player | Line | Under | AI Under | Actual |
|---|---|---|---|---|
| Tom Green | 29.5 | $1.90 | 59% | 16 ✓ |
| Lachie Ash | 28.5 | $1.87 | 63% | 13 ✓ |
| Finn Callaghan | 26.5 | $1.83 | 51% | 21 ✓ |
| Lachie Whitfield | 25.5 | $1.91 | 58% | 27 ✗ |
| Josh Kelly | 20.5 | $1.91 | 41% | 7 ✓ |
| Connor Idun | 18.5 | $1.95 | 58% | 17 ✓ |
| Stephen Coniglio | 18.5 | $1.86 | 62% | 19 ✗ |
| Xavier O'Halloran ⚡ Under | 18.5 | $1.87 | 70% | 16 ✓ |

**Sydney Swans**

| Player | Line | Under | AI Under | Actual |
|---|---|---|---|---|
| Errol Gulden ⚡ Under | 24.5 | $1.94 | 65% | 32 ✗ |
| Isaac Heeney ⚡ Under | 24.5 | $1.85 | 65% | 22 ✓ |
| Chad Warner | 22.5 | $1.89 | 56% | 19 ✓ |
| Callum Mills | 22.5 | $1.90 | 54% | 22 ✓ |
| Nick Blakey ⚡ Under | 21.5 | $1.80 | 68% | 21 ✓ |
| Brodie Grundy | 20.5 | $1.94 | 57% | 24 ✗ |
| Justin McInerney | 20.5 | $1.87 | 54% | 13 ✓ |
| Angus Sheldrick | 18.5 | $1.80 | 58% | 12 ✓ |
| Matt Roberts | 18.5 | $1.87 | 47% | 20 ✗ |

**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/2025-r20-gws-giants-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-02-24 11:45 UTC (latest tip update)