# Storm v Sharks — NRL Round 17 2025 AI Prediction by Alphr

## Full Time: Storm 30 – 6 Sharks

_Storm blow away Sharks._

Half time: 10 – 6 · Alphr AI pre-game win probability: Storm 75% / Sharks 25% · AAMI Park, Melbourne · Sun, 29 June, 02:00 pm AEST

**Try Scorers** — Storm: Eliesa Katoa (6' 1st), Sualauvi Faalogo (26' Tipped ⚡), Nick Meaney (64'), Jahrome Hughes (72' Tipped ⚡), Trent Loiero (79') · Sharks: Braydon Trindall (34')

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

| Team | Pre-game AI win probability | Result |
|---|---|---|
| Storm | 75% | Won |
| Sharks | 25% | Lost |

Model call: **Correct** · Margin: 8.1 predicted → 24 actual · Markets hit: 3/3

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

### Full-Time Report

**Melbourne Storm vs Cronulla Sharks Prediction & Tips | NRL Round 17 2025**

_By Ben Dunlop · Published: 28 Feb 2026, 07:36 pm · Last updated: 24 July 2026, 12:42 pm_

Storm 30–6 Sharks in NRL Round 17 at AAMI Park, Melbourne. Here's how the result stacked up against the model's call, with the win-probability story and where the value landed.

Alphr's model had this one right in outline, wrong in detail. Storm at 75% to win, tipped by 8.1 points. Storm did win, comfortably, but by 24, not 8. Final score 30-6 at AAMI Park. The shape of the picture was there. The scale wasn't.

Where it started to unravel for that margin was the scoreboard at the break. Storm led 10-6 at half-time, Eliesa Katoa opening things up in the 5th minute and Sualauvi Faalogo following in the 26th, before Braydon Trindall got one back for the Sharks in the 33rd. Four points in it at the break. Nothing in that scoreline said blowout.

Then the second half happened. Nick Meaney crossed in the 64th, Jahrome Hughes in the 72nd, Trent Loiero in the 78th. Three tries, six points conceded in reply, and a four-point half-time gap turned into 24 by full-time. That's not a team that pulled away gradually. That's a team that had the Sharks' resistance run out all at once.

The stat sheet backs up why. Storm ran 1,793 metres to 1,284, and made 567 post-contact metres to the Sharks' 431. That's a forward pack winning the collision battle, which is notable given the pre-match ratings actually had Sharks forwards rated higher, 1118 to 1109. On paper that was meant to be a Sharks strength. On the day, it was Storm doing the damage after contact.

Where the ratings did line up was the halves and hooker read. Storm's halves were rated at 1220 to the Sharks' 1183, and Jahrome Hughes turned that into a try and a hand in the shape of the attack. Storm's completion rate of 89% against the Sharks' 79% tells the same story from a different angle: fewer errors, more sets, more chances to apply pressure. Storm coughed the ball up 8 times to 11.

Oddly, the Sharks were the more accurate defensive side by one measure, an effective tackle rate of 91.1% to Storm's 90.6%, and they missed fewer tackles too, 26 to Storm's 21 in Storm's favour actually, so credit where it's due there. But Storm's line breaks, 2 to 1, and tackle breaks, 26 to 21, meant they made more of the ball they had.

For the Sharks, this continues a form slide that was already visible coming in: two wins from five, an average losing margin of 9 points, conceding 32 a game. None of that improved here. Trindall's try in the 33rd minute was their one moment of real reward, and it briefly had the margin at four. It didn't hold.

For the model, this was a coverage win and a total win but a margin miss. Storm covered the 9.5-point line comfortably, and the under on 48.5 landed too. Getting the winner right at 75% and picking the shape of a low-scoring arm wrestle that opened up isn't nothing. But an 8.1-point prediction against a 24-point actual margin is the kind of gap that needs owning, not glossing over. Wins and misses, all of it.

**Scoring by Half**

| Team | H1 | H2 | T |
|---|---|---|---|
| Storm | 10 | 20 | 30 |
| Sharks | 6 | 0 | 6 |

**Key Match Stats**

| Storm | Stat | Sharks |
|---|---|---|
| **55%** | Possession | 45% |
| **89%** | Completion rate | 79% |
| **1,793** | Run metres | 1,284 |
| **567** | Post-contact metres | 431 |
| **2** | Line breaks | 1 |
| **26** | Tackle breaks | 21 |
| **9** | Offloads | 7 |
| 90.6% | Effective tackle % | **91.1%** |
| **21** | Missed tackles | 26 |
| **8** | Errors | 11 |
| 5 | Penalties conceded | **4** |
| **860** | Kick metres | 808 |

**Model Report Card**

Our model correctly predicted Storm to win at 75% probability. The margin model missed here, predicting 8.1 but the actual margin was 24 points. Storm led 10–6 at the break and pulled away in the second half to win by 24. The model went 5/16 on this match. Storm covered the 9.5-point line. The under 48.5 total call was correct.

**Referee Watch**

Ashley Klein officiated this match (422 career games). The combined score of 36 points was 7 points below Ashley Klein's career average of 43. Storm's victory aligns with Ashley Klein's historical trend, Storm have a 60% win rate under this referee. Storm's home victory fits Ashley Klein's profile, home teams win 60% of the time under this referee.

**Key moments (momentum model)**

- 5' Try — Eliesa Katoa (Storm) — 4-0 · win-prob swing +2 pts
- 26' Try — Sualauvi Faalogo (Storm) — 10-0 · win-prob swing +3 pts
- 33' Try — Braydon Trindall (Sharks) — 10-4 · win-prob swing -3 pts
- 64' Try — Nick Meaney (Storm) — 16-6 · win-prob swing +4 pts
- 72' Try — Jahrome Hughes (Storm) — 22-6 · win-prob swing +2 pts
- 78' Try — Trent Loiero (Storm) — 28-6 · win-prob swing +1 pts

_Official NRL match stats · Generated by Alphr's model_

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

- **Head to Head:** Storm to win @ $1.33 (edge -2.1%) — model probability 75.4% — result: WON
- **Line / Spread:** Storm -9.5 @ $1.91 (edge -2.1%) — result: WON
- **Total (Over/Under):** Under 48.5 @ $1.91 (edge +15.8%) — result: WON
- Predicted margin: Storm by 8 · Predicted total: 43

### Match Preview (pre-match read)

The model is firm on Storm here: 75% to see off Sharks. The heaviest factor is the ratings gap: Storm sit 173 ELO points clear, 1669 to 1496. Form leans Storm's way: 4 from their last 5, against 2 for Sharks.

Storm own the matchup too, leading 6 of 7 factors including ELO Difference, Backline Quality and Halves Control. The margin model has Storm by 8.1, with the two sides combining for about 43. Storm to win, and win clearly. The model isn't hedging.

Storm have won 7 of the last 10 between these two, and Storm took the most recent meeting 24-20 in 2026 Round 27.

Storm have won 3 games this season after trailing at half-time.

On the ladder it's Storm 3rd against Sharks 6th.

**By the numbers**

|  |  |
|---|---|
| H2H (last 10) | Storm 7 · Sharks 3 |
| Last meeting | Storm 24-20 |
| Storm last 4 | LWWL · 84 for, 88 against |
| Storm at home | 11-4 this season |
| Sharks last 4 | WWWL · 90 for, 50 against |
| Sharks away | 6-8 this season |
| Ladder | Storm 3rd · Sharks 6th |
| Finals odds | Both locked into the eight |

_Pre-match read · Alphr model_

### Referee Indicator — Favours Storm

**Ashley Klein** — 422 career games since 2010.

| Team | Record under Ashley Klein | Win rate |
|---|---|---|
| Storm | 41W–27L | 60% |
| Sharks | 26W–34L | 43% |

Avg total: 43.4 pts · Home win %: 60% · Home bias: Leans home

When Ashley Klein officiates, Storm have won 41 of 68 games (60%), significantly stronger than Sharks's 26 from 60 (43%). Home teams win 60% of his matches (vs ~52% league avg).

### Recent Form (Last 5)

| Storm | Stat | Sharks |
|---|---|---|
| 4.0 | Wins (Last 5) | 2.0 |
| 36.2pts | Avg Score | 23.0pts |
| 17.0pts | Avg Conceded | 32.0pts |
| 19.2pts | Avg Margin | -9.0pts |
| 1836.4m | Run Metres | 1678.4m |
| 5.2 | Line Breaks | 5.6 |
| 314.4 | Tackles | 340.0 |
| 12.0 | Errors | 10.4 |

### Form & History

| Team | Last 5 | Avg Pts |
|---|---|---|
| Storm | 4W–1L | 36.2 |
| Sharks | 2W–3L | 23.0 |

### H2H History (Last 5) — Storm lead 3-2

| Season | Round | Home | Score | Away |
|---|---|---|---|---|
| 2026 | R27 | Sharks | 20 – 24 | Storm |
| 2025 | PF | Storm | 22 – 14 | Sharks |
| 2025 | R11 | Sharks | 31 – 26 | Storm |
| 2024 | FW1 | Storm | 37 – 10 | Sharks |
| 2024 | R10 | Storm | 18 – 25 | Sharks |

### Positional Matchup

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

**Field Matchup** — where one team attacks vs where the other concedes:
- Storm's best path is the middle: NRL's 1st-ranked middle attack (2.77 tries/game) runs at a Sharks defence ranked 8th there (1.47 conceded/game). Key man: Papenhuyzen, 12 tries in that channel this season.
- Sharks' best path is the left edge: NRL's 1st-ranked left edge attack (1.87 tries/game) runs at a Storm defence ranked 9th there (1.15 conceded/game). Key man: Nikora, 7 tries in that channel this season.

| Channel | Storm | Sharks |
|---|---|---|
| Left | 1.38/g (att 6th (strong)) · concedes 1.15/g (def 9th) | 1.87/g (att 1st (strong)) · concedes 1.27/g (def 11th) |
| Middle | 2.77/g (att 1st (strong)) · concedes 1.15/g (def 4th (strong)) | 1.6/g (att 8th) · concedes 1.47/g (def 8th) |
| Right | 1.31/g (att 4th (strong)) · concedes 1.15/g (def 12th) | 0.8/g (att 15th (weak)) · concedes 1.2/g (def 13th (weak)) |

**Attack Spine** (Halfback · Five-Eighth · Hooker)

|  | Storm | Sharks |
|---|---|---|
| Attack rank | 3rd (strong) | 12th |
| Defence rank | 1st (strong) | 13th (weak) |
| Tries scored · conceded | 11 · 2 | 7 · 12 |
| Try Assists | 2.3/g | 2.1/g |
| Run Metres | 234m/g | 176m/g |
| Tackle Breaks | 5.3/g | 2.5/g |
| Line Breaks | 1.1/g | 0.4/g |
| Tackle Efficiency | 84.6% | 86.1% |

**Outside Backs** (Fullback · Wingers · Centres)

|  | Storm | Sharks |
|---|---|---|
| Attack rank | 1st (strong) | 5th (strong) |
| Defence rank | 14th (weak) | 7th |
| Tries scored · conceded | 43 · 35 | 38 · 33 |
| Try Assists | 1.8/g | 0.9/g |
| Run Metres | 690m/g | 724m/g |
| Tackle Breaks | 13.8/g | 16.8/g |
| Line Breaks | 3.5/g | 2.9/g |
| Tackle Efficiency | 78.3% | 80.6% |

**Forwards** (Props · 2nd Rows · Lock)

|  | Storm | Sharks |
|---|---|---|
| Attack rank | 4th (strong) | 3rd (strong) |
| Defence rank | 1st (strong) | 8th |
| Tries scored · conceded | 12 · 1 | 16 · 9 |
| Try Assists | 0.4/g | 0.3/g |
| Run Metres | 552m/g | 541m/g |
| Tackle Breaks | 8.9/g | 9.4/g |
| Line Breaks | 0.8/g | 1.3/g |
| Tackle Efficiency | 91.3% | 90.1% |

**Who scores on Sharks** — Hookers 0.19/g (lg 0.14) +36% · Locks 0.13/g (lg 0.1) +30% · Centres 0.76/g (lg 0.67) +13%
**Who scores on Storm** — Wingers 1.34/g (lg 1.25) +7% · Centres 0.66/g (lg 0.67) -1% · Locks 0.07/g (lg 0.1) -30%

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

### Try Scorer History — Who Crosses The Line

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

**Storm** (team sheet)

| # | Player | Pos | 2025 | Last 10 | vs opp | Venue | Try % | Alphr play | This game |
|---|---|---|---|---|---|---|---|---|---|
| 1 | Ryan Papenhuyzen | FB | 12 in 13g | 8/10g (1·0·1·1·1·4·0·0·0·0) | 5/8g | 37/41g | 52% | ⚡ Anytime Try $1.70 AI 65% ✗ No try; 🎯 First Try $7.50 AI 6% ✗ Not first | — |
| 2 | Sualauvi Faalogo | WG | 3 in 7g | 5/10g (2·0·0·0·0·1·0·0·2·0) | 0/2g | 3/8g | 32% | ⚡ Anytime Try $1.85 AI 51% ✓ Scored | 🏉 26' |
| 3 | Grant Anderson | CE | 10 in 13g | 9/10g (3·1·0·0·1·0·1·2·0·1) | 1/4g | 5/19g | 42% | ⚡ Anytime Try $2.60 AI 65% ✗ No try; 🎯 First Try $13.00 AI 6% ✗ Not first | — |
| 4 | Nick Meaney | CE | 4 in 9g | 4/10g (0·1·0·0·0·1·1·0·1·0) | 4/10g | 18/38g | 26% | — | 🏉 64' |
| 5 | Xavier Coates | WG | 10 in 11g | 8/10g (1·0·0·2·1·1·0·0·3·0) | 7/7g | 35/33g | 50% | ⚡ Anytime Try $1.71 AI 64% ✗ No try; 🎯 First Try $8.50 AI 6% ✗ Not first | — |
| 6 | Cameron Munster | 5/8 | 2 in 13g | 2/10g (1·0·0·0·0·1·0·0·0·0) | 4/17g | 34/94g | 20% | — | — |
| 7 | Jahrome Hughes | HB | 5 in 12g | 4/10g (0·0·0·0·0·1·0·0·2·1) | 2/11g | 29/65g | 32% | ⚡ Anytime Try $3.00 AI 57% ✓ Scored | 🏉 72' |
| 8 | Stefano Utoikamanu | INT | 1 in 13g | 1/10g (1·0·0·0·0·0·0·0·0·0) | 0/5g | 0/7g | 10% | — | — |
| 9 | Harry Grant | HK | 3 in 8g | 4/10g (0·1·1·0·0·0·1·0·0·1) | 7/8g | 17/41g | 34% | — | — |
| 10 | Josh King | PR | 3 in 13g | 2/10g (0·1·0·0·0·1·0·0·0·0) | 2/12g | 7/40g | 16% | — | — |
| 11 | Shawn Blore | 2R | 1 in 13g | 1/10g (0·1·0·0·0·0·0·0·0·0) | 1/5g | 3/18g | 8% | — | — |
| 12 | Eliesa Katoa | 2R | 5 in 13g | 3/10g (0·0·0·1·0·1·0·0·1·0) | 1/8g | 11/28g | 36% | — | 🏉 6' |
| 13 | Trent Loiero | LK | 1 in 13g | 1/10g (0·1·0·0·0·0·0·0·0·0) | 0/6g | 3/40g | 4% | — | 🏉 79' |
| 14 | Tyran Wishart | INT | 5 in 13g | 4/10g (0·0·0·1·0·0·0·1·1·1) | 1/6g | 9/34g | 38% | ⚡ Anytime Try $3.70 AI 48% ✗ No try | — |
| 15 | Alec MacDonald | INT | 0 in 10g | 0/10g (0·0·0·0·0·0·0·0·0·0) | 1/4g | 1/26g | 4% | — | — |
| 16 | Tui Kamikamica | INT | 0 in 11g | 0/10g (0·0·0·0·0·0·0·0·0·0) | 3/9g | 5/46g | 2% | — | — |
| 17 | Nelson Asofa-Solomona | PR | 2 in 6g | 3/10g (1·0·0·0·0·1·0·0·1·0) | 0/15g | 14/88g | 18% | — | — |

**Sharks** (team sheet)

| # | Player | Pos | 2025 | Last 10 | vs opp | Venue | Try % | Alphr play | This game |
|---|---|---|---|---|---|---|---|---|---|
| 1 | William Kennedy | FB | 6 in 15g | 5/10g (1·1·1·0·0·0·0·0·0·2) | 0/9g | 0/5g | 28% | — | — |
| 2 | Sione Katoa | WG | 2 in 3g | 5/10g (0·0·0·1·1·0·1·0·2·0) | 5/7g | 1/3g | 48% | ⚡ Anytime Try $2.18 AI 49% ✗ No try; 🎯 First Try $11.00 AI 8% ✗ Not first | — |
| 3 | Jesse Ramien | CE | 1 in 15g | 0/10g (0·0·0·0·0·0·0·0·0·0) | 4/11g | 1/6g | 14% | — | — |
| 4 | Siosifa Talakai | CE | 1 in 13g | 1/10g (0·0·0·0·0·0·0·0·0·1) | 2/6g | 2/4g | 16% | — | — |
| 5 | Ronaldo Mulitalo | WG | 6 in 14g | 5/10g (0·0·0·1·0·2·1·1·0·0) | 5/7g | 3/4g | 46% | ⚡ Anytime Try $2.25 AI 52% ✗ No try; 🎯 First Try $13.00 AI 9% ✗ Not first | — |
| 6 | Braydon Trindall | 5/8 | 4 in 15g | 3/10g (0·0·0·0·1·0·0·0·2·0) | 0/6g | 0/3g | 32% | — | 🏉 34' |
| 7 | Nicho Hynes | HB | 2 in 15g | 1/10g (0·0·0·0·0·0·0·0·0·1) | 0/4g | 1/7g | 12% | — | — |
| 8 | Addin Fonua-Blake | PR | 4 in 15g | 3/10g (0·1·0·0·1·1·0·0·0·0) | 3/16g | 1/6g | 30% | — | — |
| 9 | Blayke Brailey | HK | 1 in 15g | 1/10g (0·0·0·0·0·0·0·0·0·1) | 1/11g | 0/6g | 10% | — | — |
| 10 | Oregon Kaufusi | PR | 1 in 14g | 1/10g (0·0·1·0·0·0·0·0·0·0) | 1/11g | 1/5g | 8% | — | — |
| 11 | Briton Nikora | 2R | 7 in 15g | 2/10g (0·0·0·1·0·0·0·0·1·0) | 3/9g | 2/5g | 34% | — | — |
| 12 | Teig Wilton | 2R | 1 in 9g | 1/10g (0·0·1·0·0·0·0·0·0·0) | 1/7g | 1/5g | 16% | — | — |
| 13 | Cameron McInnes | LK | 2 in 15g | 2/10g (0·0·0·1·0·0·1·0·0·0) | 2/13g | 0/6g | 12% | — | — |
| 14 | Daniel Atkinson | Replacement | 2 in 15g | 2/10g (0·0·0·0·0·2·0·0·0·0) | 2/4g | 0/3g | 14% | — | — |
| 15 | Jesse Colquhoun | INT | 0 in 8g | 0/10g (0·0·0·0·0·0·0·0·0·0) | 0/2g | 0/0g | 0% | — | — |
| 16 | Toby Rudolf | INT | 0 in 6g | 0/10g (0·0·0·0·0·0·0·0·0·0) | 0/5g | 0/3g | 4% | — | — |
| 17 | Braden Uele | INT | 0 in 10g | 0/10g (0·0·0·0·0·0·0·0·0·0) | 1/10g | 0/5g | 4% | — | — |

### Prediction Breakdown — Pure Alpha Model

**Team ELO Ratings** — Storm 1669 · Sharks 1496 · ELO difference: 173 in favour of Storm

**Positional Matchups** — lineup ELO by unit

| Unit | Storm | Sharks | Edge |
|---|---|---|---|
| Forwards | 1109 (best 1266) | 1118 (best 1267) | Sharks +9 |
| Backs | 974 (best 1122) | 927 (best 1044) | Storm +47 |
| Halves | 1220 (best 1220) | 1183 (best 1183) | Storm +37 |
| Hooker | 1196 | 1203 | Sharks +7 |

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

| # | Factor | Weight | Favours |
|---|---|---|---|
| 1 | ELO Difference | 14.0% | Storm |
| 2 | Forward Pack | 12.0% | — |
| 3 | Backline Quality | 10.0% | Storm |
| 4 | Halves Control | 9.0% | Storm |
| 5 | Recent Win Rate | 9.0% | Storm |
| 6 | Referee Tendency | 7.0% | Storm |
| 7 | Venue Advantage | 7.0% | Storm |

**Model Confidence: 75%** — Storm predicted to win by 8 points · Predicted total: 43 pts

**Record:** 3/3 match 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/nrl/match/2025-r17-storm-v-sharks
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-07-24 02:42 UTC (latest tip update)