Career 2023 2022 2021 2020 2019 2018 2017 2016 2015 2014 2013
All Surfaces Clay Grass Hard I.hard
All Rounds Final 1/2 1/4 First Second Third Fourth Qualifying q-First q-Second Pre-q Rubber 1 Rubber 2 Rubber 3 Rubber 4 Rubber 5 Robin Bronze N/A ER Q4 CR QF Q5 N/A
All Tournaments Gwangju Challenger Seoul Challenger Lille Challenger French Open - Paris Busan Challenger Troisdorf Challenger St. Brieuc Challenger Open Parc - Lyon Wimbledon - London Milan Challenger Las Franquesas del Valles Challenger US Men's Clay Court Championship - Houston Buenos Aires Challenger Florianopolis Challenger French Open (juniors) Wimbledon (juniors) U.S. Open (juniors) Sydney Challenger Australian Open (juniors) Open Sud de France - Montpellier French Open (juniors) Quimper Challenger Aix En Provence Challenger Bordeaux Challenger Rennes Challenger Bangalore Challenger Pune Challenger Canberra Challenger Mouilleron-Le-Captif Challenger Australian Open - Melbourne Australian Open (juniors) Open Sud de France - Montpellier French Open - Paris Noumea Challenger Canberra Challenger Launceston Challenger Bergamo Challenger New Delhi Challenger Kyoto Challenger Raanana Challenger Le Gosier Challenger Bordeaux Challenger Furth Challenger Australia F2 Israel F5 Israel F6 France F8 France F9 Prague Challenger Poznan Challenger Gimcheon Challenger Recanati Challenger Segovia Challenger Netherlands F2 France F12 Korea F3 St. Remy Challenger Meknes Challenger Rome Challenger Korea F4 Korea F5 Serbia F4 Poland F5 Poland F6 Mohammedia Challenger Casablanca Challenger Brest Challenger Australia F5 Australia F6 Australia F7 Guayaquil Challenger Canberra Challenger Bogota Challenger Australia F9 Australia F10 Australian Open (Australia, Wildcard) Australian Open - Melbourne French Open - Paris Winston-Salem Open - Winston-Salem U.S. Open - New York Shenzhen Open - Shenzhen Happy Valley Challenger Koblenz Challenger Rennes Challenger Burnie Challenger Quimper Challenger Launceston Challenger Budapest Challenger Cherbourg Challenger Kyoto Challenger Yokohama Challenger Santiago Challenger Buenos Aires Challenger Guadalajara Challenger St. Brieuc Challenger France F1 (Bagnoles-de-l'Orne) Japan F2 (Nishi-Tokyo) Sophia Antipolis Challenger Barletta Challenger Gimcheon Challenger Aix En Provence Challenger Seoul Challenger Busan Challenger Bordeaux Challenger Prostejov Challenger Lyon Challenger Japan F3 (Kofu) Indonesia F4 (Jakarta) Indonesia F5 (Jakarta) Indonesia F6 (Jakarta) Italy F9 (Santa Margherita Di Pula) France F9 (Angers) Winnipeg Challenger San Benedetto Challenger Gatineau Challenger Granby Challenger Prague Challenger Biella Challenger Lexington Challenger Vancouver Challenger Meerbusch Challenger USA F19 (Winston-Salem) USA F21 (Tulsa) Canada F4 (Saskatoon) Seville Challenger Istanbul Challenger Izmir Challenger Rome Challenger Kaohsiung Challenger Buenos Aires Challenger Cali Challenger Lima Challenger Ho Chi Minh City Challenger Mouilleron-Le-Captif Challenger Kobe Challenger Toyota Challenger Hua Hin Challenger Thailand F8 (Nonthaburi) Thailand F9 (Pattaya) Australian Open - Melbourne Open Parc - Lyon French Open - Paris Ricoh Open - 's-Hertogenbosch Wimbledon - London U.S. Open - New York Moselle Open - Metz Shenzhen Open - Shenzhen Noumea Challenger Playford Challenger Canberra Challenger Rennes Challenger Burnie Challenger Quimper Challenger Launceston Challenger Cherbourg Challenger Chennai Challenger Kyoto Challenger Yokohama Challenger Lille Challenger St. Brieuc Challenger Sarasota Challenger Tunis Challenger Tallahassee Challenger Seoul Challenger Savannah Challenger France F4 (Toulouse) Australia F3 (Mornington) Australia F4 (Mornington) Portugal F7 (Porto) Aix En Provence Challenger Gimcheon Challenger Busan Challenger Bordeaux Challenger Loughborough Challenger Surbiton Challenger Caltanissetta Challenger Ilkley Challenger Blois Challenger Braunschweig Challenger Astana Challenger Sopot Challenger Lexington Challenger Aptos Challenger Meerbusch Challenger Spain F16 (Palma del Rio) Seville Challenger Zhangjiagang Challenger Istanbul Challenger Shanghai Challenger Kaohsiung Challenger Orleans Challenger Stockton Challenger Fairfield Challenger Traralgon Challenger Canberra Challenger Mouilleron-Le-Captif Challenger Bangalore Challenger Pune Challenger Australian Open - Melbourne Open 13 Provence - Marseille Open Parc - Lyon French Open - Paris Nature Valley International - Eastbourne Wimbledon - London Abierto Mexicano de Tenis Mifel - Los Cabos U.S. Open - New York Moselle Open - Metz Chengdu Open - Chengdu Kremlin Cup - Moscow Noumea Challenger Playford Challenger Rennes Challenger Burnie Challenger Launceston Challenger Quimper Challenger Budapest Challenger Cherbourg Challenger Bangkok Challenger Bangkok Challenger Pau Challenger Yokohama Challenger Australian Open (Australia, Wildcard) Zhuhai Challenger Drummondville Challenger Shenzhen Challenger Lille Challenger Zhangjiagang Challenger St. Brieuc Challenger Taipei City Challenger Anning Challenger Nanchang Challenger Bordeaux Challenger Seoul Challenger Busan Challenger Lisbon Challenger Gwangju Challenger Almaty Challenger Lyon Challenger Shymkent Challenger Winnetka Challenger Winnipeg Challenger Gatineau Challenger Granby Challenger Binghamton Challenger Aptos Challenger Vancouver Challenger Jinan Challenger Istanbul Challenger Shanghai Challenger Kaohsiung Challenger Orleans Challenger Mouilleron-Le-Captif Challenger Ningboo Challenger Brest Challenger Traralgon Challenger Charlottesville Challenger Playford Challenger Australian Open - Melbourne Abierto Mexicano Telcel - Acapulco French Open - Paris Generali Open - Kitzbuhel St. Petersburg Open - St. Petersburg Canberra Challenger Rennes Challenger Quimper Challenger Launceston Challenger Cherbourg Challenger Drummondville Challenger Koblenz Challenger Pau Challenger Australian Open (Australia, Wildcard) Indian Wells Challenger Monterrey Challenger All Lower level tournaments Todi Challenger Prague II Challenger Cordenons Challenger Aix En Provence Challenger bett1HULKS Championships - Cologne Astana Open - Nur-Sultan Barcelona Challenger Lisbon Challenger Istanbul Challenger Marbella Challenger Parma Challenger Bratislava Challenger Sofia Open - Sofia Sao Paulo Challenger Australian Open Qualifying - Doha Great Ocean Road Open - Melbourne Quimper Challenger Quimper 2 Challenger Open Sud de France - Montpellier Open 13 Provence - Marseille BNP Paribas Open - Indian Wells Dubai Duty Free Tennis Championships - Dubai French Open - Paris Nature Valley International - Eastbourne Wimbledon - London Olympics - Tokyo Citi Open - Washington Rogers Cup - Toronto Winston-Salem Open - Winston-Salem U.S. Open - New York Cherbourg Challenger Lille Challenger Sardegna Open - Cagliari Marbella Challenger Belgrade Challenger Emilia-Romagna Open - Parma Heilbronn Challenger Oeiras 3 Challenger Biella 7 Challenger Nottingham 1 Challenger Lyon Challenger Aix En Provence Challenger Porto Challenger Iasi Challenger Nur-Sultan 3 Challenger Pozoblanco Challenger Poznan Challenger Liberec Challenger San Marino Challenger Verona Challenger Tulln Challenger Rennes Challenger Cary 2 Challenger Biel Challenger Columbus Challenger Orleans Challenger Brest Challenger Bergamo Challenger Roanne Challenger Pau Challenger Maia 2 Challenger ATP Cup - Sydney Adelaide International 1 - Adelaide Australian Open - Melbourne Cordoba Open - Cordoba Qatar ExxonMobil Open - Doha BNP Paribas Open - Indian Wells Miami Open - Miami US Men's Clay Court Championship - Houston Barcelona Open Banc Sabadell - Barcelona Serbia Open - Belgrade Millennium Estoril Open - Estoril French Open - Paris Libema Open - 's-Hertogenbosch Quimper Challenger Bengalaru 1 Challenger Cherbourg Challenger Bengalaru 2 Challenger Pau Challenger Monterrey Challenger Phoenix Challenger Lille Challenger St. Brieuc Challenger Hall of Fame Open - Newport Abierto de Tenis Mifel - Los Cabos National Bank Open - Montreal U.S. Open - New York Rakuten Japan Open - Tokyo Mexico City Challenger Sarasota Challenger Buenos Aires 2 Challenger Aix En Provence Challenger Prague 2 Challenger Bordeaux Challenger Tunis Challenger Vicenza Challenger Forli 6 Challenger Surbiton Challenger Lyon Challenger Blois Challenger Troyes Challenger Braunschweig Challenger Pozoblanco Challenger Indianapolis Challenger San Marino Challenger Grodzisk Mazowiecki Challenger Granby Challenger Toulouse Challenger Tulln Challenger Rennes Challenger Orleans Challenger Davis Cup, Group C, Hamburg Seoul Challenger Busan Challenger Vilnus Challenger Brest Challenger Playford Challenger Sydney Challenger Roanne Challenger Australian Open - Melbourne Open Sud de France - Montpellier Nonthaburi 1 Challenger Oeiras 1 Challenger Oeiras 2 Challenger Tenerife 1 Challenger Quimper Challenger Burnie Challenger Chennai Challenger Bengaluru Challenger Pau Challenger Pune Challenger Lugano Challenger France F12 France F13 Belgium F6 Belgium F7 France F16 France F17 Australia F9 Greece F17 Greece F18 France F1 France F2 France F3 Portugal F2 Australia F1 Portugal F3 Australia F2 Italy F5 Italy F6 France F9 Spain F10 Belgium F5 France F14 France F15 Serbia F6 Switzerland F5 Tunisia F4 Tunisia F5 Italy F33 Italy F34 Italy F35 Portugal F12 Senegal F2 France F1 Egypt F2 Egypt F3 Spain F2 Spain F3 Spain F4 Turkey F13 Turkey F14 France F8 France F9 Ukraine F2 Ukraine F3 Israel F7 Turkey F25 Turkey F26 Serbia F4 Serbia F5 France F16 Finland F2 Finland F3 Iran F7 Iran F8 Portugal F12 Portugal F13 Australia F8 Australia F9 Australia F10