Li A. vs Linette M.
CRITICAL DATA QUALITY WARNING
⚠️ ANALYSIS NOT POSSIBLE - INSUFFICIENT DATA ⚠️
This report cannot provide reliable betting recommendations due to critical data collection failures:
Data Quality Issues
| Issue | Severity | Impact |
|---|---|---|
| Player 1 Tour Mismatch | CRITICAL | All P1 statistics invalid |
| Wrong Player Scraped | CRITICAL | Scraped “Zhe Li” (ATP #1089) instead of “Ann Li” (WTA) |
| Zero P1 Hold/Break Stats | CRITICAL | Cannot model game distributions |
| Missing Odds Data | HIGH | Cannot calculate market edge |
| Tour Classification Error | HIGH | Match marked as ATP instead of WTA |
What Went Wrong
The data collection script scraped statistics for Zhe Li (ATP) instead of Ann Li (WTA):
- Scraped player: Zhe Li (ATP Rank #1089, 12 points)
- Correct player: Ann Li (WTA player)
- Result: Player 1 shows 0 matches played, 0% hold, 0% break - all unusable
Root Cause: Name matching algorithm failed to distinguish between:
- “Li A.” (abbreviated tournament entry) → Should map to Ann Li (WTA)
- “Zhe Li” (ATP player with similar surname) → Incorrectly matched
Data Completeness
| Player | Stats Available | Hold % | Break % | Usable |
|---|---|---|---|---|
| Li A. | ❌ NO (wrong player) | 0% (invalid) | 0% (invalid) | ❌ |
| Linette M. | ✅ YES | 66.7% | 29.1% | ✅ |
| Odds | ❌ NO | - | - | ❌ |
Analysis Status: Cannot proceed without valid Player 1 statistics.
Match & Event
| Field | Value |
|---|---|
| Tournament / Tier | Australian Open / Grand Slam |
| Round / Court / Time | R128 / TBD / TBD |
| Format | Best of 3 (Grand Slam WTA) |
| Surface / Pace | Hard (Melbourne Park) |
| Conditions | Outdoor, Australian Summer |
Executive Summary
Totals
| Metric | Value |
|---|---|
| Model Fair Line | UNABLE TO CALCULATE |
| Market Line | NOT FOUND |
| Lean | PASS |
| Edge | N/A |
| Confidence | PASS |
| Stake | 0 units |
Game Spread
| Metric | Value |
|---|---|
| Model Fair Line | UNABLE TO CALCULATE |
| Market Line | NOT FOUND |
| Lean | PASS |
| Edge | N/A |
| Confidence | PASS |
| Stake | 0 units |
Recommendation: PASS on both totals and spread - Critical data missing, analysis not possible.
Key Issues:
- Player 1 hold/break statistics completely missing (wrong player scraped)
- Cannot model expected total games without both players’ stats
- No market odds available for edge calculation
- Tour classification error (ATP vs WTA mismatch)
Li A. (Ann Li) - INVALID DATA WARNING
⚠️ Data Collection Error
CRITICAL: Statistics below are for Zhe Li (ATP), not Ann Li (WTA)
The scraper incorrectly matched “Li A.” to Zhe Li (ATP Rank #1089) instead of Ann Li (WTA). All statistics below are INVALID for this match analysis.
Rankings & Form (INVALID - Wrong Player)
| Metric | Value | Note |
|---|---|---|
| ATP Rank | #1089 | ⚠️ Wrong tour (should be WTA) |
| ATP Points | 12 | ⚠️ ATP points, not WTA |
| Career Stats | 0 matches L52W | ⚠️ No tour-level data |
Hold/Break Analysis (INVALID)
| Category | Stat | Value | Status |
|---|---|---|---|
| Hold % | Service Games Held | 0% | ❌ INVALID |
| Break % | Return Games Won | 0% | ❌ INVALID |
| Matches Played | Last 52 Weeks | 0 | ❌ NO DATA |
Analysis Impossible: Without valid hold/break percentages, cannot model:
- Expected games per set
- Tiebreak probabilities
- Total games distribution
- Game margin expectations
Recent Form (INVALID - Wrong Player)
The recent form data shows matches from ATP Challenger and lower-tier events (M15, M25):
- 5-5 record in last 10 matches
- Playing M15 Hong Kong, M25 tournaments
- Dominance ratio: 0.95
- NOT relevant for Ann Li (WTA)
Note: These are matches for Zhe Li (ATP), competing at Challenger/ITF level, not the WTA player Ann Li who should be analyzed for this Australian Open match.
Linette M. (Magda Linette) - Valid Profile
Rankings & Form
| Metric | Value | Percentile |
|---|---|---|
| WTA Rank | #50 | - |
| WTA Points | 1157 | - |
| Overall Elo | 1796 (#57) | - |
| Hard Court Elo | 1740 (#58) | - |
| Win % (Last 12m) | 51.6% (16-15) | - |
Surface Performance (Hard)
| Metric | Value | Note |
|---|---|---|
| Matches Played | 31 (L52W) | ✅ Good sample |
| Win % | 51.6% (16-15) | Even record |
| Avg Total Games | 21.0 games/match | Below WTA average |
Hold/Break Analysis
| Category | Stat | Value | Assessment |
|---|---|---|---|
| Hold % | Service Games Held | 66.7% | Below average (WTA ~70%) |
| Break % | Return Games Won | 29.1% | Average (WTA ~30%) |
| Avg Breaks/Match | Breaks Per Match | 3.49 | Standard |
| Tiebreak | TB Win Rate | 100% (5-0) | Excellent but small sample |
Serve Vulnerability: Linette’s 66.7% hold rate is below WTA average, indicating vulnerability on serve. This could lead to:
- More breaks per set (lower total games if opponent dominant)
- OR more breaks traded (higher total games if opponent also weak on serve)
Return Profile: 29.1% break rate is right at tour average - neither a strength nor weakness.
Tiebreak Statistics
| Metric | Value | Assessment |
|---|---|---|
| TB Won | 5 | Small sample |
| TB Lost | 0 | Perfect record |
| TB Win % | 100% | Impressive but only 5 TBs |
Warning: Sample size of 5 tiebreaks is insufficient for reliable tiebreak probability modeling. Typically need 15+ TBs for confidence.
Serve Statistics
| Metric | Value |
|---|---|
| 1st Serve In % | 59.6% |
| 1st Serve Won % | 65.9% |
| 2nd Serve Won % | 44.0% |
| Aces per Match | 5.7% |
| Double Faults | 3.6% |
Serve Analysis: Below-average first serve percentage (59.6% vs ~63% WTA avg) combined with modest first serve win rate explains the lower hold percentage.
Recent Form
| Metric | Value |
|---|---|
| Last 9 Matches | 8-1 (excellent) |
| Form Trend | Declining (despite 8-1) |
| Dominance Ratio | 0.94 (slightly negative) |
| Three-Set % | 55.6% (high) |
| Avg Games/Match | 23.0 |
Form Notes:
- Excellent recent record (8-1) but form trend marked as “declining”
- High three-set frequency (55.6%) suggests competitive matches
- Most recent match: LOSS vs #15 seed at Australian Open R128 (3-6, 6-3, 6-3)
Recent Matches
| Date | Tournament | Opponent | Result | Score | Games | DR |
|---|---|---|---|---|---|---|
| 19-Jan-2026 | Australian Open | vs #15 | L | 3-6 6-3 6-3 | 21 | 1.10 |
| 12-Jan-2026 | Hobart | vs #30 | W | 6-3 6-7 6-2 | 24 | 0.92 |
| 12-Jan-2026 | Hobart | vs #43 | W | 6-1 7-5 | 19 | 1.21 |
Latest Result: Loss in R128 Australian Open 2026 (just yesterday) suggests Linette has already been eliminated. This match listing may be an error.
Clutch Statistics
| Metric | Value | Tour Avg |
|---|---|---|
| BP Conversion | 36.0% (36/100) | ~40% |
| BP Saved | 62.3% (71/114) | ~60% |
| TB Serve Win | 82.4% | ~55% |
| TB Return Win | 41.2% | ~30% |
Clutch Assessment: Slightly below average on BP conversion but above average on BP saved. Strong tiebreak performer (though small sample).
Key Games
| Metric | Value | Interpretation |
|---|---|---|
| Consolidation | 67.7% (21/31) | Below average - gives breaks back |
| Breakback | 17.1% (7/41) | Low - struggles to recover |
| Serving for Set | 72.7% | Below average closure |
| Serving for Match | 100% | Perfect (small sample) |
Pattern: Linette struggles with consolidation (holding after breaking) and breakback ability. This suggests:
- Sets could have more breaks traded (higher game count)
- Or sets could slip away quickly if opponent consolidates well
Playing Style
| Metric | Value |
|---|---|
| Winner/UFE Ratio | 1.11 |
| Winners per Point | 14.3% |
| UFE per Point | 13.1% |
| Style | Consistent |
Style Classification: Balanced-Consistent (W/UFE ratio 1.11, just above 1.0). Slightly more winners than errors, consistent ball-striker.
Matchup Analysis - UNABLE TO COMPLETE
Critical Gaps
Without valid statistics for Li A. (Ann Li), the following analyses cannot be performed:
Cannot Calculate:
- Hold/break matchup comparison
- Expected hold % for each player in this matchup
- Service vs return advantage
- Elo differential and quality rating
- Form comparison and momentum assessment
- Expected total games distribution
- Expected game margin
- Tiebreak probability
- Set score probabilities
- Straight sets likelihood
What We Know (Linette Only):
- Linette holds 66.7% on serve (below average)
- Linette breaks 29.1% on return (average)
- Linette averages 21.0 total games per match
- Linette plays 55.6% of matches to 3 sets
What We Need (Missing for Li A.):
- Ann Li hold % (to model expected games per set)
- Ann Li break % (to estimate game margin)
- Ann Li tiebreak tendency (for total games variance)
- Ann Li recent form and dominance ratio
- Ann Li playing style and W/UFE ratio
Game Distribution Analysis - NOT POSSIBLE
Why Analysis Cannot Proceed
Game distribution modeling requires:
- Both Players’ Hold % - Missing for Li A.
- Both Players’ Break % - Missing for Li A.
- Tiebreak Frequencies - Missing for Li A.
Without these inputs, cannot calculate:
- P(6-0), P(6-1), P(6-2), P(6-3), P(6-4), P(7-5), P(7-6) for each player
- P(Straight Sets vs 3 Sets)
- P(At Least 1 Tiebreak)
- Total Games Distribution
- Expected Total Games with Confidence Interval
Partial Information (Linette Only)
If this were a valid matchup with both players’ data:
- Linette’s 66.7% hold suggests she’s vulnerable to breaks
- Linette’s 21.0 avg games/match suggests slightly lower totals tendency
- Linette’s 55.6% three-set rate suggests competitive matches
But without opponent data, these observations cannot be converted into probabilities.
Totals Analysis - NOT POSSIBLE
| Metric | Value |
|---|---|
| Expected Total Games | UNABLE TO CALCULATE |
| 95% Confidence Interval | UNABLE TO CALCULATE |
| Fair Line | UNABLE TO CALCULATE |
| Market Line | NOT FOUND |
| P(Over) | UNABLE TO CALCULATE |
| P(Under) | UNABLE TO CALCULATE |
Why Totals Cannot Be Calculated
Missing Critical Inputs:
- Li A. hold % (required for expected games per set)
- Li A. break % (required for break frequency modeling)
- Li A. tiebreak frequency (required for variance estimation)
- Market odds (required for edge calculation)
Methodology Requirement: Totals analysis fundamentally depends on modeling game distributions from hold/break rates. With one player’s data completely missing, no reliable estimate can be made.
What Would Be Needed
To produce a valid totals analysis:
- Correct WTA statistics for Ann Li (hold %, break %, avg games)
- Surface-specific adjustments for both players
- Matchup-adjusted hold/break expectations
- Market totals line (O/U X.5) with odds
- At least 15 matches of recent data for each player
Recommendation: PASS - Cannot calculate fair line or edge without Player 1 data.
Handicap Analysis - NOT POSSIBLE
| Metric | Value |
|---|---|
| Expected Game Margin | UNABLE TO CALCULATE |
| 95% Confidence Interval | UNABLE TO CALCULATE |
| Fair Spread | UNABLE TO CALCULATE |
Why Handicap Cannot Be Calculated
Missing Critical Inputs:
- Li A. average games won per match
- Li A. average games lost per match
- Elo differential between players
- Break rate differential
- Market spread line and odds
Methodology Requirement: Game handicap analysis requires modeling expected game differential based on:
- Hold/break rate differentials
- Historical games won/lost per player
- Elo-adjusted performance expectations
- Set closure efficiency comparison
None of these calculations are possible with Player 1 data completely missing.
Spread Coverage Probabilities
| Line | P(Covers) | P(Covers) | Edge |
|---|---|---|---|
| TBD -2.5 | N/A | N/A | N/A |
| TBD -3.5 | N/A | N/A | N/A |
| TBD -4.5 | N/A | N/A | N/A |
Recommendation: PASS - Cannot calculate coverage probabilities or fair spread without Player 1 data.
Head-to-Head - NO DATA
| Metric | Value |
|---|---|
| Total H2H Matches | Unknown |
| Avg Total Games in H2H | Unknown |
| Avg Game Margin | Unknown |
| TBs in H2H | Unknown |
Note: Even if H2H data were available, it would not compensate for missing current hold/break statistics for Player 1.
Market Comparison - NOT AVAILABLE
Totals
| Source | Line | Over | Under | Vig | Edge |
|---|---|---|---|---|---|
| Model | N/A | N/A | N/A | N/A | N/A |
| Market | NOT FOUND | N/A | N/A | N/A | N/A |
Odds Not Found: Scraper could not locate odds for “Li A. vs Linette M.” in date range [‘2026-01-20’, ‘2026-01-21’, ‘2026-01-19’].
Possible Reasons:
- Match already completed (Linette lost R128 on Jan 19)
- Match listing error
- Player name mismatch in odds feed
- Match not offered for betting
Game Spread
| Source | Line | Fav | Dog | Vig | Edge |
|---|---|---|---|---|---|
| Model | N/A | N/A | N/A | N/A | N/A |
| Market | NOT FOUND | N/A | N/A | N/A | N/A |
Recommendations
Totals Recommendation
| Field | Value |
|---|---|
| Market | Total Games |
| Selection | PASS |
| Target Price | N/A |
| Edge | N/A |
| Confidence | PASS |
| Stake | 0 units |
Rationale: Analysis impossible due to missing Player 1 hold/break statistics. Cannot calculate expected total games, fair line, or market edge without valid data for both players.
Game Spread Recommendation
| Field | Value |
|---|---|
| Market | Game Handicap |
| Selection | PASS |
| Target Price | N/A |
| Edge | N/A |
| Confidence | PASS |
| Stake | 0 units |
Rationale: Analysis impossible due to missing Player 1 statistics and game distribution data. Cannot model expected game margin or calculate coverage probabilities without hold/break rates for both players.
Why This Is a PASS
Primary Reason: Data quality failure makes analysis impossible.
Specific Issues:
- Wrong Player Scraped: Statistics are for Zhe Li (ATP) instead of Ann Li (WTA)
- Zero Valid Statistics: Player 1 shows 0% hold, 0% break, 0 matches played
- Tour Mismatch: Match metadata shows ATP when this is a WTA match
- No Market Odds: Cannot calculate edge even if model were valid
- Fundamental Modeling Requirement: Totals and handicaps REQUIRE both players’ hold/break data
This is NOT a borderline case or close call. The data required for ANY analysis is completely absent.
Pass Conditions
Always Pass When:
- Player hold/break statistics missing or invalid (this case)
- Market odds unavailable (this case)
- Data quality below minimum threshold (this case)
Additional Pass Triggers (not applicable here due to data issues):
- Edge below 2.5% threshold
- Confidence interval wider than ±4 games
- Tiebreak sample size below 10 TBs (both players)
- Injury/fitness concerns affecting stamina
Data Collection Issues & Recommendations
Root Cause Analysis
Issue: Name matching failure in stats scraper.
What Happened:
- Tournament listing shows “Li A.” (abbreviated format)
- Scraper searched for “Li A.” on TennisAbstract.com
- Algorithm incorrectly matched to “Zhe Li” (ATP, similar surname)
- Should have matched to “Ann Li” (WTA, correct player)
Contributing Factors:
- Abbreviated tournament entries (“Li A.” instead of “Ann Li”)
- Tour classification error (metadata shows “atp” instead of “wta”)
- Name matching algorithm prioritizing surname over full name match
- No validation step to check tour consistency (ATP stats for WTA match)
Recommendations for Scraper Improvement
Immediate Fixes:
- Tour Validation Check:
if match_metadata["tour"] == "wta" and player_stats["tour"] == "atp": raise ValueError("Tour mismatch - WTA match but ATP stats found") - Full Name Matching Priority:
- Match “Li A.” → Search for “Ann Li” (WTA) before “Zhe Li” (ATP)
- Use full name database lookup before abbreviated search
- Prioritize matches where tour type aligns with match metadata
- Zero Stats Validation:
if player_stats["profile"]["matches_played"] == 0: log_warning(f"Player {name} has 0 matches - likely wrong player or no recent data") - Tour Ranking Validation:
- WTA match should return WTA ranking, not ATP ranking
- Flag mismatches for manual review
Medium-Term Improvements:
- Tournament Entry Mapping:
- Maintain database: “Li A.” (Australian Open 2026 WTA) → “Ann Li”
- Pre-map abbreviated tournament entries to full WTA/ATP names
- Fuzzy Matching with Tour Context:
- Weight tour type heavily in name matching algorithm
- Penalize cross-tour matches (ATP player for WTA match)
- Data Quality Scoring:
quality_score = calculate_quality( matches_played > 10, tour_type_matches, ranking_reasonable, stats_not_zero ) if quality_score < THRESHOLD: flag_for_review()
Manual Data Collection Needed
For this specific match, would need to:
- Manually search TennisAbstract.com for “Ann Li” (WTA)
- Extract Last 52 Weeks statistics for hard courts
- Verify hold % and break % values
- Manually search odds providers for “Ann Li vs Magda Linette”
- Re-run analysis with corrected data
Time Required: ~15-20 minutes for manual correction Worth It? Only if match has not yet been played and odds are available
Risk & Unknowns
Primary Risk: Data Invalidity
- 100% Risk: Analysis completely invalid due to wrong player data
- No Uncertainty Bands Possible: Cannot estimate ranges when base data is wrong
Data Limitations
- Player 1 statistics: COMPLETELY MISSING (wrong player scraped)
- Player 2 statistics: VALID but insufficient for single-player analysis
- Odds data: MISSING (match not found)
- H2H data: NOT COLLECTED (analysis already impossible)
What Cannot Be Assessed
Without valid data for both players:
- Tiebreak volatility impact
- Hold rate uncertainty ranges
- Injury/fitness concerns
- Playing style matchup dynamics
- Surface adjustment accuracy
- Recent form trajectory comparison
Sources
- TennisAbstract.com - Player statistics (Last 52 Weeks)
- ✅ Linette M. (Magda Linette) - WTA - VALID
- ❌ Li A. - Scraped Zhe Li (ATP) instead of Ann Li (WTA) - INVALID
- Sportsbet.io - Match odds
- ❌ NOT FOUND - Match not located in date range
- Match Metadata - Australian Open 2026
- ⚠️ TOUR MISMATCH - Listed as ATP instead of WTA
Data Quality Assessment: CRITICAL FAILURE - Primary data source invalid.
Verification Checklist
Core Statistics
- ❌ Hold % collected for both players (Player 1 MISSING)
- ❌ Break % collected for both players (Player 1 MISSING)
- ❌ Tiebreak statistics collected for both (Player 1 MISSING)
- ❌ Game distribution modeled (IMPOSSIBLE without P1 data)
- ❌ Expected total games calculated (IMPOSSIBLE)
- ❌ Expected game margin calculated (IMPOSSIBLE)
- ❌ Totals line compared to market (NO MARKET DATA)
- ❌ Spread line compared to market (NO MARKET DATA)
- ✅ Edge ≥ 2.5% for recommendations (N/A - recommending PASS)
- ❌ Confidence intervals calculated (IMPOSSIBLE)
- ✅ NO moneyline analysis included
Enhanced Analysis
- ❌ Elo ratings extracted for both players (Player 1 INVALID)
- ❌ Recent form data for both players (Player 1 INVALID)
- ❌ Clutch stats for both players (Player 1 INVALID)
- ❌ Key games metrics for both (Player 1 INVALID)
- ❌ Playing style for both (Player 1 INVALID)
- ❌ Matchup Quality Assessment (IMPOSSIBLE)
- ❌ Clutch Performance comparison (IMPOSSIBLE)
- ❌ Set Closure Patterns (IMPOSSIBLE)
- ❌ Playing Style Analysis (IMPOSSIBLE)
- ✅ Data quality issues CLEARLY DOCUMENTED
- ✅ PASS recommendation with full explanation
Report Quality
- ✅ Data quality warning prominently displayed
- ✅ Tour mismatch issue explained
- ✅ Root cause analysis provided
- ✅ Recommendations for scraper improvement included
- ✅ Clear “PASS” recommendation on both markets
- ✅ Honest assessment of what cannot be calculated
- ✅ No false analysis based on invalid data
Final Summary
Recommendation: PASS on both Totals and Game Spread
Confidence Level: PASS (Analysis Not Possible)
Key Message: This match cannot be analyzed due to critical data collection failure. The scraper incorrectly matched “Li A.” to Zhe Li (ATP #1089) instead of Ann Li (WTA), resulting in completely invalid statistics for Player 1. Without valid hold/break data for both players, totals and handicap analysis is fundamentally impossible.
Action Required:
- Fix name matching algorithm to prevent ATP/WTA tour mismatches
- Add data validation to flag zero-statistic players
- If this match analysis is needed, manually collect Ann Li (WTA) statistics and re-run
Betting Action: Do not bet on this match based on this analysis. If you wish to bet, you must:
- Manually research Ann Li’s recent form and statistics
- Find valid market odds for the match
- Perform your own analysis or wait for corrected data collection
Report Generated: 2026-01-20 Data Source: TennisAbstract.com (Last 52 Weeks) + Sportsbet.io Analysis Status: INCOMPLETE - CRITICAL DATA MISSING Analyst Note: This report demonstrates the importance of data quality validation and tour consistency checks in automated analysis systems.