Upsets & giant-killers
Measured by pre-match Elo gap, so "upset" means the ratings truly disagreed — not just seedings. Players with fewer than 20 career matches at the time are excluded (their ratings are still provisional).
Biggest upsets
| # | Winner | Elo | Beat | Gap | Match | Score |
|---|---|---|---|---|---|---|
| 1 | 🇦🇺 Charlie Fancutt | 1487 | 🇺🇸 Ivan Lendl (2336) | 849 | Wimbledon 1981 R128 Grass | 4-6 6-3 6-4 1-6 6-3 |
| 2 | 🇦🇷 Juan Manuel Cerundolo | 1763 | 🇮🇹 Jannik Sinner (2487) | 724 | Roland Garros 2026 R64 Clay | 3-6 2-6 7-5 6-1 6-1 |
| 3 | 🇺🇸 Doug Flach | 1590 | 🇺🇸 Andre Agassi (2308) | 718 | Wimbledon 1996 R128 Grass | 2-6 7-6(1) 6-4 7-6(6) |
| 4 | 🇺🇿 Denis Istomin | 1794 | 🇷🇸 Novak Djokovic (2512) | 718 | Australian Open 2017 R64 Hard | 7-6(8) 5-7 2-6 7-6(5) 6-4 |
| 5 | 🇺🇸 Sam Querrey | 1920 | 🇷🇸 Novak Djokovic (2567) | 647 | Wimbledon 2016 R32 Grass | 7-6(6) 6-1 3-6 7-6(5) |
| 6 | 🇧🇷 Thiago Seyboth Wild | 1649 | 🇷🇺 Daniil Medvedev (2296) | 647 | Roland Garros 2023 R128 Clay | 7-6(5) 6-7(6) 2-6 6-3 6-4 |
| 7 | 🇷🇺 Andrei Olhovskiy | 1711 | 🇺🇸 Jim Courier (2355) | 644 | Wimbledon 1992 R32 Grass | 6-4 4-6 6-4 6-4 |
| 8 | 🇨🇦 Rejean Genois | 1501 | 🇺🇸 Sandy Mayer (2138) | 637 | US Open 1978 R128 Hard | 7-6 6-2 |
| 9 | 🇧🇪 Steve Darcis | 1847 | 🇪🇸 Rafael Nadal (2483) | 636 | Wimbledon 2013 R128 Grass | 7-6(4) 7-6(8) 6-4 |
| 10 | 🇺🇸 Eric Fromm | 1567 | 🇫🇷 Yannick Noah (2181) | 614 | Wimbledon 1981 R128 Grass | 6-4 6-4 6-3 |
| 11 | 🇺🇦 Sergiy Stakhovsky | 1761 | 🇨🇭 Roger Federer (2375) | 614 | Wimbledon 2013 R64 Grass | 6-7(5) 7-6(5) 7-5 7-6(5) |
| 12 | 🇯🇵 Jun Kamiwazumi | 1580 | 🇺🇸 Stan Smith (2175) | 595 | Roland Garros 1974 R128 Clay | 3-6 6-4 8-6 |
| 13 | 🇦🇷 Renzo Olivo | 1599 | 🇫🇷 Jo-Wilfried Tsonga (2184) | 585 | Roland Garros 2017 R128 Clay | 7-5 6-4 6-7(6) 6-4 |
| 14 | 🇺🇸 Michael Mmoh | 1643 | 🇩🇪 Alexander Zverev (2221) | 578 | Australian Open 2023 R64 Hard | 6-7(1) 6-4 6-3 6-2 |
| 15 | 🇫🇷 Christophe Roger-Vasselin | 1800 | 🇺🇸 Jimmy Connors (2375) | 575 | Roland Garros 1983 QF Clay | 6-4 6-4 7-6 |
| 16 | 🇮🇹 Antonio Zugarelli | 1625 | 🇪🇸 Manuel Orantes (2177) | 552 | Roland Garros 1975 R128 Clay | 6-3 6-0 |
| 17 | 🇳🇱 Michiel Schapers | 1746 | 🇩🇪 Boris Becker (2295) | 549 | Australian Open 1985 R64 Grass | 3-6 6-4 7-6 4-6 6-3 |
| 18 | 🇦🇺 Peter Doohan | 1825 | 🇩🇪 Boris Becker (2373) | 548 | Wimbledon 1987 R64 Grass | 7-6 4-6 6-2 6-4 |
| 19 | 🇬🇪 Teymuraz Gabashvili | 1705 | 🇺🇸 Andy Roddick (2252) | 547 | Roland Garros 2010 R32 Clay | 6-4 6-4 6-2 |
| 20 | 🇩🇪 Mischa Zverev | 1902 | 🇬🇧 Andy Murray (2446) | 544 | Australian Open 2017 R16 Hard | 7-5 5-7 6-2 6-4 |
| 21 | 🇫🇷 Jean-Baptiste Chanfreau | 1461 | 🇺🇸 Marty Riessen (2003) | 542 | US Open 1970 R128 Grass | 2-6 7-5 1-6 6-4 6-0 |
| 22 | Dustin Brown | 1775 | 🇪🇸 Rafael Nadal (2316) | 541 | Wimbledon 2015 R64 Grass | 7-5 3-6 6-4 6-4 |
| 23 | 🇨🇿 Lukas Rosol | 1883 | 🇪🇸 Rafael Nadal (2423) | 540 | Wimbledon 2012 R64 Grass | 6-7(9) 6-4 6-4 2-6 6-4 |
| 24 | 🇦🇺 Chris Kachel | 1600 | 🇺🇸 Arthur Ashe (2136) | 536 | Wimbledon 1979 R128 Grass | 6-4 7-6 6-3 |
| 25 | 🇿🇦 Willem Prinsloo | 1517 | 🇺🇸 Jeff Borowiak (2052) | 535 | US Open 1977 R128 Clay | 3-6 7-6 6-1 |
| 26 | 🇺🇸 Todd Witsken | 1765 | 🇺🇸 Jimmy Connors (2296) | 531 | US Open 1986 R32 Hard | 6-2 6-4 7-5 |
| 27 | 🇦🇺 John Marks | 1535 | 🇦🇷 Jose-Luis Clerc (2060) | 525 | Australian Open 1978 R64 Grass | 6-7 RET |
| 28 | 🇷🇴 Dinu Pescariu | 1586 | 🇭🇷 Goran Ivanisevic (2109) | 523 | US Open 1997 R128 Hard | 4-6 7-5 6-1 7-6(3) |
| 29 | 🇨🇿 Lukas Dlouhy | 1479 | 🇧🇪 Kristof Vliegen (1999) | 520 | Roland Garros 2006 R128 Clay | 4-6 6-4 3-6 7-6(5) 6-2 |
| 30 | 🇬🇧 Colin Dowdeswell | 1671 | 🇲🇽 Raul Ramirez (2190) | 519 | US Open 1976 R64 Clay | 6-4 6-4 |
| 31 | 🇦🇺 Brad Drewett | 1694 | 🇺🇸 Vitas Gerulaitis (2213) | 519 | Australian Open 1980 R64 Grass | 2-6 6-4 1-6 6-4 6-4 |
| 32 | 🇷🇸 Slobodan Zivojinovic | 1996 | 🇺🇸 John McEnroe (2515) | 519 | Australian Open 1985 QF Grass | 2-6 6-3 1-6 6-4 6-0 |
| 33 | 🇨🇿 Milan Holecek | 1632 | 🇦🇺 John Newcombe (2146) | 514 | Roland Garros 1973 R128 Clay | 7-5 6-1 |
| 34 | 🇦🇺 Wally Masur | 1837 | 🇺🇸 John McEnroe (2350) | 513 | Wimbledon 1988 R64 Grass | 7-5 7-6 6-3 |
| 35 | 🇯🇵 Shintaro Mochizuki | 1605 | 🇪🇸 Rafael Jodar (2115) | 510 | Wimbledon 2026 R32 Grass | 1-6 7-6(5) 6-4 6-4 |
| 36 | Nduka Odizor | 1731 | 🇦🇷 Guillermo Vilas (2240) | 509 | Wimbledon 1983 R128 Grass | 3-6 5-7 7-6 7-5 6-2 |
| 37 | 🇦🇺 Warren Maher | 1498 | 🇦🇺 Peter McNamara (2005) | 507 | Wimbledon 1980 R128 Grass | 2-6 6-1 6-3 6-2 |
| 38 | 🇳🇱 Botic van de Zandschulp | 1800 | 🇪🇸 Carlos Alcaraz (2307) | 507 | US Open 2024 R64 Hard | 6-1 7-5 6-4 |
| 39 | 🇦🇺 John Marks | 1591 | 🇺🇸 Dick Stockton (2097) | 506 | Wimbledon 1978 R128 Grass | 6-2 9-8 7-5 |
| 40 | 🇺🇸 Tom Leonard | 1532 | 🇭🇷 Zeljko Franulovic (2033) | 501 | US Open 1971 R64 Grass | 4-6 6-7 6-3 7-5 7-6 |
Most giant-kills
Career wins over opponents rated 100+ Elo higher.
- 🇪🇸 Feliciano Lopez 75
- 🇫🇷 Fabrice Santoro 72
- 🇫🇷 Adrian Mannarino 69
- 🇨🇭 Marc Rosset 68
- 🇿🇦 Raymond Moore 68
- 🇺🇸 Jeff Borowiak 66
- 🇮🇹 Andreas Seppi 65
- 🇪🇸 Guillermo Garcia-Lopez 61
- 🇫🇷 Julien Benneteau 59
- 🇷🇸 Dusan Lajovic 57
- 🇭🇷 Ivo Karlovic 57
- 🇪🇬 Ismail El Shafei 57
- 🇪🇸 Francisco Clavet 57
- 🇮🇹 Gianluca Pozzi 56
- 🇮🇹 Fabio Fognini 56
Best underdog record
Win rate when the lower-rated player (min. 80 such matches).
- 🇩🇪 Boris Becker 54.7% (47–39)
- 🇳🇱 Richard Krajicek 49.6% (65–66)
- 🇩🇪 Michael Stich 49.5% (47–48)
- 🇷🇺 Yevgeny Kafelnikov 49.4% (79–81)
- 🇪🇸 Albert Costa 49.0% (98–102)
- 🇨🇦 Felix Auger-Aliassime 48.9% (65–68)
- 🇧🇷 Gustavo Kuerten 48.6% (52–55)
- 🇸🇰 Miloslav Mecir Sr. 47.6% (40–44)
- 🇫🇷 Ugo Humbert 46.2% (67–78)
- 🇺🇸 Taylor Fritz 46.1% (82–96)
- 🇨🇭 Roger Federer 46.1% (47–55)
- 🇫🇷 Arnaud Boetsch 45.6% (72–86)
- 🇺🇸 Arthur Ashe 45.6% (57–68)
- 🇦🇷 Alberto Mancini 45.6% (41–49)
- 🇺🇸 Andre Agassi 45.4% (44–53)
Methodology
An upset is a win by the player with the lower pre-match Elo; the gap is the rating difference at that moment. Matches where either player had fewer than 20 prior career matches are excluded, since early ratings are provisional. Giant-kills count career wins over opponents rated 100+ Elo higher; underdog records count all matches entered as the lower-rated player (minimum 80).