Career 2025 2024 2023 2022 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012 2011 2010 2009 2008 2007 2006 2005 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 M15 Sharm ElSheikh Shanghai Challenger M25 Tamworth France F3 Nigeria F2 Algeria F1 Algeria F2 Saudi Arabia F1 Saudi Arabia F2 Tunisia F1 Tunisia F2 Morocco F3 Iran F1 Iran F2 Italy F22 France F19 France F20 Tunisia F6 UAE F1 Qatar F1 Portugal F3 France F5 Morocco F1 Morocco F2 Tunisia F2 Tunisia F3 France F9 France F17 Tunisia F4 Egypt F2 Egypt F3 Spain F19 France F19 Tunisia F4 Tunisia F6 Tunisia F7 France F1 France F3 Egypt F1 Egypt F2 Egypt F3 Tunisia F2 Turkey F2 Kuwait F2 Tunisia F1 Austria F4 Austria F5 Austria F6 Romania F15 France F17 France F18 United Arab Emirates F1 Morocco F1 Morocco F2 Spain F11 Spain F15 Spain F16 Kuwait F1 Kuwait F2 Tunisia F1 Tunisia F2 Tunisia F3 Georgia F1 Georgia F2 France F19 Morocco F1 Morocco F2 Spain F7 Italy F2 Italy F3 France F6 Italy F8 Tunisia F1 Tunisia F2 Spain F29 Netherlands F5 Morocco F7 Spain F35 Spain F36 Egypt F4 Egypt F5 Spain F39 Sudan F1 Sudan F2 Colombia F1 Colombia F2 Italy F5 Great Britain F7 Netherlands F1 Great Britain F8 Canada F3 Canada F4 Kazakhstan F4 Canada F6 Canada F7 Tunisia F1 USA F5 USA F6 Canada F1 Canada F2 Italy F7 Italy F8 Canada F6 Mexico F12 Mexico F14 USA F1 USA F2 USA F3 Canada F1 Canada F2 Greece F5 Greece F8 Canada F3 Canada F4 Canada F5 Canada F6 Nigeria F1 Canada F9 Canada F4 Mexico F13 Canada F1 Canada F2 Canada F3 Canada F4 France F1 France F2 France F3 Tunisia F5 Tunisia F6 Canada F2 Great Britain F5 Canada F5 France F11 France F12 France F13 Canada F7 Canada F8 Tunisia F3 Canada F9 Canada F10 Canada F11 France F21 France F22 France F23 Great Britain F10 Great Britain F11 USA F8 Canada F1 Canada F2 China F8 Canada F3 Canada F4 Canada F6 Canada F7 Canada F8 Canada F9 USA F3 (Plantation) USA F4 (Sunrise) USA F5 (Weston) USA F6 (Palm Coast) USA F7 (Orlando) USA F8 (Indian Harbour Beach) Canada F1 (Gatineau) Canada F2 (Sherbrooke) Egypt F12 (Sharm El Sheikh) Egypt F13 (Sharm El Sheikh) Italy F23 Egypt F14 (Sharm El Sheikh) Egypt F15 (Sharm El Sheikh) Israel F6 (Akko) Israel F7 (Herzlia) Israel F8 (Netanya) USA F17 (Winston-Salem) USA F19 (Winston-Salem) Canada F3 (Kelowna) Canada F4 (Saskatoon) France F21 Canada F5 (Calgary) Greece F6 Canada F2 (Sherbrooke) Canada F7 M15 Sharm El Sheikh M15 Sharm El Sheikh M15 Sharm El Sheikh Canada F8 M25 Prague M25 Most M15 Monastir M25 Wroclaw M15 Poprad M15 Esch/Alzette M15 Gdynia Greece F7 M15 Lodz M25 Johannesburg / Markspark M25 Johannesburg / Ellispark M25 Pretoria M25 Nur-Sultan M25 Nur-Sultan M25 Meitar M25 Afula France F22 M25 Cancun M25 Santo Domingo M15 Monastir M25 Nottingham Canada F11 Tunisia F5 France F13 France F6 France F7 Belgium F2 Tunisia F4 Tunisia F5 Tunisia F1 Qatar F2 Qatar F3 Portugal F2 Italy F12 Italy F13 Iran F1 Iran F2 France F12 France F17 France F18 Tunisia F5 China F1 France F3 Poland F1 Poland F2 Great Britain F3 France F15 United Arab Emirates F2 Netherlands F6 M25 Idanha-a-Nova France F2 China F2 France F2 M15 Helsinki M25 Aldershot Great Britain F4 Morocco F4 M25 Roehampton M15 Sharm ElSheikh M15 Singapore Mordovia Cup 2005 - Saransk M25 Glasgow M25 Afula M25 Weston Open D'Orleans - Orleans M25 Astana M25 Santo Domingo Marrakech Challenger Canada F9 M25 Nottingham M25 Nottingham Tunis Challenger M25 Nottingham Tunis Open 2006 - Tunis Saransk Challenger M25 Marburg Como Challenger Tulsa Challenger Quito Challenger Sacramento Challenger M15 Monastir Tanger Challenger M15 Sharm ElSheikh M25 Monastir Tunis Open 2007 - Tunis M25 Bodrum M15 Luan M25 Tamworth M25 Perth M15 Szabolcsveresmart M25 Sunderland M15 Nonthaburi M15 Tsukuba M15 Luan M15 Monastir Rabat Challenger M25 Nottingham M15 Kashiwa Granby Challenger M15 Monastir Penza Challenger Astana Challenger Samarkand Challenger M25 Grodzisk Mazowiecki M15 Sharm ElSheikh M15 Dublin M25 Herzlia Istanbul Challenger M15 Hua Hin M15 Monastir M25 Pozzuoli Mons Challenger M25 Tulsa Rennes Challenger M15 Monastir The LTA Men's Challenger - Southampton Eckental Challenger Geneva Challenger M15 Sharm ElSheikh M25 Hillcrest Quimper Challenger Kyoto Challenger Rimouski Challenger Barletta Challenger Tunis Challenger Vancouver Challenger Tunis Challenger Timisoara Challenger Granby Challenger Lexington Challenger Shanghai Challenger Istanbul Challenger Izmir Challenger Fergana Challenger Tiburon Challenger Champaign Challenger Maui Challenger Chitre Challenger Dallas Challenger Morelos Challenger Rimouski Challenger Bordeaux Challenger Karshi Challenger M25 Monastir M15 Hillcrest Togliatti Cup - Togliatti M25 Glasgow Lexington Challenger Izmir Challenger Rabat Challenger M15 Hillcrest Knoxville Challenger M25 Heraklion San Sebastian Challenger Drummondville Challenger Meknes Challenger Prague Challenger Ilkley Challenger M25 Sunderland San Benedetto Challenger Mons Challenger Rennes Challenger M15 Heraklion M25 Heraklion Launceston Challenger Nossa Caixa Tennis Cup - Sao Paulo Timisoara Challenger - Timisoara Nanjing Challenger Seoul Challenger Bangkok Challenger M25 Loughborough M25 Sunderland Heilbronn Challenger Istanbul Challenger M25 Bath M15 Monastir Ho Chi Minh City Challenger Sacramento Challenger M25 Loule M25 Quinta Do Lago M25 Portimao Busan Challenger M15 Nonthaburi Turin Challenger M15 Luan Challenger Ford de Cherbourg - Cherbourg Tanger Challenger Surbiton Challenger Guadalajara Challenger Sao Paulo Challenger M25 Reggio Emilia Kosice Challenger Winnipeg Challenger Gatineau Challenger Granby Challenger Binghamton Challenger Istanbul Challenger Aptos Challenger Istanbul Challenger M25 Rome Knoxville Challenger Dallas Challenger San Francisco Challenger Qujing Challenger Geneva Challenger Charlottesville Challenger Tunis Challenger Leon Challenger M15 Szabolcsveresmart Alessandria Challenger Surbiton Challenger Ilkley Challenger Aix En Provence Challenger Zhangjiagang Challenger Bangkok Challenger Calgary Challenger Tunis Challenger M25 Netanya Columbus Challenger Shenzhen Challenger Seoul Challenger Shenzhen Challenger Jerusalem Challenger M25 Netanya Shymkent Challenger Vancouver Challenger Granby Challenger Milan Challenger Istanbul Challenger M15 Monastir Nur-Sultan 3 Challenger Vancouver Challenger Kaohsiung Challenger Morelos Challenger M25 Cairns Champaign Challenger M25 Poznan Orlando Challenger Le Gosier Challenger Bucaramanga Challenger M15 Singapore M15 Ipoh Perak Grodzisk Mazowiecki Challenger Seoul Challenger Vercelli Challenger Aix En Provence Challenger Grodzisk Mazowiecki Challenger Knoxville Challenger Gimcheon Challenger M15 Monastir M15 Heraklion Marrakech Challenger M15 Heraklion Aptos Challenger Nottingham Challenger Vancouver Challenger M15 Monastir M15 Monastir M25 Nottingham M25 Perth M25 Nottingham Winnipeg Challenger Izmir Challenger Bangkok Challenger Drummondville Challenger Leon Challenger Izmir Challenger M25 Wichita Brest Challenger Shenzhen Challenger Lexington Challenger Marbella Challenger Granby Challenger Belgrade Challenger Braunschweig Challenger Liberec Challenger Izmir Challenger Cali Challenger Bordeaux Challenger Orleans Challenger Charleston Challenger Aptos Challenger M15 Sharm ElSheikh Bergamo Challenger Charlottesville Challenger Newport Beach Challenger Cherbourg Challenger Wuxi Challenger Zhuhai Challenger Drummondville Challenger Guadalajara Challenger Busan Challenger Tyler Challenger Gatineau Challenger Shanghai Challenger Liuzhou Challenger Bangalore Challenger Newport Beach Challenger Cleveland Challenger Dallas Challenger Yokohama Challenger Zhangjiagang Challenger Busan Challenger Manila Challenger Granby Challenger Gwangju Challenger Recanati Challenger Parma Challenger New Haven Challenger Orleans Challenger Astana Challenger Prague Challenger Iasi Challenger Biella 2 Challenger M25 Brisbane M25 Brisbane M15 Bologna Nur-Sultan 4 Challenger Segovia Challenger Verona Challenger Qatar Open - Doha M15 Sharm ElSheikh Bogota Challenger Las Vegas Challenger Charlottesville Challenger Champaign Challenger Bengalaru 1 Challenger Lille Challenger Tunis Challenger Troisdorf Challenger Little Rock Challenger Bratislava Challenger Corrientes Challenger Milan Challenger Buenos Aires 3 Challenger Rome Challenger Granby Challenger Toulouse Challenger Cassis Challenger Santos Challenger Alicante Challenger Fairfield Challenger Ambato Challenger Tunis Open - Tunis Ethias Tennis Trophy - Mons Roseto Degli Abruzzi Challenger Ostrava Challenger Pozoblanco Challenger Zhangjiagang Challenger Grand Prix de Tennis de Lyon - Lyon Glasgow Challenger Little Rock Challenger Tunis Open - Tunis Zhuhai Challenger Brisbane 3 Challenger Glasgow Challenger Nur-Sultan Challenger Liuzhou Challenger Charlottesville Challenger Bangkok Challenger Bangkok Challenger Bengalaru Challenger Drummondville Challenger Ostrava Challenger Sibiu Challenger Split Challenger Milan Challenger Cremona Challenger Knoxville Challenger Kazan Challenger Pingguo Challenger Istanbul Challenger Le Gosier Challenger Furth Challenger Open Sabadell Atlantico - Barcelona Genova Challenger Izmir Challenger Tashkent Challenger Seoul Challenger Geneva Challenger Rimouski Challenger Meknes Challenger Grand Prix Hassan II - Casablanca San Luis Potosi Challenger Troyes Challenger Marrakech Challenger Tiburon Challenger Little Rock Challenger St. Brieuc Challenger Winston-Salem Open - Winston-Salem Kremlin Cup - Moscow Bogota Challenger Monza Challenger Santos Challenger Grand Prix Hassan II - Casablanca Citi Open - Washington Vancouver Challenger China Open - Beijing Kremlin Cup - Moscow Grand Prix Hassan II - Casablanca BRD Nastase Tiriac Trophy - Bucharest Hall of Fame Tennis Championships - Newport Claro Open Colombia - Bogota Tunis Challenger Dubai Duty Free Tennis Championships - Dubai Mercedes Cup - Stuttgart Gerry Weber Open - Halle Winston-Salem Open - Winston-Salem Shenzhen Open - Shenzhen Open Sud de France - Montpellier Dubai Duty Free Tennis Championships - Dubai Grand Prix Hassan II - Marrakech Barcelona Open BancSabadell - Barcelona Dubai Duty Free Tennis Championships - Dubai Grand Prix Hassan II - Marrakech Barcelona Open BancSabadell - Barcelona TEB BNP Paribas Istanbul Open - Istanbul Winston-Salem Open - Winston-Salem China Open - Beijing Sydney International - Sydney Qatar Exxon Mobil Open - Doha Vercelli Challenger Qatar ExxonMobil Open - Doha Granby Challenger Rome Challenger Belgrade 2 - Belgrade Dubai Duty Free Tennis Championships - Dubai Banja Luka Challenger Singapore Tennis Open - Singapore Sardegna Open - Cagliari Caltanissetta Challenger Generali Open - Kitzbuhel Dubai Duty Free Tennis Championships - Dubai Dubai Duty Free Tennis Championships - Dubai M15 Sharm ElSheikh M25 Jerusalem Manchester Challenger Delray Beach Open - Delray Beach Qatar ExxonMobil Open - Doha Dubai Duty Free Tennis Championships - Dubai Grand Prix Hassan II - Casablanca Open de Nice Cote d'Azur - Nice AEGON Championships - London UNICEF Open - 's Hertogenbosch M25 Sheffield Charlottesville Challenger Champaign Challenger Dubai Duty Free Tennis Championships - Dubai Bratislava Challenger Guangzhou Challenger ASB Classic - Auckland Citi Open - Washington Qatar ExxonMobil Open - Doha Gatineau Challenger Puebla Challenger M15 Monastir Hall of Fame Tennis Championships - Newport Malaysian Open - Kuala Lumpur Orleans Challenger Valencia Open - Valencia Anning Challenger Open 13 - Marseille Qatar ExxonMobil Open - Doha Open Sud de France - Montpellier U.S. National Indoor Tennis Championships - Memphis Dubai Duty Free Tennis Championships - Dubai Cassis Challenger Fairfield Challenger Aegon Nottingham Open - Nottingham Columbus Challenger Astana Challenger Stockton Challenger Arad Challenger BB&T Atlanta Open - Atlanta Citi Open - Washington M25 Hua Hin Winston-Salem Open - Winston-Salem Mouilleron-Le-Captif Challenger Champaign Challenger Calgary Challenger Canberra Challenger St. Brieuc Challenger Qatar ExxonMobil Open - Doha Pau Challenger Garanti Koza Sofia Open - Sofia Drummondville Challenger Tashkent Challenger Memphis Open - Memphis Delray Beach Open - Delray Beach Barcelona Open BancSabadell - Barcelona Guadalajara Challenger BMW Open - Munich Aegon Nottingham Open - Nottingham Rennes Challenger Cordoba Open - Cordoba Samarkand Challenger Granby Challenger Citi Open - Washington Mestre Challenger Winnetka Challenger If Stockholm Open - Stockholm Qatar ExxonMobil Open - Doha Forli 2 Challenger Shenzhen Challenger Roseto Degli Abruzzi 2 Challenger Millennium Estoril Open - Estoril Blois Challenger Dubai Duty Free Tennis Championships - Dubai China Open - Beijing Mercedes Cup - Stuttgart Zhuhai Challenger BB&T Atlanta Open - Atlanta Citi Open - Washington Columbus Challenger Shenzhen Open - Shenzhen Qatar ExxonMobil Open - Doha Vancouver Challenger Garanti Koza Sofia Open - Sofia Cary Challenger Tiburon Challenger Ningboo Challenger Las Vegas Challenger Knoxville Challenger Champaign Challenger Citi Open - Washington Chengdu Open - Chengdu Shenzhen Open - Shenzhen Burnie Challenger Tata Open Maharashtra - Pune Prague II Challenger Alicante Challenger Parma Challenger Biella 1 Challenger Grand Prix Hassan II - Marrakech Millennium Estoril Open - Estoril Forli Challenger Swiss Open - Gstaad Citi Open - Washington Nottingham Challenger Winston-Salem Open - Winston-Salem San Marino Challenger Barletta Challenger Tata Open Maharashtra - Pune Antalya Open - Antalya Barcelona Open Banc Sabadell - Barcelona Qatar ExxonMobil Open - Doha Drummondville Challenger Tunis Challenger Qatar ExxonMobil Open - Doha Dubai Duty Free Tennis Championships - Dubai Aguascalientes Challenger Grand Prix Hassan II - Marrakech Zhangjiagang Challenger Open 13 - Marseille Playford Challenger Sydney Challenger Hamburg Challenger China Open - Beijing Brisbane International - Brisbane Shanghai Challenger Ricoh Open - 's-Hertogenbosch Kremlin Cup - Moscow Tiburon Challenger Swiss Indoors Basel - Basel Brasil Open - Sao Paulo Orlando Challenger Almaty Challenger Barletta Challenger Columbus Challenger Francavilla Challenger Launceston Challenger Barcelona Challenger Guangzhou Challenger Ostrava Challenger Bratislava Challenger Forli 2 Challenger Poznan Challenger Calgary Challenger Split Challenger If Stockholm Open - Stockholm Rogers Cup - Toronto BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Rogers Cup - Montreal Internazionali BNL d'Italia - Rome Sony Open Tennis - Miami Rogers Cup - Toronto Shanghai Rolex Masters - Shanghai Western & Southern Open - Cincinnati Miami Open - Miami Open 13 Provence - Marseille Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai Rogers Cup - Toronto Winston-Salem Open - Winston-Salem Western & Southern Open - Cincinnati BNP Paribas Masters - Paris Gerry Weber Open - Halle Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Coupe Rogers - Montreal Western & Southern Open - Cincinnati Miami Open - Miami BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Rogers Cup - Montreal Miami Open - Miami Internazionali BNL d'Italia - Rome Monte-Carlo Rolex Masters - Monte-Carlo BNP Paribas Open - Indian Wells Moselle Open - Metz Abierto Mexicano Telcel - Acapulco Open Sabadell Atlantico - Barcelona BB&T Atlanta Open - Atlanta Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Kremlin Cup - Moscow Australian Open - Melbourne U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York French Open - Paris Wimbledon - London U.S. Open - New York Wimbledon - London U.S. Open - New York Australian Open - Melbourne Australian Open - Melbourne French Open - Paris U.S. Open - New York French Open - Paris French Open - Paris Wimbledon - London French Open - Paris Wimbledon - London Australian Open - Melbourne U.S. Open - New York Australian Open - Melbourne Rogers Cup - Montreal French Open - Paris U.S. Open - New York Australian Open - Melbourne Wimbledon - London U.S. Open - New York U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London Wimbledon - London Davis Cup, Group 2, PO, SLO-TUN 4-1 Davis Cup, Group II, PO, TUN-BLR 2-3 Davis Cup, World Group, QF, BEL-CAN 5-0 Davis Cup, Group II, 1R, TUN-SWE 2-3 Zhuhai Open - Zhuhai Davis Cup, Group II, 1R, TUN-FIN 2-3 Davis Cup, Group 2, 2R, POR-TUN 4-1 Davis Cup, Group 2, PO, LAT-TUN 3-2 Davis Cup, Group II, PO, IRL-TUN 3-2 Davis Cup, Group II, 1R, GBR-TUN 4-1 Davis Cup, Group II, PO, TUN-BUL 3-2 French Open (juniors) U.S. Open (juniors) Australian Open (juniors) French Open (juniors) Wimbledon (juniors) U.S. Open (juniors) M15 Forli Davis Cup, Group II, PO, CYP-TUN 1-4 Davis Cup, World Group II, PO, GUA-TUN 1-3 Davis Cup, Group I, PO, TUN-BIH 1-3 Davis Cup, Group II, 1R, BIH-TUN 3-1 Australian Open (juniors) Wimbledon (juniors) Davis Cup, Group II, PO, EST-TUN 3-2 Olympics - London Olympics - Rio de Janeiro M25 Astana