Career 2025 2024 2023 2022 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012 2011 2010 2009 2008 2007
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 Karlsruhe Challenger San Benedetto Challenger Wimbledon - London Luedenscheid Challenger Como Challenger U.S. Open - New York Bad Waltersdorf Challenger Alicante Challenger Tiburon Challenger Malaga Challenger M15 Monastir Fairfield Challenger Olbia Challenger M25 Saint-Augustin Calgary Challenger Charlottesville Challenger M25 Edmonton Drummondville Challenger Naples Challenger Noumea Challenger Australian Open - Melbourne Tenerife 1 Challenger Nonthaburi 3 Challenger Manama Challenger Pau Challenger Quimper Challenger Ottignies-Louvain-la-Neuve Challenger Cherbourg Challenger Open Sud de France - Montpellier BNP Paribas Open - Indian Wells Lille Challenger Phoenix Challenger Grand Prix Hassan II - Marrakech M25 Angers M25 Kursumlijska Banja French Open - Paris Tampere Challenger Grodzisk Mazowiecki Challenger Wimbledon - London Infosys Hall of Fame Open - Newport Hamburg Open - Hamburg Porto Challenger Zug Challenger M25 Guiyang Manacor Challenger M25 Fuzhou Rennes Challenger Istanbul Challenger Shanghai Rolex Masters - Shanghai Villena Challenger M25 Edmonton Olbia Challenger Calgary Challenger Valencia Challenger M25 Monastir Matsuyama Challenger Drummondville Challenger Banja Luka Challenger Thionville Challenger Mexico City Challenger Zug Challenger Iasi Challenger Royan Challenger M25 Doha Quimper Challenger Manzanillo Challenger Aix En Provence Challenger Puerto Vallarta Challenger Noumea Challenger Nonthaburi 2 Challenger Manama Challenger Australian Open - Melbourne Dubai Duty Free Tennis Championships - Dubai M25 Monastir Abidjan 1 Challenger M25 Santo Domingo Francavilla Challenger Tunis Challenger Cuernavaca Challenger Abidjan 2 Challenger Little Rock Challenger M25 Monastir Wimbledon - London France F8 France F10 France F11 France F15 France F17 France F19 Usa F1 Morocco F2 Tunisia F4 France F2 Morocco F2 Tunisia F16 Portugal F3 Tunisia F17 Tunisia F21 Tunisia F22 Tunisia F23 Tunisia F24 Tunisia F25 Tunisia F26 Tunisia F27 Tunisia F28 Tunisia F30 Tunisia F31 Tunisia F32 Tunisia F33 Portugal F2 Tunisia F20 Tunisia F21 Mozambique F1 Mozambique F2 Egypt F13 Egypt F14 Egypt F16 Morocco F4 Morocco F5 Morocco F6 Spain F7 Portugal F1 Spain F8 USA F32 USA F35 USA F40 Tunisia F21 (Hammamet) Tunisia F22 (Hammamet) France F6 Tunisia F23 (Hammamet) Tunisia F24 (Hammamet) USA F24 (Champaign) USA F26 (Decatur) USA F27 (Edwardsville) Great Britain F7 Belgium F9 (Koksijde) Belgium F10 (Lambermont) Tunisia F25 (Hammamet) Tunisia F26 (Hammamet) Tunisia F28 (Hammamet) Tunisia F29 (Hammamet) Great Britain F8 Tunisia F30 (Hammamet) Tunisia F31 (Hammamet) Tunisia F32 (Hammamet) Tunisia F33 (Hammamet) Tunisia F38 (Hammamet) Tunisia F39 (Hammamet) Tunisia F40 (Hammamet) Tunisia F5 (Jerba) USA F10 (Little Rock) Tunisia F20 (Jerba) Tunisia F22 (Hammamet) Tunisia F23 (Hammamet) Tunisia F24 (Hammamet) USA F19 (Wichita) Italy F17 USA F20 (Champaign) USA F21 (Decatur) USA F22 (Edwardsville) Romania F10 (Curtea de Arges) Tunisia F29 (La Marsa) Netherlands F2 Tunisia F37 (Monastir) Netherlands F3 France F10 France F11 Great Britain F10 Tunisia F38 (Monastir) Italy F24 Tunisia F39 (Monastir) Egypt F28 (Sharm El Sheikh) Cameroon F2 (Yaounde) Luxembourg F1 Tunisia F44 (Monastir) France F13 Tunisia F45 (Monastir) Sweden F1 Sweden F2 M25 Los Angeles Portugal F7 M25 Tucson Portugal F8 France F1 France F2 France F5 France F6 France F7 Great Britain F7 M15 Tabarka Slovenia F3 France F8 France F9 Great Britain F8 France F12 M15 Tabarka M15 Tabarka Austria F7 M15 Tabarka Italy F27 Portugal F4 Portugal F5 France F17 Germany F18 M15 Tabarka M25 Iowa City M15 Tabarka France F20 M15 Tabarka Usa F2 Usa F3 M25+H Lagos Portugal F1 Portugal F2 M15 Monastir M15 Monastir France F7 Spain F14 M15 Monastir M15 Monastir M15 Monastir France F12 M15 Sintra M15 Monastir M15 Monastir M15 Monastir M15 Monastir M15 Monastir M15 Monastir M15 Monastir M15 Monastir M15 Monastir M15 Monastir M15 Monastir M25 Klosters M25 Wroclaw M15 Monastir M15 Monastir M15 Monastir M15 Monastir M25 Monastir M25 Monastir M15 Monastir M15 Monastir M25 Monastir M15 Oran M15 Oran M15 Monastir M15 Monastir M15 Monastir M15 Monastir M15 Monastir M15 Monastir M15 Monastir M25 Saint-Augustin M25 Monastir M25 Monastir Morocco F3 Tunisia F6 Morocco F5 Tunisia F20 Cameroon F1 (Yaounde) M15 Tabarka M25 Pardubice M25 Champaign M15 Tabarka M25+H Bydgoszcz M25 La Marsa M25+H Lagos M25 Monastir M15 Meshref USA F19b (Iowa City) M15 Monastir M15 Monastir M15 Monastir M15 Monastir M15 Monastir M15 Monastir M25 Monastir M15 Monastir M25 Monastir Challenger 42 - Andrezieux Besancon Challenger Jersey Challenger St. Brieuc Challenger Bordeaux Challenger Arad Challenger St. Brieuc Challenger Rome Challenger Bordeaux Challenger San Benedetto Challenger Orbetello Challenger San Marino Challenger Le Gosier Challenger M15 Monastir Bergamo Challenger Cherbourg Challenger M25 Hammamet Quimper Challenger Le Gosier Challenger M25 Hammamet Milan Challenger San Benedetto Challenger Brest Challenger Mouilleron-Le-Captif Challenger Mouilleron-Le-Captif Challenger Mouilleron-Le-Captif Challenger Tallahassee Challenger Winnetka Challenger Mouilleron-Le-Captif Challenger Rennes Challenger Marbella Challenger Sophia Antipolis Challenger Tunis Challenger Winnetka Challenger Pune Challenger Morelos Challenger M25 Padova Calgary Challenger Forli Challenger Orlando Challenger Salinas 2 Challenger Aix En Provence Challenger Braunschweig Challenger Iasi Challenger Pozoblanco Challenger Barletta Challenger Kyiv Challenger Brest Challenger Tenerife Challenger Roanne Challenger Antalya 3 Challenger Phoenix Challenger San Luis Potosi Challenger Aguascalientes Challenger Morelos Challenger Chicago Challenger Vancouver Challenger Granby Challenger Rennes Challenger Braga Challenger Brest Challenger Charlottesville Challenger Matsuyama Challenger Drummondville Challenger Noumea Challenger Oeiras 1 Challenger Oeiras 2 Challenger Tenerife 1 Challenger Quimper Challenger Tenerife 2 Challenger Monterrey Challenger Waco Challenger Puerto Vallarta Challenger San Luis Potosi Challenger Savannah Challenger Leon Challenger Aix En Provence Challenger Francavilla Challenger Bordeaux Challenger Tunis Challenger Tyler Challenger Lyon Challenger Tampere Challenger Istanbul Challenger Columbus Challenger Orleans Challenger Brest Challenger Chennai Challenger Madrid Challenger Tunis Challenger Vicenza Challenger Zagreb Challenger Modena Challenger Trieste Challenger Como Challenger Taipei 2 Challenger M25 Monastir M25 Les Franqueses del Valles M15 Monastir Open 13 - Marseille Heineken Open - Auckland Open 13 - Marseille Gerry Weber Open - Halle If Stockholm Open - Stockholm Open Sud de France - Montpellier Open de Tenis Comunidad Valenciana - Valencia ABN AMRO World Tennis Tournament - Rotterdam Open Sabadell Atlantico - Barcelona Open de Nice Cote d'Azur - Nice Mercedes Cup - Stuttgart Open de Moselle - Metz Open de Tenis Comunidad Valenciana - Valencia Aircel Chennai Open - Chennai Heineken Open - Auckland Brasil Open - Sao Paulo Copa Claro - Buenos Aires Abierto Mexicano Telcel - Acapulco Grand Prix Hassan II - Casablanca Open Sabadell Atlantico - Barcelona Serbia Open - Belgrade UNICEF Open - 's Hertogenbosch Mercedes Cup - Stuttgart Credit Agricole Suisse Open - Gstaad Farmers Classic - Los Angeles Citi Open - Washington Winston-Salem Open - Winston-Salem Moselle Open - Metz Rakuten Japan Open - Tokyo Erste Bank Open - Vienna Swiss Indoors Basel - Basel Aircel Chennai Open - Chennai Heineken Open - Auckland Open Sud de France - Montpellier ABN AMRO World Tennis Tournament - Rotterdam Open 13 - Marseille Abierto Mexicano Telcel - Acapulco Grand Prix Hassan II - Casablanca Barcelona Open BancSabadell - Barcelona Portugal Open - Oeiras AEGON Championships - London Topshelf Open - 's-Hertogenbosch Mercedes Cup - Stuttgart Bet-at-home Open - Hamburg Winston-Salem Open - Winston-Salem Aircel Chennai Open - Chennai Heineken Open - Auckland Grand Prix Hassan II - Casablanca Barcelona Open BancSabadell - Barcelona AEGON Championships - London Bet-at-home Open - Hamburg Citi Open - Washington Winston-Salem Open - Winston-Salem Open Sud de France - Montpellier Open 13 - Marseille Barcelona Open BancSabadell - Barcelona TEB BNP Paribas Istanbul Open - Istanbul Open de Nice Cote d'Azur - Nice Topshelf Open - 's-Hertogenbosch Gerry Weber Open - Halle SkiStar Swedish Open - Bastad Bet-at-home Open - Hamburg Rakuten Japan Open - Tokyo Valencia Open - Valencia Aircel Chennai Open - Chennai ASB Classic - Auckland Open Sud de France - Montpellier ABN AMRO World Tennis Tournament - Rotterdam Open 13 - Marseille Brasil Open - Sao Paulo US Men's Clay Court Championship - Houston Barcelona Open BancSabadell - Barcelona Millennium Estoril Open - Estoril Open de Nice Cote d'Azur - Nice AEGON Championships - London Citi Open - Washington Moselle Open - Metz Shenzhen Open - Shenzhen Rakuten Japan Open - Tokyo European Open - Antwerp Swiss Indoors Basel - Basel Aircel Chennai Open - Chennai Open Sud de France - Montpellier ABN AMRO World Tennis Tournament - Rotterdam Open 13 - Marseille Dubai Duty Free Tennis Championships - Dubai Grand Prix Hassan II - Marrakech Barcelona Open BancSabadell - Barcelona Millennium Estoril Open - Estoril San Remo Challenger Mercedes Cup - Stuttgart Konzum Croatia Open - Umag Bet-at-home Open - Hamburg European Open - Antwerp Swiss Indoors Basel - Basel Maharashtra Open - Pune Sydney International - Sydney Dubai Duty Free Tennis Championships - Dubai Barcelona Open BancSabadell - Barcelona Mercedes Cup - Stuttgart Gerry Weber Open - Halle Plava Laguna Croatia Open - Umag Citi Open - Washington Moselle Open - Metz Rakuten Japan Open - Tokyo Kremlin Cup - Moscow Tata Open Maharashtra - Pune ASB Classic - Auckland Grand Prix Hassan II - Marrakech Barcelona Open Banc Sabadell - Barcelona BMW Open - Munich Open Parc - Lyon Noventi Open - Halle Turkish Airlines Open Antalya - Antalya Citi Open - Washington Winston-Salem Open - Winston-Salem Moselle Open - Metz Chengdu Open - Chengdu Rakuten Japan Open - Tokyo Swiss Indoors Basel - Basel ASB Classic - Auckland Tata Open Maharashtra - Pune ABN AMRO World Tennis Tournament - Rotterdam Open 13 Provence - Marseille Dubai Duty Free Tennis Championships - Dubai bett1HULKS Indoors - Cologne Astana Open - Nur-Sultan Hamburg European Open - Hamburg Delray Beach Open - Delray Beach Cordoba Open - Cordoba Chile Dove Men+Care Open - Santiago Gonet Geneva Open - Geneva M25 Monastir Swiss Open - Gstaad Citi Open - Washington Sofia Open - Sofia European Open - Antwerp Emilia-Romagna Open - Parma Astana Open - Nur-Sultan Melbourne Summer Set - Melbourne Adelaide International 2 - Adelaide Cordoba Open - Cordoba Rio Open - Rio de Janeiro Abierto Mexicano Telcel - Acapulco Barcelona Open Banc Sabadell - Barcelona Gonet Geneva Open - Geneva Mercedes Cup - Stuttgart Swiss Open - Gstaad Truist Atlanta Open - Atlanta Abierto de Tenis Mifel - Los Cabos Firenze Open - Florence Tennis Napoli Open - Naples Open Sud de France - Montpellier Barcelona Open Banc Sabadell - Barcelona US Men's Clay Court Championship - Houston Open Prevadies St. Brieuc Cotes D'Amor - St. Brieuc Trofeo Cassa di Risparmio di Alessandria - Alessandria Salzburg Challenger Noumea Challenger Cherbourg Challenger Rabat Challenger Cordenons Challenger Monza Challenger Marburg Challenger San Benedetto Challenger Cordenons Challenger San Sebastian Challenger Orleans Challenger Todi Challenger Trnava Challenger BNP Paribas Masters - Paris Salzburg Challenger Napoli Challenger Monte-Carlo Rolex Masters - Monte-Carlo Tarragona Challenger BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Sony Ericsson Open - Miami Shanghai Rolex Masters - Shanghai BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Sony Open Tennis - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Rogers Cup - Montreal Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai BNP Paribas Masters - Paris Monte-Carlo Rolex Masters - Monte-Carlo Rogers Cup - Toronto Western & Southern Open - Cincinnati Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Internazionali BNL d'Italia - Rome Western & Southern Open - Cincinnati BNP Paribas Masters - Paris Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Rogers Cup - Toronto Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Rogers Cup - Montreal Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Internazionali BNL d'Italia - Rome Rogers Cup - Toronto Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Miami Open - Miami Internazionali BNL d'Italia - Rome Coupe Rogers - Montreal Shanghai Rolex Masters - Shanghai Courmayeur Challenger BNP Paribas Masters - Paris Internazionali BNL d'Italia - Rome Miami Open - Miami Casablanca Challenger Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Rogers Cup - Toronto Cherbourg Challenger Western & Southern Open - Cincinnati Rolex Paris Masters - Paris Noumea Challenger BNP Paribas Open - Indian Wells Miami Open - Miami Trani Challenger Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid National Bank Open - Montreal Western & Southern Open - Cincinnati Rabat Challenger Miami Open - Miami Mutua Madrid Open - Madrid Miami Open - Miami Caltanissetta Challenger Rennes Challenger Ostrava Challenger Braunschweig Challenger Tampere Challenger San Sebastian Challenger Como Challenger Brasov Challenger Todi Challenger Napoli Challenger Palermo Challenger Orleans Challenger Helsinki Challenger Le Gosier Challenger French Open - Paris French Open - Paris French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne Bordeaux Challenger 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 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 Orleans Challenger Casablanca Challenger Genova Challenger Sophia Antipolis Challenger Todi Challenger Sao Paulo Challenger Campinas Challenger Salinas Challenger Biella 7 Challenger Bratislava Challenger Maia 1 Challenger Milan Challenger Calgary Challenger Morelos Challenger Australian Open - Melbourne San Marino Challenger French Open - Paris Phoenix Challenger Wimbledon - London U.S. Open - New York Australian Open - Melbourne Genova Challenger Wimbledon - London U.S. Open - New York Charleston Challenger Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Maia Challenger French Open - Paris Wimbledon - London U.S. Open - New York Biel Challenger Australian Open - Melbourne French Open - Paris Wimbledon - London Australian Open - Melbourne French Open - Paris Lille Challenger Rome Challenger Barletta Challenger Skopje Challenger Little Rock Challenger Seoul Challenger Lille Challenger Tyler Challenger Pau Challenger Troyes Challenger Segovia Challenger Cassis Challenger Rennes Challenger Orleans Challenger Lisbon Challenger Salinas Challenger Heineken Open - Auckland AEGON Championships - London Moselle Open - Metz Valencia Open - Valencia Mercedes Cup - Stuttgart Vegeta Croatia Open - Umag Open 13 - Marseille Open de Nice Cote d'Azur - Nice Winston-Salem Open - Winston-Salem St. Petersburg Open - St. Petersburg Bet-at-home Open - Hamburg Apia International - Sydney Open Parc - Lyon Moselle Open - Metz Open Sud de France - Montpellier Grand Prix Hassan II - Marrakech German Tennis Championships - Hamburg Winston-Salem Open - Winston-Salem Open Sud de France - Montpellier Open 13 Provence - Marseille Dubai Duty Free Tennis Championships - Dubai German Tennis Championships - Hamburg Gerry Weber Open - Halle If Stockholm Open - Stockholm Abierto Mexicano Telcel - Acapulco Truist Atlanta Open - Atlanta Winston-Salem Open - Winston-Salem Qatar ExxonMobil Open - Doha Grand Prix de Tennis de Lyon - Lyon Hong Kong Tennis Open - Hong Kong Hopman Cup - Perth Dubai Duty Free Tennis Championships - Dubai Davis Cup, Group II, 1R, TUN-SWE 2-3 Davis Cup, Group II, PO, CYP-TUN 1-4 Davis Cup, Group II, 1R, TUN-FIN 2-3 Davis Cup, World Group, SF, FRA-ESP 3-2 ATP Cup - Brisbane, Perth, Sydney Davis Cup, World Group II, PO, GUA-TUN 1-3 Davis Cup, Group II, 1R, TUN-GRE 1-3 Hong Kong Tennis Open - Hong Kong Open Occitanie - Montpellier Davis Cup, World Group II, 1R, TUN-IRL 3-2 Qatar ExxonMobil Open - Doha Rakuten Japan Open - Tokyo Rakuten Japan Open - Tokyo Gonet Geneva Open - Geneva Topshelf Open - 's-Hertogenbosch Swiss Indoors Basel - Basel ABN AMRO World Tennis Tournament - Rotterdam Argentina Open - Buenos Aires Hamburg European Open - Hamburg Millennium Estoril Open - Estoril Citi Open - Washington Sofia Open - Sofia Argentina Open - Buenos Aires San Marino Challenger Barcelona Open Banc Sabadell - Barcelona cinch Championships - London Mutua Madrid Open - Madrid BNP Paribas Open - Indian Wells BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Mutua Madrid Open - Madrid Mutua Madrid Open - Madrid Western & Southern Open - Cincinnati BNP Paribas Open - Indian Wells Western & Southern Open - New York Internazionali BNL d'Italia - Rome BNP Paribas Masters - Paris Monte-Carlo Rolex Masters - Monte-Carlo French Open - Paris French Open - Paris Australian Open - Melbourne U.S. Open - New York French Open - Paris U.S. Open - New York Davis Cup, Group II, PO, TUN-BUL 3-2 Davis Cup, Finals, Group A ATP Cup - Melbourne Davis Cup, Group II, 1R, GEO-TUN 4-1 Davis Cup, Group I, PO, TUN-UKR 3-2 French Open (juniors) All Lower level tournaments Australian Open (juniors) French Open (juniors) Wimbledon (juniors) Olympics - Rio de Janeiro