Career 2025 2024 2023 2022 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012 2011 2010 2009 2008 2007 2006 2005 2004 2002
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 M25 Astana Zhangjiagang Challenger Mallorca Challenger Astana Open - Astana Zhuhai Challenger Rennes Challenger Shanghai Challenger Chengdu Open - Chengdu Shenzhen 2 Challenger M15 Villers-les-Nancy Mouilleron-Le-Captif Challenger Shenzhen 1 Challenger M25 Sarreguemines Montevideo Challenger Playford Challenger Sydney Challenger M25 Vale do Lobo Brasilia Challenger Noumea Challenger Mexico City Challenger M15 Monastir M15 Grenoble M25 Bourg-en-Bresse M15 Poitiers M25 Esch/Alzette Tenerife 1 Challenger M25 Trento Asuncion Challenger M15 Lons-le-Saunier M15+H Bagnoles de l'Orne M25 Toulouse-Balma Cherbourg Challenger M25 Saint Dizier Acapulco Challenger M25 Reggio Emilia M25 Creteil M25 Carnac M25 Angers Cuernavaca Challenger M25 Koksijde M25 Villeneuve-Loubet Taipei Challenger M25 Deauville Wuxi Challenger M25 Grasse Orleans Challenger Braunschweig Challenger Karlsruhe Challenger Luedenscheid Challenger Modena Challenger Sassuolo Challenger Salzburg Challenger Blois Challenger Zug Challenger M25 Montesilvano Grodzisk Mazowiecki Challenger Como Challenger Tulln Challenger Szczecin Challenger St. Tropez Challenger European Open - Antwerp Mouilleron-Le-Captif Challenger Brest Challenger Seoul Challenger Taipei 2 Challenger Shenzhen Challenger Lille Challenger Pau Challenger St. Tropez Challenger M25 Antalya Rovereto Challenger Quimper Challenger Cherbourg Challenger Francavilla Challenger Estoril Challenger Astana Challenger Maia Challenger Koblenz Challenger Oeiras 1 Challenger Lugano Challenger Todi Challenger M25 Toulouse-Balma Milan Challenger M25 Koszalin Oeiras 5 Challenger M25 Antalya M25 Poznan Heilbronn Challenger Bratislava 1 Challenger Poznan Challenger M25+H Kassel M25 Lesa Szczecin Challenger St. Tropez Challenger Roanne Challenger Brest Challenger Orleans Challenger Bratislava 2 Challenger USA F17 USA F19 USA F23 USA F24 USA F25 USA F32 New Zealand F1 New Zealand F2 Australia F3 Japan F1 Japan F2 Japan F3 Thailand F3 Japan F4 Japan F5 Japan F6 Japan F7 Japan F8 Italy F24 Italy F25 Italy F26 Germany F12 Germany F13 Australia F6 Australia F7 Australia F8 New Zealand F1 New Zealand F2 Australia F3 Australia F4 Australia F5 USA F10 Mexico F7 Mexico F8 Italy F17 Italy F18 Italy F19 Italy F20 Italy F21 Italy F22 Italy F23 Italy F24 Italy F26 Italy F27 Italy F28 Australia F8 Australia F9 Australia F10 Australia F11 New Zealand F1 New Zealand F2 Australia F3 Japan F1 Japan F2 Korea F1 Korea F2 China F1 China F2 China F3 USA F15 USA F16 USA F17 USA F20 USA F21 Ecuador F1 Ecuador F2 Ecuador F3 Australia F8 Australia F9 Australia F10 USA F2 USA F3 Colombia F2 Thailand F1 Thailand F2 New Zeland F1 New Zeland F2 Australia F4 USA F10 USA F11 USA F12 USA F13 Australia F5 Australia F10 Malaysia F1 Malaysia F2 Australia F11 Australia F12 Australia F1 Australia F2 New Zealand F1 New Zealand F2 New Zealand F3 Australia F3 Australia F4 Egypt F7 Egypt F8 Netherlands F1 Netherlands F2 Netherlands F3 Italy F17 Thailand F3 Russia F7 Australia F6 Thailand F4 Thailand F5 Thailand F6 Vietnam F1 Australia F11 Australia F1 Australia F2 Usa F8 Usa F13 Usa F14 Usa F15 Russia F4 Russia F5 Australia F5 China F7 China F8 Turkey F10 Turkey F11 Australia F9 Turkey F15 New Zealand F1 Australia F12 Australia F13 Germany F1 France F4 Russia F1 Russia F2 Australia F3 Australia F4 Czech Republic F1 Czech Republic F2 Italy F13 Germany F5 Germany F7 Belgium F2 Belgium F3 Italy F20 Germany F9 Belgium F7 Italy F22 Belgium F8 Italy F23 Belgium F9 Germany F14 France F15 Australia F8 Germany F17 Australia F9 France F19 Australia F10 Australia F11 Australia F12 Australia F13 Germany F3 France F4 Australia F3 Australia F4 Kazakhstan F2 Vietnam F1 Kazakhstan F3 Vietnam F2 Uzbekistan F1 Vietnam F3 Thailand F1 Czech Republic F1 Thailand F2 Czech Republic F2 Thailand F3 Czech Republic F3 Germany F5 Netherlands F3 Germany F8 Germany F9 Germany F13 Germany F14 Germany F16 France F16 France F17 Vietnam F5 Germany F18 Japan F8 Germany F19 Australia F11 Australia F1 Russia F1 Russia F2 Australia F4 Russia F3 Russia F4 Korea F3 Russia F7 Korea F4 Russia F8 Germany F6 Japan F7 Belgium F8 Netherlands F5 Netherlands F6 France F16 Australia F9 Australia F10 Spain F41 Spain F42 Germany F2 Russia F3 Netherlands F2 Netherlands F4 Germany F7 Korea F10 Korea F11 Australia F9 Australia F10 Turkey F1 Turkey F2 Egypt F7 Egypt F8 Australia F4 Morocco F2 Australia F5 Morocco F3 France F8 Romania F2 Korea F1 Korea F2 Russia F1 Netherlands F1 USA F17 Netherlands F2 Russia F6 Turkey F5 Australia F1 Russia F7 Kazakhstan F1 Germany F6 Italy F14 Netherlands F4 France F13 Austria F4 Belgium F7 France F21 Australia F12 Germany F2 Germany F3 Germany F4 Australia F5 Uzbekistan F1 Uzbekistan F2 China F3 Germany F5 Japan F8 Germany F8 Kazakhstan F1 Kazakhstan F2 Kazakhstan F3 Russia F4 Romania F3 Netherlands F3 Netherlands F4 Belgium F8 Russia F5 Netherlands F5 M25 Nur-Sultan Netherlands F6 Russia F7 Russia F8 Canada F10 Australia F10 Australia F11 Cyprus F2 Cyprus F3 Germany F3 Tunisia F5 Tunisia F6 Australia F1 Tunisia F7 France F4 Australia F3 Australia F4 USA F16 USA F17 USA F18 Netherlands F2 USA F22 Netherlands F4 Germany F8 Finland F1 Finland F2 Canada F6 Russia F7 Canada F7 Hungary F8 USA F31 USA F33 USA F34 USA F35 USA F36 USA F37 Cyprus F3 USA F40 France F1 (Bagnoles-de-l'Orne) Germany F3 (Nussloch) China F1 (Anning) China F2 (Anning) France F4 (Lille) Croatia F1 (Rovinj) Australia F2 (Canberra) Croatia F2 (Porec) Australia F3 (Canberra) Italy F5 (Santa Margherita Di Pula) China F7 (Wuhan) China F8 (Fuzhou) China F9 (Luan) Thailand F1 (Hua Hin) USA F19 (Winston-Salem) USA F22 (Pittsburgh) Germany F7 (Trier) USA F24 (Champaign) Thailand F8 (Nonthaburi) Thailand F10 (Hua Hin) Thailand F11 (Hua Hin) Thailand F12 (Hua Hin) Qatar F6 (Doha) Hong Kong F2 (Hong Kong) China F10 (Shenzhen) Kazakhstan F8 (Shymkent) M25 Meerbusch M25 Wetzlar M25 Nevers M25+H Rodez M15 Naples M25 Guayaquil M15 Cancun M25 Canberra M15 Grenoble M25 Canberra M25 Portimao M25 Anapoima M15 Chiang Rai M15 Chiang Rai M25 Mataro M25 Chiang Rai M25 Chiang Rai M25 Grasse M15 Chiang Rai M15 Chiang Rai M25 Tbilisi M25 Tbilisi M25 Tbilisi M25 Darwin M25 Darwin M25 Tay Ninh M25 Tay Ninh M25 Traralgon M25 Traralgon M15 Tauranga M25 Manacor M25 Anapoima M25 Santa Margherita di Pula M15 Monastir Gallagher International - Hamilton Fifth Third Bank Tennis Classic - Lexington Uncle Toby's Australian Men's Clay Court Challenger - Canberra Genoa Open Challenger-Fondazione Carige - Genova Architect Open - Budapest Kia International in Caloundra - Caloundra ATP Challenger Numea - New Caledonia Atlanta Clay Court Challenger - Atlanta Kia International In Caloundra - Caloundra Kia International In Kawana - Kawana Challenger ATP de Cuenca Diario El Mercurio - Cuenca Fifth Third Bank Tennis Championships - Lexington Caloundra ATP Challenger - Caloundra Club Coop's ATP Challenger International - Brisbane McDonalds ATP Challenger - Burnie Baton Rouge Pro Tennis Classic - Baton Rouge Countrywide Classic USTA Men's Challenger - Carson Sunset Moulding Challenger - Yuba City Nielsen USTA Pro Tennis Championship - Winnetka Moncton Men's Challenger - Moncton Fifth Third Bank Tennis Championships - Lexington Oldum Brown Vancouver Open - Vancouver New Delhi Challenger III - New Delhi New Delhi Challenger IV - New Delhi Burnie Challenger Melbourn Challenger Mexico City Challenger Samarkand Challenger Karshi Challenger Almaty Challenger Yokohama Challenger Toyota Challenger Burnie Challenger Kyoto Challenger Leon Challenger Tallahassee Challenger Savannah Challenger Sarasota Challenger Carson Challenger Ojai Challenger Beijing Challenger Samarkand Challenger Karshi Challenger Astana Challenger Burnie Challenger Guangzhou Challenger Pingguo Challenger Busan Challenger Cremona Challenger Alessandria Challenger Rijeka Challenger Milan Challenger Marburg Challenger Trani Challenger Manerbio Challenger Shanghai Challenger Ningboo Challenger Bangkok Challenger Honolulu Challenger Burnie Challenger Singapore Challenger Kyoto Challenger Furth Challenger Milan Challenger Bangkok Challenger Shanghai Challenger Eckental Challenger Noumea Challenger Burnie Challenger West Lakes Challenger Sydney Challenger Kyoto Challenger Anning Challenger Kun-Ming Challenger Karshi Challenger Busan Challenger Samarkand Challenger Marburg Challenger Beijing Challenger Scheveningen Challenger Astana Challenger Oberstaufen Challenger Meerbusch Challenger Bangkok Challenger Shanghai Challenger Kaoshuing Challenger Kazan Challenger Melbourne Challenger Traralgon Challenger Noumea Challenger Heilbronn Challenger West Lakes Challenger Astana Challenger Mersin Challenger Heilbronn Challenger Shanghai Challenger Napa Challenger Sacramento Challenger Traralgon Challenger Traralgon Challenger 2 Burnie Challenger Launceston Challenger Kazan Challenger Savannah Challenger Tallahassee Challenger Moscow Challenger Gimcheon Challenger Scheveningen Challenger Columbus Challenger Tiburon Challenger Sacramento Challenger Tashkent Challenger Fairfield Challenger Traralgon Challenger Canberra Challenger Bratislava Challenger Bangkok Challenger Bangkok Challenger Launceston Challenger Kazan Challenger Napoli Challenger Sarasota Challenger Barletta Challenger Savannah Challenger Tallahassee Challenger Bangkok Challenger Fergana Challenger Marburg Challenger San Benedetto Challenger Binghamton Challenger Scheveningen Challenger Lexington Challenger Liberec Challenger Trnava Challenger Meerbusch Challenger Genova Challenger Szczecin Challenger Budapest Challenger Eckental Challenger Mouilleron-Le-Captif Challenger Astana Challenger Columbus Challenger Noumea Challenger Koblenz Challenger Maui Challenger Budapest Challenger St. Brieuc Challenger Barletta Challenger Sarasota Challenger Tallahassee Challenger Savannah Challenger Karshi Challenger Samarkand Challenger Shymkent Challenger Caltanissetta Challenger Blois Challenger Medellin Challenger Poznan Challenger Binghamton Challenger Tampere Challenger Lexington Challenger Liberec Challenger Santo Domingo Challenger Quito Challenger Genova Challenger Bogota Challenger Shanghai Challenger Gwangju Challenger Orleans Challenger Ningboo Challenger Brest Challenger Ho Chi Minh City Challenger Canberra Challenger Mouilleron-Le-Captif Challenger Hua Hin Challenger Noumea Challenger Koblenz Challenger Newport Beach Challenger Rennes Challenger Quimper Challenger Launceston Challenger Cherbourg Challenger Morelos Challenger Zhuhai Challenger Shenzhen Challenger San Luis Potosi Challenger Alicante Challenger Panama City Challenger Mexico City Challenger Guadalajara Challenger Leon Challenger Puerto Vallarta Challenger Gimcheon Challenger Busan Challenger Heilbronn Challenger Poznan Challenger Shymkent Challenger Lyon Challenger Almaty Challenger Fergana Challenger Marburg Challenger Braunschweig Challenger Sopot Challenger Pullach Challenger Jinan Challenger Gwangju Challenger Genova Challenger Zhangjiagang Challenger Szczecin Challenger Orleans Challenger Florence Challenger Almaty Challenger Tashkent Challenger Traralgon Challenger Canberra Challenger Eckental Challenger Mouilleron-Le-Captif Challenger Noumea Challenger Koblenz Challenger Launceston Challenger Quimper Challenger Chennai Challenger Cherbourg Challenger Bangkok Challenger Lille Challenger St. Brieuc Challenger Alicante Challenger Tunis Challenger Francavilla Challenger Aix En Provence Challenger Heilbronn Challenger Poznan Challenger Lyon Challenger Bratislava Challenger Ludwigshafen Challenger Braunschweig Challenger Sopot Challenger Portoroz Challenger Szczecin Challenger Nur-Sultan Challenger Charlottesville Challenger Knoxville Challenger Houston Challenger Noumea Challenger Rennes Challenger Quimper Challenger Cherbourg Challenger Prague Challenger Prague II Challenger Parma Challenger Istanbul Challenger Eckental Challenger Bratislava Challenger Ortisei Challenger Maia Challenger Quimper Challenger Quimper 2 Challenger Cherbourg Challenger St. Petersburg 1 Challenger St. Petersburg 2 Challenger Zadar Challenger Oeiras 1 Challenger Oeiras 2 Challenger Rome 1 Challenger Rome 2 Challenger Biella 5 Challenger Oeiras 3 Challenger Biella 7 Challenger Lyon Challenger Aix En Provence Challenger Milan Challenger Salzburg-Anif Challenger Amersfoort Challenger Poznan Challenger Prague 2 Challenger Prague 3 Challenger Como Challenger Banja Luka Challenger Szczecin Challenger Bucharest Challenger Sibiu Challenger Brest Challenger Bergamo Challenger Roanne Challenger Puerto Vallarta Challenger Forli 2 Challenger Forli 3 Challenger Traralgon Challenger Forli 1 Challenger Forli 2 Challenger Forli 3 Challenger Quimper Challenger Pau Challenger Monterrey Challenger Lille Challenger Lugano Challenger Sanremo Challenger Salinas Challenger Barletta Challenger Rome 1 Challenger Aix En Provence Challenger Heilbronn Challenger Tunis Challenger Poznan Challenger Lyon Challenger Milan Challenger Luedenscheid Challenger Braunschweig Challenger Verona Challenger Nur-Sultan Challenger San Benedetto Challenger Meerbusch Challenger Grodzisk Mazowiecki Challenger Banja Luka Challenger Cassis Challenger Rennes Challenger Genova Challenger Mouilleron-Le-Captif Challenger Hamburg Challenger Brest Challenger Playford Challenger Bergamo Challenger Sydney Challenger Roanne Challenger Andria Challenger Maia Challenger Noumea Challenger Oeiras 1 Challenger Oeiras 2 Challenger Quimper Challenger Koblenz Challenger Cherbourg Challenger Monterrey Challenger Pau Challenger Puerto Vallarta Challenger Szekesfehervar Challenger Biel Challenger Mexico City Challenger Sanremo Challenger San Luis Potosi Challenger Madrid Challenger Morelos Challenger Savannah Challenger Leon Challenger Busan Challenger Little Rock Challenger Tyler Challenger Palmas del Mar Challenger Cali Challenger Medellin Challenger Grodzisk Mazowiecki Challenger Temuco Challenger Maia Challenger Heineken Open - Auckland Heineken Open - Auckland Heineken Open - Auckland Heineken Open - Auckland Heineken Open - Auckland U.S. Mens's Clay Court Championship - Houston Heineken Open - Auckland U.S. Mens's Clay Court Championship - Houston Heineken Open - Auckland PTT Thailand Open - Bangkok Heineken Open - Auckland Malaysian Open - Kuala Lumpur Kremlin Cup - Moscow Heineken Open - Auckland BRD Nastase Tiriac Trophy - Bucharest BMW Open - Munich Power Horse Cup - Dusseldorf Kremlin Cup - Moscow Heineken Open - Auckland Grand Prix Hassan II - Casablanca Kremlin Cup - Moscow St. Petersburg Open - St. Petersburg St. Petersburg Open - St. Petersburg European Open - Antwerp ASB Classic - Auckland TEB BNP Paribas Istanbul Open - Istanbul Antalya Cup - Antalya St. Petersburg Open - St. Petersburg Kremlin Cup - Moscow Chengdu Open - Chengdu Qatar ExxonMobil Open - Doha ASB Classic - Auckland Grand Prix Hassan II - Marrakech Barcelona Open BancSabadell - Barcelona BMW Open - Munich Plava Laguna Croatia Open - Umag St. Petersburg Open - St. Petersburg Kremlin Cup - Moscow ASB Classic - Auckland Open Sud de France - Montpellier Open 13 Provence - Marseille Dubai Duty Free Tennis Championships - Dubai Grand Prix Hassan II - Marrakech SkiStar Swedish Open - Bastad German Tennis Championships - Hamburg St. Petersburg Open - St. Petersburg Kremlin Cup - Moscow Open Sud de France - Montpellier Open 13 Provence - Marseille St. Petersburg Open - St. Petersburg Belgrade 2 - Belgrade Sydney Tennis Classic - Sydney Hamburg European Open - Hamburg Sofia Open - Sofia Gijon Open - Gijon Open Sud de France - Montpellier Abierto Mexicano Telcel - Acapulco Grand Prix Hassan II - Marrakech BMW Open - Munich Cassis Challenger U.S. Open - New York 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 Australian Open Qualifying - Doha Davis Cup, Group 2, F, NZL-KOR 2-3 Davis Cup, Group 2, 1R, NZL-LIB 5-0 Davis Cup, Group 2, 2R, KAZ-NZL 3-2 Davis Cup, Group 2, 1R, NZL-POC 5-0 Davis Cup, Group 2, 2R, PHI-NZL 4-1 Davis Cup, Group 2, 2R, KUW-NZL 0-5 Davis Cup, Group 2, 1R, NZL-MAS 5-0 Davis Cup, Group 2, F, PHI-NZL, 4-1 Davis Cup, Group 2, 1R, SRI-NZL 2-3 Davis Cup, Asia/Oceania Group II, 2R, NZL-PAK 3-2 Davis Cup, Asia/Oceania Group II, 3R, THA-NZL 2-3 Davis Cup, Group I, 1R, UZB-NZL 3-2 Davis Cup, Group I, 1R, NZL-UZB 2-3 Davis Cup, Group II, 3R, PHI-NZL 2-3 Davis Cup, Group I, 1R, CHN-NZL 3-1 Davis Cup, Group I, 1R, NZL-CHN 4-1 Davis Cup, Group I, 2R, NZL-IND 2-3 Davis Cup, Group I, 1R, KOR-NZL 3-1 Davis Cup, Group I, PO, NZL-PAK 5-0 Davis Cup, Group I, 1R, IND-NZL 4-1 Davis Cup, Group I, PO, NZL-KOR 3-2 Davis Cup, Group I, 1R, CHN-NZL 3-1 Davis Cup, Group I, PO, KOR-NZL 3-2 Davis Cup, World Group I, PO, NZL-VEN 3-1 Davis Cup, Group I, 1R, NZL-KOR 1-3 Davis Cup, Group I, PO, NZL-URU 3-1 Australian Open (juniors) All Lower level tournaments Davis Cup, Group II, 1R, NZL-THA 3-1 Davis Cup, World Group II, 1R, NZL-LUX 2-3