Predictions / Football / World. UEFA Champions League / Heart Of Midlothian vs Sturm Graz

Prediction Audit: Heart Of Midlothian vs Sturm Graz Prediction, Odds & AI Betting Tips

Jul 28, 2026 - 18:45
0 1.38
2 1.22
xG Accuracy: 55%

The model missed the final outcome (Sturm Graz win 0–2).

The model had projected Heart Of Midlothian at 43.7%, but the full-time result went the other way.

Tracked markets vs full-time result

Prediction grade F

Each row compares the pre-match model lean to the full-time result.

  • Market Prediction Result Outcome
  • Over / Under 2.5 Under 2.5 Under 2.5 (2 goals) ✔ Correct
  • Both Teams To Score BTTS Yes No ✖ Incorrect
  • 1X2 Heart Of Midlothian Sturm Graz ✖ Incorrect
  • Correct Score Insights 1-1, 1-0, 0-1, 2-1, 1-2 0-2 ✖ Incorrect

Model vs Closing Market

Moderate Disagreement

The closing market prices Heart Of Midlothian higher than the statistical model.

Largest probability gap: Heart Of Midlothian -5.3 pp

Outcome Model Closing Market Difference Signal
Heart Of Midlothian 43.7% 49.0% -5.3 pp Market Higher
Draw 27.2% 24.7% +2.5 pp Aligned
Sturm Graz 29.1% 26.3% +2.8 pp Aligned

The closing market estimates Heart Of Midlothian's win probability at 49.0%, compared with the model's estimate of 43.7%, a difference of 5.3 percentage points. This highlights a disagreement between the model and market consensus, without indicating which view is ultimately correct.

Model probabilities are generated from the statistical xG model using a Poisson distribution. Closing market probabilities are derived from consensus closing 1X2 odds after margin removal. Values represent implied probabilities rather than betting recommendations. Closing snapshot: PRE1.

After full time, the result was Sturm Graz win 0–2.

Market Assessment

The market and model broadly agree on Heart Of Midlothian. The remaining divergence may reflect differences in team-strength assumptions rather than a directional disagreement.

  • Monitor line movement before kickoff — not a betting recommendation.

Post Match Insights

What worked

  • Under 2.5 goals aligned with the xG profile

What failed

  • Both Teams To Score: model leaned BTTS Yes; match finished BTTS No
  • 1X2: model leaned Heart Of Midlothian; match finished Sturm Graz

Market lesson

The closing market differed from the model on Heart Of Midlothian by 5.3 percentage points (49.0% vs model 43.7%) — in this case the market view proved closer.

Premium betting site stake: New users can use the promo code FHn2uDc1 to receive $100 cash.

Prediction Timeline

How this prediction moved from forecast to full-time review.

  1. Jul 28, 2026 · 19:33 UTC Forecast generated
    • Model 1X2 · Heart Of Midlothian 43.6% · Draw 27.2% · Sturm Graz 29.1%
    • xG · Heart Of Midlothian 1.38 — Sturm Graz 1.22
  2. Jul 28, 2026 · 18:15 UTC Opening odds snapshot PRE30
    • 1X2 odds · Heart Of Midlothian 1.88 · Draw 3.72 · Sturm Graz 3.50
    • Implied 1X2 · Heart Of Midlothian 49.0% · Draw 24.7% · Sturm Graz 26.3%
    • Bookmaker · Pinnacle
  3. Jul 28, 2026 · 18:45 UTC Closing snapshot recorded PRE1
    • 1X2 odds · Heart Of Midlothian 1.88 · Draw 3.72 · Sturm Graz 3.50
    • Implied 1X2 · Heart Of Midlothian 49.0% · Draw 24.7% · Sturm Graz 26.3%
    • Bookmaker · Pinnacle
  4. Jul 28, 2026 · 18:45 UTC Kickoff
  5. FT Full-time result Sturm Graz win · 0–2
  6. FT Prediction missed 1X2 lean did not match full-time result
  7. Archived Prediction review

Historical Snapshot

Frozen at kickoff — the model output as it stood before the match started.

Historical verdict: Observe
Historical Decision No Primary Bet
Outcome Missed
Pre-match metrics (historical context)
Prediction Reliability 76/100 · High
  • Validation: Pass
Evidence ★★★★★
  • No strong statistical edge
  • Direction agrees with model lean
  • Validation passed
Market Compatibility 73/100
Betting Confidence 79/100

Validation Report

Immutable Snapshot

Prediction Time: Jul 23, 2026 · 14:02 UTC Snapshot ID: dp-1455183

Closing Odds 1.88
AI Fair Odds —
CLV Pending
Final Result Sturm Graz win · Heart Of Midlothian 0–2 Sturm Graz
Prediction ✖ Missed
Decision Grade F

Model Performance

This prediction contributes to:

  • Primary Bets ROI (180d): -100.0%

Review FAQ

How accurate was the prediction?
This page grades directional markets (1X2, Over/Under 2.5, BTTS) against the full-time result. The prediction grade reflects how many of those tracked markets matched reality.
What does xG Accuracy measure?
xG Accuracy compares the model's pre-match expected-goals profile to the actual scoreline — not whether every market hit. A strong directional review can coexist with a moderate xG accuracy score.
Why wasn't the exact score predicted?
Correct-score outcomes are low-probability tails even when the model reads the match profile well. We highlight top score bins for context; missing the exact line does not invalidate a directional review.
Does this improve the AI record?
Each finished match is logged in our validation pipeline. Aggregated hit rates and CLV studies are published separately — this page is the per-match audit trail.

Predictions are for informational purposes only. Always gamble responsibly and within your limits. Past performance does not guarantee future results.

AI match briefing

AI Match Summary

Pre-match snapshot for this fixture.

  • League: UEFA Champions League
  • Fixture: Heart Of Midlothian vs Sturm Graz
  • Kickoff: 2026-07-28 18:45:00
  • 1X2 (model): Home 43.6% · Draw 27.2% · Away 29.1%
  • xG (showing): Heart Of Midlothian 1.38 — Sturm Graz 1.22 (total xG ≈ 2.6)
  • Value headline: None — no positive EV on tracked lines at current best prices (same as the decision block: no default bet).
  • Structural leans (not bets): Structural lean (model): O/U 2.5 Under 2.5 (Under 2.5 51.8% · Over 2.5 48.2%); BTTS Yes (Yes 54.4% · No 45.6%) Value lean (pricing): O/U 2.5 Under 2.5; BTTS Yes
  • BTTS (model): Yes 54.4% · No 45.6%
  • Correct score (top bin): 1-1 (12.5%)

The decision block shows no default Primary: Primary needs consensus EV ≥ +5.0% plus strength/reliability/calibration gates. A separate Lean/tracked gate is +2.0% (selective only). Lean labels are directional only — not bankroll-sized recommendations.

Most likely correct score stays a low-probability tail: use it for context, not as a must-bet story.

Historical Recommendation

Historical Decision: No Primary Bet

Outcome: Missed — Pre-match 1X2 lean did not match the full-time result.

Risk Factors Considered Before Kickoff

  • Price movement: implied probabilities and EV move with odds.
  • Sample / data gaps: low-information leagues widen forecast bands.
  • In-play state: goals and red cards are not modelled here.
  • Scoreline variance: the most likely scoreline is still usually a low absolute probability outcome (often well below 20%).

Last Updated

September 29, 2026 (UTC)

Get Premium Predictions for Heart Of Midlothian & Sturm Graz!

Unlock in-depth analysis, exclusive betting tips, and match forecasts with our premium subscription service.

Subscribe Now
Back to Predictions
UEFA Champions League UEFA Champions League — Standings
# TEAM MP W D L PTS
1 Paris Saint Germain 1 1 0 0 3
2 Bayern München 1 1 0 0 3
3 Barcelona 1 1 0 0 3
4 Manchester United 1 1 0 0 3
5 Como 1 1 0 0 3
6 VfB Stuttgart 1 1 0 0 3
7 Sporting CP 1 1 0 0 3
8 Manchester City 1 1 0 0 3
9 Aston Villa 1 1 0 0 3
10 Lens 1 1 0 0 3
11 Real Betis 1 1 0 0 3
12 Borussia Dortmund 1 1 0 0 3
13 Liverpool 1 1 0 0 3
14 Real Madrid 1 1 0 0 3
15 Arsenal 1 1 0 0 3
16 AEK Athens FC 1 1 0 0 3
17 AS Roma 1 0 1 0 1
18 Shakhtar Donetsk 1 0 1 0 1
19 PSV Eindhoven 1 0 1 0 1
20 Fenerbahce 1 0 1 0 1
21 Villarreal 1 0 0 1 0
22 Lille 1 0 0 1 0
23 Slavia Praha 1 0 0 1 0
24 Club Brugge KV 1 0 0 1 0
25 Inter 1 0 0 1 0
26 Atletico Madrid 1 0 0 1 0
27 Napoli 1 0 0 1 0
28 Lask Linz 1 0 0 1 0
29 Viking 1 0 0 1 0
30 Galatasaray 1 0 0 1 0
31 FC Porto 1 0 0 1 0
32 RB Leipzig 1 0 0 1 0
33 Feyenoord 1 0 0 1 0
34 Sabah FA 1 0 0 1 0
35 Slovan Bratislava 1 0 0 1 0
36 Bodo/Glimt 1 0 0 1 0
# TEAM MP GS GC +/- PTS
1 Paris Saint Germain 1 6 1 +5 3
2 Bayern München 1 5 0 +5 3
3 Barcelona 1 5 1 +4 3
4 Manchester United 1 4 0 +4 3
5 Como 1 4 1 +3 3
6 VfB Stuttgart 1 3 1 +2 3
7 Sporting CP 1 3 1 +2 3
8 Aston Villa 1 3 2 +1 3
9 Lens 1 3 2 +1 3
10 Real Betis 1 3 2 +1 3
11 Borussia Dortmund 1 3 2 +1 3
12 Manchester City 1 2 0 +2 3
13 Liverpool 1 2 1 +1 3
14 Real Madrid 1 2 1 +1 3
15 Villarreal 1 2 3 -1 0
16 Lille 1 2 3 -1 0
17 Slavia Praha 1 2 3 -1 0
18 Club Brugge KV 1 2 3 -1 0
19 Arsenal 1 1 0 +1 3
20 AEK Athens FC 1 1 0 +1 3
21 AS Roma 1 1 1 0 1
22 Shakhtar Donetsk 1 1 1 0 1
23 PSV Eindhoven 1 1 1 0 1
24 Fenerbahce 1 1 1 0 1
25 Inter 1 1 2 -1 0
26 Atletico Madrid 1 1 2 -1 0
27 Viking 1 1 3 -2 0
28 Galatasaray 1 1 3 -2 0
29 RB Leipzig 1 1 4 -3 0
30 Feyenoord 1 1 5 -4 0
31 Slovan Bratislava 1 1 6 -5 0
32 Napoli 1 0 1 -1 0
33 Lask Linz 1 0 1 -1 0
34 FC Porto 1 0 2 -2 0
35 Sabah FA 1 0 4 -4 0
36 Bodo/Glimt 1 0 5 -5 0
# TEAM MP xG xGC +/- PTS
1 Manchester City 1 2.3 0.3 +2.0 3
2 Aston Villa 1 3.2 1.5 +1.7 3
3 Borussia Dortmund 1 2.8 1.3 +1.5 3
4 Real Madrid 1 2.9 1.8 +1.1 3
5 Real Betis 1 1.8 0.8 +1.0 3
6 AEK Athens FC 1 1.7 0.7 +1.0 3
7 Liverpool 1 1.6 0.9 +0.7 3
8 Sporting CP 1 1.8 1.2 +0.6 3
9 Galatasaray 1 1.2 1.8 -0.6 0
10 Atletico Madrid 1 0.9 1.6 -0.7 0
11 Lille 1 0.8 1.8 -1.0 0
12 Lask Linz 1 0.7 1.7 -1.0 0
13 Inter 1 1.8 2.9 -1.1 0
14 Villarreal 1 1.3 2.8 -1.5 0
15 Club Brugge KV 1 1.5 3.2 -1.7 0
16 FC Porto 1 0.3 2.3 -2.0 0
17 Paris Saint Germain 1 — — — 3
18 Bayern München 1 — — — 3
19 Barcelona 1 — — — 3
20 Manchester United 1 — — — 3
21 Como 1 — — — 3
22 VfB Stuttgart 1 — — — 3
23 Lens 1 — — — 3
24 Arsenal 1 — — — 3
25 AS Roma 1 — — — 1
26 Shakhtar Donetsk 1 — — — 1
27 PSV Eindhoven 1 — — — 1
28 Fenerbahce 1 — — — 1
29 Slavia Praha 1 — — — 0
30 Napoli 1 — — — 0
31 Viking 1 — — — 0
32 RB Leipzig 1 — — — 0
33 Feyenoord 1 — — — 0
34 Sabah FA 1 — — — 0
35 Slovan Bratislava 1 — — — 0
36 Bodo/Glimt 1 — — — 0