Career 2025 2024 2023 2022 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012 2011 2010 2009 2008 2007 2006 2004
All Rounds Final 1/2 1/4 First Second Third Fourth Pre-q Rubber 1 Rubber 2 Rubber 3 Rubber 4 Rubber 5 Robin Bronze Q3 N/A Q2 Q1 ER Q4 CR QF Q5 N/A
All Courts Acrylic N/A Clay Grass Carpet Hard I.hard
All Tour Braunschweig Challenger Karlsruhe Challenger U.S. Open - New York Wimbledon - London EFG Swiss Open - Gstaad M25 Roehampton Mallorca Challenger M25 Porto Matsuyama Challenger Chengdu Open - Chengdu Shanghai Rolex Masters - Shanghai Astana Open - Astana Orleans Challenger Playford Challenger Mouilleron-Le-Captif Challenger Sydney Challenger Rakuten Japan Open - Tokyo Bergamo Challenger M25 Benicarlo M15 Valencia Hong Kong Tennis Open - Hong Kong Girona Challenger ASB Classic - Auckland BMW Open - Munich Oeiras 1 Challenger Hamburg Challenger Bordeaux Challenger M15 Azay-le-Rideau M15 Poitiers Australian Open - Melbourne M15 Bressuire Dallas Open - Dallas Pau Challenger Delray Beach Open - Delray Beach M15+H Bagnoles de l'Orne M25 Toulouse-Balma BNP Paribas Open - Indian Wells Koblenz Challenger Cherbourg Challenger Mifel Tennis Open - Los Cabos Lille Challenger Abierto Mexicano Telcel - Acapulco Olympics - Paris Internazionali BNL d'Italia - Rome Open Parc - Lyon Miami Open - Miami Barcelona Challenger Mutua Madrid Open - Madrid Madrid Challenger National Bank Open - Montreal M15 Gijon Cagliari Challenger M25 Mataro M25 Vic M25 Villeneuve-Loubet French Open - Paris cinch Championships - London Porto Challenger M25+H Ajaccio Mallorca Championships - Mallorca Nordea Open - Bastad Wimbledon - London Pozoblanco Challenger M25+H Bagneres-de-Bigorre Salzburg Challenger Chengdu Open - Chengdu M25 Porto Western & Southern Open - Cincinnati U.S. Open - New York Porto 2 Challenger Winston-Salem Open - Winston-Salem Rennes Challenger Japan Open Tennis Championships - Tokyo Almaty Open - Almaty M15 Monastir Mouilleron-Le-Captif Challenger Taipei 2 Challenger Seoul Challenger M15 Bressuire Roanne Challenger Shanghai Rolex Masters - Shanghai St. Brieuc Challenger M25 Monastir M25 Monastir Kobe Challenger M15 Monastir Dallas Open - Dallas Phoenix Challenger San Diego Challenger M15 Monastir St. Tropez Challenger M15 Poitiers M15 Monastir M25 Monastir National Bank Open - Toronto Bordeaux Challenger M15 Monastir M25 Esch/Alzette Cherbourg Challenger Delray Beach Open - Delray Beach BNP Paribas Open - Indian Wells Mauthausen Challenger Canberra Challenger Adelaide International - Adelaide M25 Hazebrouck Australian Open - Melbourne M15 Monastir Sassuolo Challenger Miami Open - Miami M25 Toulouse-Balma Troyes Challenger Oeiras 5 Challenger Porto 2 Challenger Mutua Madrid Open - Madrid US Men's Clay Court Championship - Houston M15 Lons-le-Saunier Internazionali BNL d'Italia - Rome M25 Carnac French Open - Paris M25 Villeneuve-Loubet M25 Mataro Cincinnati Open - Cincinnati Perugia Challenger Royan Challenger Wimbledon - London Nottingham 3 Challenger Pozoblanco Challenger Mifel Tennis Open - Los Cabos Chengdu Open - Chengdu Citi Open - Washington National Bank Open - Toronto U.S. Open - New York Segovia Challenger Cassis Challenger Rennes Challenger Guangzhou Challenger Roanne Challenger Mouilleron-Le-Captif Challenger Orleans Challenger Shanghai Rolex Masters - Shanghai Brest Challenger Jinan Challenger Almaty Open - Almaty France F12 France F2 France F3 France F13 France F15 France F17 France F20 France F1 France F2 France F4 France F8 France F9 France F10 France F12 Belgium F3 France F13 France F15 France F19 France F20 France F1 France F2 France F4 Spain F11 France F7 Spain F14 France F8 France F10 France F11 France F12 Spain F26 Spain F27 Spain F28 Spain F29 Belgium F2 France F13 France F14 France F15 Spain F34 Spain F35 France F17 France F18 France F19 Spain F37 France F20 Rodez Spain F39 Spain F1 Great Britain F1 Great Britain F2 France F1 Spain F3 France F2 Spain F5 Spain F6 Portugal F1 France F4 Portugal F2 France F5 Spain F10 Spain F11 France F6 Spain F13 Spain F14 Spain F15 Spain F17 Spain F20 Spain F21 France F10 Spain F22 Spain F25 Spain F26 Spain F27 Spain F29 Spain F30 Spain F32 Spain F35 Spain F36 Spain F38 Spain F39 Turkey F1 Turkey F2 Turkey F3 Spain F1 Spain F2 Spain F3 Spain F4 France F4 France F5 Spain F6 Croatia F5 Croatia F6 Spain F9 Spain F10 Spain F11 Spain F12 Spain F13 Spain F15 Spain F16 Belgium F1 Netherlands F4 Spain F20 Spain F21 Spain F22 Italy F22 USA F28 USA F1 USA F2 USA F3 Spain F1 Spain F2 Spain F3 Spain F4 France F4 Spain F6 Spain F7 Spain F8 Spain F9 Spain F14 Italy F22 Spain F32 Portugal F9 France F19 France F12 Belgium F2 France F18 France F5 Spain F38 Spain F2 Spain F24 M15 Manacor M15+H Bagnoles-de-l'Orne M15+H Bressuire M15 Vale Do Lobo M15 Faro M15 Toulouse M15 Sintra M25+H Rodez M15 Benicarlo M15 Madrid M15 Manacor M15 Manacor M15+H Bressuire M25 Vale do Lobo M25 Faro M25 Vale do Lobo M15 Poitiers M25 Reus M25 Angers M15 Las Palmas de Gran Canaria M25 Montauban M25+H Ajaccio M15 Xativa M25 Santander M25 Bagneres-De-Bigorre M25+H Rodez M25 Toulouse M15 Manacor M25 Vale do Lobo M15 Creteil M15 Poitiers M25 Toulouse-Balma M25 Reus M25 Angers M25 Vic M25 Montauban M15 Madrid Challenger DCNS de Cherbourg - Cherbourg Open D'Orleans - Orleans Cherbourg Challenger Cherbourg Challeger St. Brieuc Challenger Bordeaux Challenger Quimper Challenger Cherbourg Challenger St. Brieuc Challenger Monza Challenger Bordeaux Challenger Pozoblanco Challenger Recanati Challenger Segovia Challenger St. Remy Challenger Istanbul Challenger Mons Challenger Rennes Challenger Orleans Challenger Bratislava Challenger Helsinki Challenger Noumea Challenger Quimper Challenger Cherbourg Challenger Bath Challenger St. Brieuc Challenger Tunis Challenger Bordeaux Challenger Nottingham Challenger Scheveningen Challenger Recanati Challenger Pozoblanco Challenger Cordenons Challenger Segovia Challenger Alphen Challenger St. Remy Challenger Petange Challenger Seville Challenger Szczecin Challenger Orleans Challenger Mons Challenger Sacramento Challenger Tiburon Challenger Rennes Challenger Seoul Challenger Geneva Challenger Charlottesville Challenger Bratislava Challenger Yokohama Challenger Heilbronn Challenger Quimper Challenger Cherbourg Challenger St. Brieuc Challenger Panama City Challenger Savannah Challenger Tunis Challenger Tallahassee Challenger Bordeaux Challenger Nottingham Challenger Furth Challenger Prague Challenger Milan Challenger Todi Challenger San Benedetto Challenger Guimaraes Challenger San Marino Challenger Cordenons Challenger Como Challenger St. Remy Challenger Petange Challenger Seville Challenger Kenitra Challenger Orleans Challenger Mons Challenger Rennes Challenger Seoul Challenger Bratislava Challenger Yeongwol Challenger Yokohama Challenger Heilbronn Challenger Chitre Challenger Cherbourg Challenger Guadalajara Challenger Barranquilla Challenger Le Gosier Challenger Sarasota Challenger Tunis Challenger Rome Challenger Bordeaux Challenger Nottingham Challenger Mestre Challenger Caltanissetta Challenger Todi Challenger Scheveningen Challenger Poznan Challenger Vancouver Challenger Aptos Challenger St. Remy Challenger Seville Challenger Orleans Challenger Mons Challenger Rennes Challenger Charlottesville Challenger Mouilleron-Le-Captif Challenger Knoxville Challenger Noumea Challenger Cherbourg Challenger Quimper Challenger Le Gosier Challenger Mersin Challenger Vercelli Challenger Rome Challenger Bordeaux Challenger Furth Challenger Prague Challenger Marburg Challenger Braunschweig Challenger Poznan Challenger Aptos Challenger Vancouver Challenger Cordenons Challenger Manerbio Challenger Como Challenger Genova Challenger Barranquilla Challenger Trnava Challenger Orleans Challenger Rome Challenger Mons Challenger Casablanca Challenger Kobe Challenger Yokohama Challenger Canberra Challenger Cherbourg Challenger Quimper Challenger Guangzhou Challenger Shenzhen Challenger Rome Challenger Bordeaux Challenger Furth Challenger Lyon Challenger Braunschweig Challenger Segovia Challenger Cordenons Challenger Manerbio Challenger Como Challenger Genova Challenger Seville Challenger Orleans Challenger Mons Challenger Ho Chi Minh City Challenger Suzhou Challenger Budapest Challenger Eckental Challenger Mouilleron-Le-Captif Challenger Kobe Challenger Noumea Challenger Koblenz Challenger Rennes Challenger Maui Challenger Cherbourg Challenger Wroclaw Challenger Santiago Challenger Buenos Aires Challenger St. Brieuc Challenger Sophia Antipolis Challenger Aix En Provence Challenger Bordeaux Challenger Surbiton Challenger Nottingham Challenger Lisbon Challenger Recanati Challenger Braunschweig Challenger Perugia Challenger Scheveningen Challenger Vancouver Challenger Como Challenger Genova Challenger Seville Challenger Szczecin Challenger Sibiu Challenger Orleans Challenger Ortisei Challenger Ningboo Challenger Traralgon Challenger Canberra Challenger Eckental Challenger Mouilleron-Le-Captif Challenger Kobe Challenger Toyota Challenger Noumea Challenger Koblenz Challenger Rennes Challenger Cherbourg Challenger Lille Challenger St. Brieuc Challenger Alicante Challenger Sarasota Challenger Aix En Provence Challenger Bordeaux Challenger Lisbon Challenger Poznan Challenger Lyon Challenger Blois Challenger Perugia Challenger Mallorca Challenger Seville Challenger Szczecin Challenger Orleans Challenger Florence Challenger Barcelona Challenger Eckental Challenger Mouilleron-Le-Captif Challenger Noumea Challenger Phoenix Challenger Lille Challenger St. Brieuc Challenger Sophia Antipolis Challenger Bordeaux Challenger Aix En Provence Challenger Lisbon Challenger Vicenza Challenger Prostejov Challenger Blois Challenger Parma Challenger Milan Challenger Recanati Challenger Perugia Challenger Amersfoort Challenger Prague Challenger Segovia Challenger Aptos Challenger Portoroz Challenger Genova Challenger Szczecin Challenger Biella Challenger Fairfield Challenger Las Vegas Challenger Charlottesville Challenger Knoxville Challenger Canberra Challenger Burnie Challenger Cherbourg Challenger Indian Wells Challenger Prostejov Challenger Parma Challenger Istanbul Challenger Hamburg Challenger Cherbourg Challenger Nur-Sultan 2 Challenger Marbella Challenger Belgrade Challenger Heilbronn Challenger Oeiras 3 Challenger Lyon Challenger Salzburg-Anif Challenger Szczecin Challenger Rennes Challenger Braga Challenger Lisbon Challenger Mouilleron-Le-Captif Challenger Brest Challenger Las Vegas Challenger Charlottesville Challenger Roanne Challenger Pau Challenger Bari Challenger Cherbourg Challenger Turin Challenger Rome 1 Challenger Prague 2 Challenger Bordeaux Challenger Vicenza Challenger Forli 6 Challenger Lyon Challenger Troyes Challenger Braunschweig Challenger Porto Challenger Amersfoort Challenger Pozoblanco Challenger Segovia Challenger Prague 3 Challenger Como Challenger Cassis Challenger Rennes Challenger Orleans Challenger Mouilleron-Le-Captif Challenger Hamburg Challenger Brest Challenger Bergamo Challenger Roanne Challenger Valencia Challenger Maia Challenger Oeiras 1 Challenger Oeiras 2 Challenger Ottignies-Louvain-la-Neuve Challenger Koblenz Challenger Cherbourg Challenger Monterrey Challenger Pau Challenger Lugano Challenger Szekesfehervar Challenger Lille Challenger Madrid Challenger Oeiras 3 Challenger Rome Challenger Aix En Provence Challenger Cagliari Challenger Turin Challenger Troisdorf Challenger Perugia Challenger Blois Challenger Cordenons Challenger BMW Open - Munich AEGON Championships - London Open de Moselle - Metz Open Sud de France - Montpellier Open 13 - Marseille Open de Nice Cote d'Azur - Nice AEGON Championships - London Moselle Open - Metz Aircel Chennai Open - Chennai Apia International - Sydney Open Sud de France - Montpellier Grand Prix Hassan II - Casablanca Barcelona Open BancSabadell - Barcelona AEGON Championships - London AEGON International - Eastbourne Hall of Fame Tennis Championships - Newport Credit Agricole Suisse Open - Gstaad Bet-at-home Cup - Kitzbuhel Winston-Salem Open - Winston-Salem Moselle Open - Metz If Stockholm Open - Stockholm Swiss Indoors Basel - Basel Qatar ExxonMobil Open - Doha Apia International - Sydney Open Sud de France - Montpellier Royal Guard Open Chile - Vina del Mar ABN AMRO World Tennis Tournament - Rotterdam Copa Claro - Buenos Aires Open 13 - Marseille Grand Prix Hassan II - Casablanca Barcelona Open BancSabadell - Barcelona Portugal Open - Oeiras Open de Nice Cote d'Azur - Nice AEGON Championships - London Topshelf Open - 's-Hertogenbosch SkiStar Swedish Open - Bastad Bet-at-home Open - Hamburg Credit Agricole Suisse Open - Gstaad Bet-at-home Cup - Kitzbuhel Moselle Open - Metz Malaysian Open - Kuala Lumpur Rakuten Japan Open - Tokyo Erste Bank Open - Vienna Swiss Indoors Basel - Basel Brisbane International - Brisbane Heineken Open - Auckland Open Sud de France - Montpellier Open 13 - Marseille Grand Prix Hassan II - Casablanca Barcelona Open BancSabadell - Barcelona Topshelf Open - 's-Hertogenbosch SkiStar Swedish Open - Bastad Bet-at-home Open - Hamburg Credit Agricole Suisse Open - Gstaad Austrian Open - Kitzbuhel Moselle Open - Metz Erste Bank Open - Vienna Valencia Open - Valencia Millennium Estoril Open - Estoril Aircel Chennai Open - Chennai Open Sud de France - Montpellier Rio Open - Rio de Janeiro Open 13 - Marseille Brasil Open - Sao Paulo Grand Prix Hassan II - Marrakech Barcelona Open BancSabadell - Barcelona BRD Nastase Tiriac Trophy - Bucharest Millennium Estoril Open - Estoril AEGON Championships - London Bet-at-home Open - Hamburg SkiStar Swedish Open - Bastad Generali Open - Kitzbuhel Moselle Open - Metz Rakuten Japan Open - Tokyo European Open - Antwerp Qatar ExxonMobil Open - Doha Open Sud de France - Montpellier Rio Open - Rio de Janeiro Brasil Open - Sao Paulo Grand Prix Hassan II - Marrakech Barcelona Open BancSabadell - Barcelona Millennium Estoril Open - Estoril AEGON Championships - London Konzum Croatia Open - Umag Bet-at-home Open - Hamburg Suisse Open - Gstaad Abierto Mexicano - Los Cabos Moselle Open - Metz Rakuten Japan Open - Tokyo European Open - Antwerp Swiss Indoors Basel - Basel ASB Classic - Auckland Open Sud de France - Montpellier Delray Beach Open - Delray Beach Open 13 Provence - Marseille Abierto Mexicano Telcel - Acapulco Barcelona Open BancSabadell - Barcelona Millennium Estoril Open - Estoril TEB BNP Paribas Istanbul Open - Istanbul Antalya Cup - Antalya Plava Laguna Croatia Open - Umag Swiss Open - Gstaad Generali Open - Kitzbuhel Winston-Salem Open - Winston-Salem Moselle Open - Metz Shenzhen Open - Shenzhen Rakuten Japan Open - Tokyo European Open - Antwerp Intrum Stockholm Open - Stockholm Swiss Indoors Basel - Basel Brisbane International - Brisbane Sydney International - Sydney Open Sud de France - Montpellier Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Brasil Open - Sao Paulo Grand Prix Hassan II - Marrakech Barcelona Open Banc Sabadell - Barcelona BMW Open - Munich Geneva Open - Geneva Open Parc - Lyon Nature Valley International - Eastbourne Plava Laguna Croatia Open - Umag Swiss Open - Gstaad Abierto Mexicano de Tenis Mifel - Los Cabos Rakuten Japan Open - Tokyo Tata Open Maharashtra - Pune Abierto Mexicano Telcel - Acapulco Forte Village Sardegna Open - Sardinia Sofia Open - Sofia Murray River Open - Melbourne Serbia Open - Belgrade BMW Open - Munich Nordea Open - Bastad Singapore Tennis Open - Singapore Anytech365 Andalucia Open - Marbella Adelaide International 1 - Adelaide Qatar ExxonMobil Open - Doha Dubai Duty Free Tennis Championships - Dubai Serbia Open - Belgrade cinch Championships - London Mallorca Championships - Mallorca Truist Atlanta Open - Atlanta Citi Open - Washington Winston-Salem Open - Winston-Salem Rakuten Japan Open - Tokyo Swiss Indoors Basel - Basel San Diego Open - San Diego Korea Open - Seoul Tennis Napoli Open - Naples Adelaide International 1 - Adelaide ASB Classic - Auckland Delray Beach Open - Delray Beach Abierto Mexicano Telcel - Acapulco Banja Luka Open - Banja Luka cinch Championships - London BNP Paribas Masters - Paris Sony Open Tennis - Miami Monte-Carlo Rolex Masters - Monte-Carlo BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Sony Open Tennis - Miami Monte-Carlo Rolex Masters - Monte-Carlo BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Miami Open - Miami Mutua Madrid Open - Madrid BNP Paribas Masters - Paris Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Internazionali BNL d'Italia - Rome Monte-Carlo Rolex Masters - Monte-Carlo Internazionali BNL d'Italia - Rome Shanghai Rolex Masters - Shanghai BNP Paribas Open - Indian Wells Miami Open - Miami Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai BNP Paribas Masters - Paris Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Internazionali BNL d'Italia - Rome Western & Southern Open - New York BNP Paribas Open - Indian Wells BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo National Bank Open - Montreal Western & Southern Open - Cincinnati BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Recanati Challenger Koblenz Challenger Porto Challenger Maia Challenger French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London US Men's Clay Court Championship - Houston New York Open - New York Plava Laguna Croatia Open - Umag Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London Citi Open - Washington U.S. Open - New York Australian Open - Melbourne French Open - Paris U.S. Open - New York Australian Open - Melbourne French Open - Paris U.S. Open - New York Australian Open Qualifying - Doha Australian Open - Melbourne French Open - Paris U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Davis Cup, World Group, QF, JPN-CZE 0-5 Davis Cup, World Group, PO, COL-JPN 2-3 Hopman Cup - Perth Davis Cup, World Group, 1R, GBR-JPN 3-1 Davis Cup, World Group, PO, JPN-UKR 5-0 Davis Cup, World Group, 1R, JPN-FRA 1-4 Davis Cup, World Group, 1R, JPN-ITA 1-3 Davis Cup, World Group, PO, JPN-BIH 4-0 Davis Cup, World Group, QR, CHN-JPN 2-3 Davis Cup, Qualifiers, 1R, SWE-JPN 3-2 French Open (juniors) Wimbledon (juniors) U.S. Open (juniors) All Lower level tournaments BNP Paribas Open - Indian Wells Olympics - Rio de Janeiro Davis Cup, Group I, PO, JPN-POL 4-0 Olympics - Tokyo