TENNISEDGE.GG

D. Vekic vs V. Golubic — Prediction & Analysis

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

TennisEdge's AI model finds no betting value in D. Vekic vs V. Golubic (Toronto on 2026-08-04) — the market is efficient, with D. Vekic favoured at 1.74.

Surface hard Odds D. Vekic 1.74 · V. Golubic 2.18

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: D. Vekic · V. Golubic · 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 D. Vekic V. Golubic
Elo
ratings-based, surface-weighted
46.1% 53.9%
Machine learning
29-feature gradient-boosted model
43.6% 56.4%
Serve / return
point-by-point simulation
37.9% 62.1%
Blend
what the bot actually prices off
46.3% 53.7%
Market implied
de-vigged from the opening odds
55.6% 44.4%

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

Elo ratings

PlayerSurfaceEloRecordMatches
D. Vekic hard1697 72–72144
V. Golubic hard1724 118–68186

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 March 17, 2026.

Head to head

Level at 1–1 over 2 meetings. Full record.

DateEventSurfaceWinnerScore
Sept. 28, 2024WTA BeijinghardD. Vekic2 - 1
June 14, 2023WTA NottinghamgrassV. Golubic2 - 0

Recent form

D. Vekic

L A. Krueger 2 - 1 June 30, 2026
L A. Eala 0 - 2 June 17, 2026
W E. Raducanu 2 - 0 June 14, 2026
W K. Boulter 0 - 2 June 13, 2026
W Ka. Pliskova 1 - 2 June 12, 2026

V. Golubic

W K. Birrell 0 - 2 Aug. 2, 2026
L K. Volynets 2 - 1 July 27, 2026
L J. Paolini 2 - 0 July 2, 2026
W I. Shymanovich 1 - 2 June 30, 2026
L E. Navarro 2 - 0 June 20, 2026

All Aug. 4, 2026 results & picks →

Full analysis

D. Vekic (A) vs V. Golubic (B) — WTA Toronto, hard, 1/32-finals (2026-08-04)

═══ MODELS vs MARKET ═══
  ELO           A 46.1%  |  B 53.9%
  ML            A 43.6%  |  B 56.4%
  Blend         A 46.3%  |  B 53.7%
  Sim (raw)     A 37.9%  |  B 62.1%
  Betfair ML    A 1.80 / B 2.20 -> devigged A 55.0% | B 45.0%
  Pinnacle      A 1.735 / B 2.18, no-vig A 55.7% (fetched 22:55Z 08-03, ~2h old)
  Book quote    A 1.74 / B 2.18 (context only; exchange is the baseline)

Headline: every model favours Golubic (53.9–62.1%), both sharp prices favour Vekic
(55.0–55.7%). A 9–17pp model-vs-market split. Value_pick B, value_edge 9.3%.
Blend B 53.7% vs commission-adj B (2.14) 46.7% = +6.9% raw. That is the bet case —
so the whole match turns on whether the model side survives input validation.

═══ SIM INPUT VALIDATION (Step 4b) — the sim fails it ═══
Baseline inputs: Vekic spw 0.569 / rpw 0.410 / hold 66.4% (45 matches)
                 Golubic spw 0.582 / rpw 0.421 / hold 61.7% (50 matches)
Two red flags on Golubic's serve number:
 1. INTERNAL CONTRADICTION — the sim gives Golubic the HIGHER spw (.582 vs .569) yet
    her own hold% is 4.7pp LOWER (61.7 vs 66.4). A serve input its own hold data
    contradicts is not a usable anchor.
 2. CONTAMINATED WINDOW — ~10 of Golubic's last 20 matches are grass (Ilkley,
    Nottingham title run, Wimbledon), where serve numbers inflate hardest, against a
    1490–1790 field. Vekic's 45-match window is the opposite: deflated by Osaka,
    Krueger (1823), Eala (1832), Raducanu (1838), Boulter (1790). Classic
    opponent-/surface-unadjusted SPW bias, in opposite directions.
Bounded re-run (logged, within +/-0.05 clamp), spw_b 0.582 -> 0.545, evidence above:
    A 57.1% | B 42.9%  (exp margin +0.9 to A, exp games 20.7)
At the max clamp (spw_b 0.532): A 63.8% | B 36.2%.
DECISIVE: a 3.7pp shade on ONE justifiable input swings the match 25pp and flips the
favourite. The sim's 62% for Golubic is not robust — it is the artifact. And the
corrected run lands on 57.1% for Vekic, i.e. essentially ON Betfair (55.0) and
Pinnacle (55.7). The one model that actually conditions on surface point dynamics
agrees with the market once its grass-inflated input is fixed. So "three models
agree against the market" is false; it is really ELO+ML (same recent-form window)
against two sharp prices plus the corrected simulation.

═══ RECENT FORM (5 most recent each) ═══
D. VEKIC (30, rank 89) — last match 2026-06-30, i.e. 35 DAYS AGO
  06-30 Wimbledon (grass) R64  L  A. Krueger 1823 (Strong)  6-3 6-7 4-6  competitive
  06-17 Berlin (grass) R16     L  A. Eala 1832 (Strong)     5-7 4-6      competitive
  06-14 London (grass) FINAL   W  E. Raducanu 1838 (Strong) 6-0 7-6(6)   GRIND, TITLE
  06-13 London (grass) SF      W  K. Boulter 1790 (Strong)  6-1 6-3      DOM vs Strong
  06-12 London (grass) QF      W  Ka. Pliskova 1717 (Strong) 6-4 4-6 6-3 GRIND
  Shape when last seen: SHARPENING (DOM over Boulter 6-1 6-3, title over Raducanu,
  then two narrow losses to Elite-bracket). Then five weeks dark -> shape is STALE,
  not bad. Only 4 matches vs sub-1700 opposition in the whole window: her level was
  being tested at a genuinely higher altitude than Golubic's.

V. GOLUBIC (33, rank 90) — last match 2026-08-02 (2 days), 1 match at this venue
  08-02 Toronto (HARD) R64     W  K. Birrell 1789 (Strong)  7-6 6-4   GRIND vs Strong
  07-27 Memphis-Q (HARD)       L  K. Volynets 1500 (Avg)    5-7 6-2 6-7  UNDER-perf
  07-02 Wimbledon (grass) R32  L  J. Paolini 1774 (Strong)  6-7(0) 4-6 competitive
  06-30 Wimbledon (grass) R64  W  I. Shymanovich 1618 (Avg) 6-2 2-6 6-1 GRIND vs Avg
  06-20 Nottingham (grass) SF  L  E. Navarro 1807 (Strong)  6-7 2-6
  Shape: STABLE at best. Her 2026 HARD-COURT evidence is exactly two matches — a
  3-set loss to a 1500 at a QUALIFYING event 8 days ago (clear under-performance vs
  bracket), and a 7-6 6-4 grind over Birrell. Her strong block (Nottingham title
  06-14, Ilkley) is grass vs 1490–1740 fields — a surface/level-inflated window that
  is feeding both her ELO and the sim's serve number, and does not transfer to
  Toronto hard.

═══ PATH / SHAPE (Step 1b) ═══
  Golubic: match-sharp. 1 match at venue, on surface, beat a Strong opponent 2d ago.
  Vekic:   RUST RISK. 35 days since any match + grass->hard TRANSITION; this is her
           first ball struck at the venue (no R1 fixture exists in the draw feed —
           confirmed against the full Toronto 1/64 pending list). Age 30.
  Match-sharp-beats-rusty is a real, correctly-signed edge for Golubic. But it is
  PUBLIC, DATED information: a post-Wimbledon 5-week break before the US swing is
  standard WTA scheduling, not a hidden injury tell, and the exchange has already
  drifted Vekic 1.74 (book) -> 1.80 (Betfair) pricing exactly this. Market slowness
  is where my edge must come from, and there is nothing slow here.

═══ FATIGUE (Step 2) ═══
  Vekic:   0 matches/14d, 0 min, no last_match_date. "Well rested" = the rust, not a plus.
  Golubic: 2 matches/14d, 6 sets, 212 min, back_to_back 0, last 08-02 (2 days rest).
  No extreme spot on either side. Her last win was in TWO sets (7-6 6-4), so the
  measured -4.5pp 3-set-hangover haircut does NOT apply (and it was 2 days ago, not
  yesterday). Age 33 = slow recovery, but 212 min over 14d is a light load.
  FATIGUE IS A NON-FACTOR BOTH WAYS. It appears nowhere in the reasoning below.

═══ NARRATIVE (Step 3) ═══
  Let-down: none either side (both Finals 51d ago, outside the 0–7d window).
  TITLE: Vekic — London 51d ago (grass). Golubic — Nottingham 51d ago (grass).
         Both stale and both off-surface; neither informs a hard court in August.
  Venue momentum (Toronto, 90d): Vekic 0-0; Golubic 1-0.
  Surface transition: VEKIC (grass -> hard) + 35d layoff. Golubic none (2 hard courts).
  ELO/ranking sanity: ranks 89 vs 90, ELO near-level -> no divergence, ELO credible
  but uninformative. What ranking parity hides is surface-specific quality: Vekic's
  first-strike hard-court profile vs Golubic's grass/clay counterpunching, and a
  52-week rank does not separate them.

═══ MARKET CHOICE ═══
  ML B @ Betfair 2.20 -> commission-adj 2.14 = 46.7% break-even, min_odds 1.05/p.
     blend p 53.7% -> +6.9%  | corrected sim p 42.9% -> -3.8%  | adjudicated 46.5% -> -0.2%
     The edge exists ONLY on the un-validated inputs. Not stakeable.
  ML A @ Betfair 1.80 -> commission-adj 1.76 = 56.8% break-even. My Vekic 53.5% -> -3.3%.
     Backing the rusty favourite is also a negative-edge bet. No side to take.
  HANDICAP: market line_a -1.5 (A 1.89 / B 2.00). B +1.5 @ 2.00 -> eff 1.95 = 51.3% b/e.
     Baseline sim B+1.5 ~67% (+15.7%) but corrected sim B+1.5 48.2% (-3.1%). The cover
     edge swings 19pp on the same one input — pure instability, not value. Margin-rule
     check also fails: a cover thesis needs 2+ margin-specific items, and the only real
     margin input here is Vekic's TRANSITION, which Step 3 says WIDENS margin variance
     in both directions and may not support a tight cover of that opponent. VETOED.
  TOTAL 21.5: under @ 2.00 -> 51.3% b/e. Sim under 51.6% (base) / 52.5% (corrected)
     = +0.3% to +1.2%. Far below the 5% bar. And a rusty player's first match on a new
     surface fattens both tails of the games distribution. PASS.
  AH: B +1.5 @ 2.00 (quoted; passed — not a dog ML >= 3.0, shadow record N/A)
  refutation_check: not run — PASS decisions get no web access per Step 4c.

═══ GATES (Step 4a) ═══
GATES
  G1 edge-origin: FAIL — the +6.9% is blend-vs-exchange, but it does not survive input
     validation: correcting the sim's internally-contradicted, grass-inflated Golubic
     SPW (justified, within clamp) moves B to 42.9% and the coherent distribution to
     -3.8%. Adjudicated B 46.5% vs 46.7% executable = -0.2%. No robust 5% edge exists
     before OR after narrative, so nothing is stakeable.
  G2 consensus:   TIER-ONLY (never fails) — would have been capped 0.5–1.0u anyway:
     the supporting ELO/ML share one grass-contaminated window, and the live
     this-event evidence (Memphis 3-set loss to a 1500) cuts against the pick.
  G3 fatal-risk:  N/A for ML (never blocks); HARD VETO applied to the handicap, whose
     cover thesis rests on a transition that widens margins in both directions.

═══ VERDICT: PASS ═══
The tempting bet is Golubic 2.20: three models on her, she is match-sharp with a win
over a 1789 on this surface two days ago, and Vekic is 35 days cold and switching off
grass. I am passing because the numeric edge is an artifact and the qualitative edge is
already in the price. The sim's 62% collapses to 43% on a 3.7pp correction to a serve
number its own hold% contradicts and that was built on grass — and the corrected number
lands on Betfair and Pinnacle, which agree with each other to within 0.7pp. Strip that
out and my support is ELO+ML off the same inflated window, against Golubic's actual
hard-court record this year: a three-set loss to a 1500-ELO player at a qualifying
event, plus one grind. Meanwhile Vekic's rust is real but public, dated and visibly
priced (1.74 -> 1.80). Betting 2.20 here would be paying for a story the market has
already read. My honest line is Vekic ~53.5% / Golubic ~46.5% — the exchange, near
enough. No edge in any of the three markets. PASS.