TENNISEDGE.GG

S. Zhang vs J. Ostapenko — Prediction & Analysis

Toronto · WTA Toronto - 1/32-finals · Aug. 4, 2026 · 19:30 UTC

TennisEdge's AI model finds no betting value in S. Zhang vs J. Ostapenko (Toronto on 2026-08-04) — the market is efficient, with J. Ostapenko favoured at 1.30.

Surface hard Odds S. Zhang 3.45 · J. Ostapenko 1.30

Verdict: no bet

The model found no value at current prices — the market has this one priced about right. That verdict is part of the public record too.
Profiles: S. Zhang · J. Ostapenko · head-to-head record · Toronto

Model probabilities

Independent estimates of who wins, each from a different method. The blend is what the bot prices against the market.

Method S. Zhang J. Ostapenko
Elo
ratings-based, surface-weighted
44.3% 55.7%
Machine learning
29-feature gradient-boosted model
32.1% 67.9%
Serve / return
point-by-point simulation
68.0% 32.0%
Blend
what the bot actually prices off
42.0% 58.0%
Market implied
de-vigged from the opening odds
27.4% 72.6%

We publish how well these score against the closing market, including where they lose: how accurate are tennis predictions?

Elo ratings

PlayerSurfaceEloRecordMatches
S. Zhang hard1727 111–88199
J. Ostapenko hard1767 88–73161

Our own ratings, computed from match results since 2018. Players with fewer than 5 rated matches are omitted rather than shown at a provisional starting value. Last updated Aug. 3, 2026.

Recent form

S. Zhang

W Y. Putintseva 0 - 2 Aug. 3, 2026
L G. Knutson 1 - 2 July 25, 2026
L K. Muchova 2 - 0 July 1, 2026
W B. Andreescu 0 - 2 June 29, 2026
L G. Ruse 0 - 2 June 20, 2026

J. Ostapenko

L A. Sabalenka 2 - 0 July 3, 2026
W A. Ruzic 2 - 0 July 1, 2026
W H. Dart 2 - 1 June 29, 2026
L T. Maria 1 - 0 June 26, 2026
W Z. Sonmez 2 - 0 June 25, 2026

All Aug. 4, 2026 results & picks →

Full analysis

S. Zhang (A) vs J. Ostapenko (B) — WTA Toronto, hard, 1/32-finals

═══ MODELS vs MARKET ═══
ELO       : Zhang 44.3%
ML        : Zhang 32.1%
Blend     : Zhang 42.0%
Book quote: A 3.45 / B 1.30  → implied Zhang 29.0%  (STALE — see market choice)
Betfair ML: A 2.62 / B 1.43  → raw implied Zhang 38.2%, devigged 35.3%
Commission-adjusted executable A = 1 + 1.62 x 0.95 = 2.539 → 39.4%
Blend edge vs executable = 42.0 − 39.4 = +2.6%. ELO alone +4.9%; ML alone −7.3%.
Models split hard, and the only model that likes Zhang is the one the exchange
has already largely caught up with.

═══ RECENT FORM (max 5 shown per player) ═══
S. Zhang (37, rank 79):
  08-03 Toronto R64  W vs Y. Putintseva (1767) 6-4 6-1 — DOM over Strong
  07-25 Washington   L vs G. Knutson (1494) 4-6 6-1 1-6 — loss to Weak, 3 sets
  07-01 Wimbledon    L vs K. Muchova (1806) 3-6 2-6
  06-29 Wimbledon    W vs B. Andreescu (1665) 7-6 7-6 — GRIND
  06-20 Bad Homburg  L vs G. Ruse (1721) 5-7 4-6
  Note: the "Final" entries at Berlin/London/Strasbourg are qualifying finals
  (each is followed by a main-draw loss days later) — NOT titles. No let-down spot.
  Shape: MIXED, tilting up. The Putintseva 6-4 6-1 is genuine over-performance vs
  bracket, but it sits directly after a 3-set loss to a 1494 opponent (07-25).
  One dominant result is not a trend; call it STABLE-to-SHARPENING, unconfirmed.

J. Ostapenko (29, rank 36):
  07-03 Wimbledon R16 L vs A. Sabalenka (1926) 4-6 4-6 — narrow loss to Elite, neutral-positive
  07-01 Wimbledon     W vs A. Ruzic (1641) 6-2 6-0 — DOM
  06-29 Wimbledon     W vs H. Dart (1568) 6-3 3-6 6-4 — GRIND
  06-26 Eastbourne SF L vs T. Maria (1804) 6-1 1-2 (truncated — retirement pattern)
  06-25 Eastbourne QF W vs Z. Sonmez (1761) 6-3 6-0 — DOM over Strong
  Shape: STABLE/SHARPENING on grass through early July (two DOMs, competitive vs
  Sabalenka). Then nothing.

═══ PATH & SHARPNESS (Step 1b) ═══
Zhang : 1 match at this venue this week, won it convincingly. Match-sharp,
        conditions-adjusted, on the match surface. Positive.
Ostapenko: last match anywhere 07-03 — 32 days ago. Clear RUST RISK (>21d), and
        her last competitive tennis was on grass → surface transition into hard.
        First match of the North American swing.
This is the real qualitative story: sharp-and-played-in vs rusty-and-cold. It is
also, precisely, the story the exchange has ALREADY priced (below).

═══ FATIGUE (Step 2) ═══
Zhang    : 2 matches/14d, 1/7d, 155 court-min, no back-to-back, played 08-03.
           Yesterday's win was a STRAIGHT-SETS win → no −4.5pp 3-set hangover
           (2-set win ≈ neutral). Age 37 → veteran, recovery hardened one tier,
           so a same-swing quick turnaround is a mild negative, not an edge.
Ostapenko: 0 matches/14d, fully rested — but "rested" here means rusty, not fresh.
Cumulative-minutes gap is trivial and is CONTEXT only, never an edge (Step 2
calibration). No extreme fatigue spot on either side.

═══ NARRATIVE (Step 3) ═══
Let-down  : None. Zhang's recent "Final" wins are qualifying finals, not titles.
Venue     : Zhang 1-0 at Toronto this week. Amplifier only, creates nothing.
Transition: Ostapenko grass → hard. Directional negative for her level.
ELO/rank  : Zhang ELO-implied 44% while ranked 79 vs Ostapenko's 36 — ELO is more
            generous to Zhang than ranking. With a 07-25 loss to a 1494-ELO
            opponent in the window, that ELO is not obviously trustworthy;
            discount it rather than lean on it. ML (32%) sits on the other side.

═══ MARKET CHOICE (Step 4b) ═══
alt_markets: handicap and totals NOT quoted (null); sim margin model null.
AH: not quoted. betfair_ml present and plausible → exchange is the edge baseline.
ML is the only stakeable market here.
The decisive fact: the book has Zhang 3.45 (29.0%) while Betfair has her 2.62
(38.2% raw / 35.3% devigged). That is a ~9-point gap. The exchange has already
moved a long way toward Zhang — it has priced Ostapenko's month-long layoff and
Zhang's R1 win. The brief's headline value_edge of +14.6% is computed against the
STALE book quote and is a mirage: per Pricing Discipline #1 a book price the
exchange contradicts is a stale quote, not value. Measured where we can actually
execute, the edge collapses from +14.6% to +2.6%.

═══ GATES (Step 4a) ═══
GATES
  G1 edge-origin: FAIL — pre-narrative blend edge vs executable 2.62 is +2.6%,
     below even the 3% probe bar (needs eff 2.563 / Betfair ~2.65 at p=0.420).
     The only way to a bettable number is to hand-raise Zhang's probability for
     the rust story — narrative creating edge, which G1 forbids outright.
  G2 consensus:   PASS (stake tier only) — would be lone_signal: ELO-only, with
     ML actively against; capped tier at best. Cannot rescue a failed G1.
  G3 fatal-risk:  PASS (n/a) — ML bet, G3 never blocks; no margin market quoted.

═══ VERDICT: PASS ═══
The qualitative read is real and I like it: Ostapenko 32 days idle, coming off
grass, into a hard court against a 37-year-old who is already played-in at the
venue and beat a 1767 opponent 6-4 6-1 yesterday. That is a legitimate
soft-favourite spot. But it is not MY information — the exchange has repriced
Zhang from 3.45 to 2.62 for exactly these reasons, and at 2.62 the models leave
+2.6% after commission, with ML (−7.3%) arguing the price is if anything already
too short. Buying a story the market has finished paying for is how a
14%-on-paper edge becomes a 2.6% real one. No stake.
What would change this: Zhang drifting back to 2.65+ on the exchange (the probe
threshold), or confirmed news on Ostapenko's fitness after the Eastbourne
retirement pattern — neither is in hand now.