Career 2025 2024 2023 2022 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012
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 Egypt F1 Romania F3 Portugal F1 Portugal F2 Portugal F3 Egypt F2 Egypt F3 Egypt F4 Japan F6 Canada F6 Sweden F4 Sweden F6 Sweden F7 Israel F1 Israel F2 Israel F3 Great Britain F5 Great Britain F6 Great Britain F7 Egypt F12 Egypt F13 Egypt F14 Sweden F2 Netherlands F1 Netherlands F2 Japan F7 Japan F8 Netherlands F3 Japan F6 Japan F7 Japan F8 Spain F30 Spain F31 Spain F32 Spain F33 Japan F1 Japan F2 Japan F3 Japan F4 Japan F5 Greece F5 Greece F6 China F6 Japan F7 Japan F8 Korea F3 Korea F4 Korea F5 Vietnam F1 Vietnam F2 Thailand F2 Thailand F3 Vietnam F4 Vietnam F5 Vietnam F6 Indonesia F4 Indonesia F5 USA F4 (Sunrise) USA F5 (Weston) USA F6 (Palm Coast) Japan F1 (Nishi-Tama) Japan F2 (Nishi-Tokyo) Japan F4 (Tsukuba) Japan F5 (Kashiwa) China F7 (Wuhan) Japan F6 (Karuizawa) Japan F7 (Tokyo) Thailand F5 (Nonthaburi) Thailand F6 (Nonthaburi) Turkey F32 (Antalya) Turkey F33 (Antalya) Turkey F34 (Antalya) Turkey F35 (Antalya) Turkey F36 (Antalya) Indonesia F7 (Jakarta) Indonesia F8 (Jakarta) Thailand F11 (Hua Hin) Thailand F12 (Hua Hin) Japan F4 (Tsukuba) Japan F5 (Kashiwa) Japan F6 (Matsuyama) M15 Kashiwa M25 Taipei M25 Taipei M25 Nonthaburi M15 Jakarta M25 Tay Ninh M25 Nonthaburi M15 Antalya M25 Antalya M15 Monastir M15 Monastir M15 Monastir M15 Monastir M15 Monastir M15 Monastir M15 Antalya M25 Prague M15 Monastir M15 Monastir M25 Sintra M25 Sintra M25 Jonkoping M25 Falun M25 Setubal M15 Monastir M15 Monastir M25 Bendigo M25 Bendigo M25 Darwin M25 Darwin M25 Kashiwa M25 Jakarta M15 Monastir M15 Monastir M15 Monastir M25 Tsukuba M25 Kashiwa M25 Jakarta M25 Jakarta M25 Jakarta M25 Changwon M25 Bali Japan F6 Eckental Challenger Bratislava Challenger Helsinki Challenger Andria Challenger Toyota Challenger Tunis Challenger Arad Challenger Poznan Challenger Tampere Challenger Liberec Challenger Cordenons Challenger Shanghai Challenger Napa Challenger Sacramento Challenger Tiburon Challenger Eckental Challenger Helsinki Challenger Drummondville Challenger Turin Challenger Rome Challenger Furth Challenger Caltanissetta Challenger Ilkley Challenger Poznan Challenger Aptos Challenger Vancouver Challenger Istanbul Challenger Izmir Challenger Mons Challenger Rennes Challenger Bratislava Challenger Brescia Challenger Bergamo Challenger Kyoto Challenger Jonkoping Challenger Barletta Challenger Aix En Provence Challenger Bordeaux Challenger Prostejov Challenger Caltanissetta Challenger Perugia Challenger Bastad Challenger Biella Challenger Cordenons Challenger Manerbio Challenger Como Challenger Genova Challenger Rome Challenger Mohammedia Challenger Kobe Challenger Toyota Challenger Dallas Challenger Kyoto Challenger Yokohama Challenger San Francisco Challenger Barletta Challenger Aix En Provence Challenger Bordeaux Challenger Vicenza Challenger Lyon Challenger Poprad Tatry Challenger Bastad Challenger Winnipeg Challenger Granby Challenger Tampere Challenger Cordenons Challenger Manerbio Challenger Como Challenger Genova Challenger Tiburon Challenger Stockton Challenger Ningboo Challenger Mouilleron-Le-Captif Challenger Kobe Challenger Toyota Challenger Bangalore Challenger Rennes Challenger Burnie Challenger Launceston Challenger Budapest Challenger Yokohama Challenger Zhuhai Challenger Irving Challenger Japan F6 Shenzhen Challenger Qujing Challenger St. Brieuc Challenger Tunis Challenger Seoul Challenger Aix En Provence Challenger Gimcheon Challenger Busan Challenger Prostejov Challenger Shymkent Challenger Almaty Challenger Bastad Challenger Gatineau Challenger Granby Challenger Chengdu Challenger Jinan Challenger Gwangju Challenger Chicago Challenger Cary Challenger Orleans Challenger Ningboo Challenger Brest Challenger Liuzhou Challenger Mouilleron-Le-Captif Challenger Bangalore Challenger Kobe Challenger Pune Challenger Da Nang Challenger Rennes Challenger Launceston Challenger Chennai Challenger Morelos Challenger Yokohama Challenger Zhuhai Challenger Phoenix Challenger Zhangjiagang Challenger Alicante Challenger Taipei City Challenger Nanchang Challenger Aix En Provence Challenger Heilbronn Challenger Poznan Challenger Lyon Challenger Fergana Challenger Ludwigshafen Challenger Braunschweig Challenger Tampere Challenger Yokkaichi Challenger Baotou Challenger Jinan Challenger Shanghai Challenger Kaohsiung Challenger Hamburg Challenger Liuzhou Challenger Bratislava Challenger Kobe Challenger Helsinki Challenger Canberra Challenger Nur-Sultan Challenger Prague Challenger Prague II Challenger Aix En Provence Challenger Split Challenger Istanbul Challenger Orlando Challenger Biella 4 Challenger Marbella Challenger Split 1 Challenger Split 2 Challenger Rome 1 Challenger Ostrava Challenger Prague Challenger Lyon Challenger Aix En Provence Challenger Braunschweig Challenger St. Tropez Challenger Cassis Challenger Rennes Challenger Orleans Challenger Mouilleron-Le-Captif Challenger Tenerife Challenger Marbella Challenger Bordeaux Challenger Prostejov Challenger Perugia Challenger Montechiarugolo - Parma Challenger Salzburg Challenger Vancouver Challenger Toulouse Challenger Tulln Challenger Matsuyama Challenger Kobe Challenger Andria Challenger Yokkaichi Challenger Maia Challenger Ottignies-Louvain-la-Neuve Challenger Vilnius Challenger Phoenix Challenger Split Challenger Busan Challenger Bordeaux Challenger Prostejov Challenger St. Tropez Challenger Ostrava Challenger Zug Challenger Japan F3 (Kofu) Japan F5 If Stockholm Open - Stockholm SkiStar Swedish Open - Bastad If Stockholm Open - Stockholm Open de Nice Cote d'Azur - Nice SkiStar Swedish Open - Bastad If Stockholm Open - Stockholm Aircel Chennai Open - Chennai Ecuador Open - Quito Brasil Open - Sao Paulo Rio Open - Rio de Janeiro Barcelona Open BancSabadell - Barcelona SkiStar Swedish Open - Bastad Aircel Chennai Open - Chennai Open Sud de France - Montpellier Grand Prix Hassan II - Marrakech Barcelona Open BancSabadell - Barcelona Millennium Estoril Open - Estoril SkiStar Swedish Open - Bastad Suisse Open - Gstaad If Stockholm Open - Stockholm Brisbane International - Brisbane Memphis Open - Memphis Delray Beach Open - Delray Beach Millennium Estoril Open - Estoril SkiStar Swedish Open - Bastad If Stockholm Open - Stockholm Erste Bank Open - Vienna Qatar ExxonMobil Open - Doha Gazprom Hungarian Open - Budapest TEB BNP Paribas Istanbul Open - Istanbul Gerry Weber Open - Halle SkiStar Swedish Open - Bastad Swiss Open - Gstaad Abierto Mexicano - Los Cabos Chengdu Open - Chengdu Intrum Stockholm Open - Stockholm Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Brasil Open - Sao Paulo Grand Prix Hassan II - Marrakech Millennium Estoril Open - Estoril SkiStar Swedish Open - Bastad Intrum Stockholm Open - Stockholm Murray River Open - Melbourne Nordea Open - Bastad Abierto Mexicano de Tenis Mifel - Los Cabos Truist Atlanta Open - Atlanta Citi Open - Washington Stockholm Open - Stockholm Kremlin Cup - Moscow Astana Open - Nur-Sultan Tata Open Maharashtra - Pune Qatar ExxonMobil Open - Doha Dubai Duty Free Tennis Championships - Dubai Barcelona Open Banc Sabadell - Barcelona Nordea Open - Bastad Swiss Open - Gstaad Plava Laguna Croatia Open - Umag Rakuten Japan Open - Tokyo Stockholm Open - Stockholm Korea Open - Seoul Tata Open Maharashtra - Pune ABN AMRO World Tennis Tournament - Rotterdam Open 13 Provence - Marseille Abierto Mexicano Telcel - Acapulco Grand Prix Hassan II - Marrakech Banja Luka Open - Banja Luka Nordea Open - Bastad BNP Paribas Nordic Open - Stockholm M15 Monastir M25 Changwon M15 Tashkent M25 Carrara M15 Bali M15 Zahra M25 Taipei M25 Luan M15 Tashkent M25 Tbilisi M15 Osaka M25 Bali M25 Luzhou M15 Tokyo M25 Sapporo M15 Osaka M15 Astana M15 Nakhon Si Thammarat M15 Nonthaburi M15 Tokyo Sony Open Tennis - Miami Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo M15 Kashiwa Miami Open - Miami BNP Paribas Open - Indian Wells Miami Open - Miami Miami Open - Miami Rogers Cup - Toronto BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Internazionali BNL d'Italia - Rome BNP Paribas Open - Indian Wells Miami Open - Miami BNP Paribas Open - Indian Wells Miami Open - Miami Internazionali BNL d'Italia - Rome BNP Paribas Open - Indian Wells Braunschweig Challenger Winnipeg Challenger Mallorca Challenger Helsinki Challenger Istanbul Challenger Cary Challenger Naples Challenger Francavilla Challenger Yokkaichi Challenger Lima 2 Challenger Bangkok Challenger Oeiras 3 Challenger Oeiras 5 Challenger Perugia Challenger Orleans Challenger Porto 2 Challenger Seville Challenger Shanghai Challenger Kobe Challenger Seville Challenger Yokohama Challenger Naples Challenger Mauthausen Challenger Seoul Challenger Oeiras 4 Challenger Salzburg Challenger Suzhou Challenger Tiburon Challenger Guayaquil Challenger Yokkaichi Challenger Zadar Challenger BNP Paribas Nordic Open - Stockholm Cary Challenger Nordea Open - Bastad BMW Open - Munich Maia Challenger Hamburg European Open - Hamburg Qatar ExxonMobil Open - Doha Dubai Duty Free Tennis Championships - Dubai Australian Open - Melbourne Mutua Madrid Open - Madrid French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Australian Open - Melbourne French Open - Paris Wimbledon - London Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York French Open - Paris Wimbledon - London U.S. Open - New York French Open - Paris 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 Wimbledon - London Wimbledon - London Davis Cup, Group I, PO, SWE-DEN 3-2 Davis Cup, Group I, PO, ROU-SWE 3-1 Davis Cup, Group I, 1R, SWE-AUT 2-3 Davis Cup, Group I, PO, SWE-NED 0-5 Davis Cup, Group I, PO, ISR-SWE 3-1 Davis Cup, Group II, 2R, TUR-SWE 1-4 Davis Cup, Group II, 3R, SWE-LTU 5-0 Davis Cup, Group I, 1R, UKR-SWE 2-3 Davis Cup, Group I, 2R, SWE-POR 3-2 Davis Cup, World Group, QR, COL-SWE 4-0 Davis Cup, Finals, Group B Davis Cup, Finals, QF, RUS-SWE 2-0 Davis Cup, Qualifiers, 1R, SWE-JPN 3-2 Davis Cup, Group A, Bologna Davis Cup, World Group, PO, SWE-BIH 3-1 Davis Cup, Group A, Bologna Davis Cup, World Group I, 1R, SWE-IND 4-0 Davis Cup, World Group, QR, SWE-CHI 3-1 Wimbledon (juniors) U.S. Open (juniors) Australian Open (juniors) French Open (juniors) Wimbledon (juniors) U.S. Open (juniors) Australian Open (juniors) French Open (juniors) Australian Open (Asia, Wildcard) All Lower level tournaments Astana Challenger M15 Nakhon Si Thammarat Wimbledon - London M25 Astana U.S. Open - New York M25 Roehampton Alicante Challenger Malaga Challenger Stockholm Open - Stockholm Valencia Challenger Kobe Challenger Montevideo Challenger Australian Open - Melbourne Manama Challenger Quimper Challenger Davis Cup, World Group, Q, SWE-BRA 1-3 Miami Open - Miami Phoenix Challenger M15 Tsukuba M15 Nishi-Tokyo French Open - Paris Citi Open - Washington M15 Tokyo Sassuolo Challenger M15 Tokyo U.S. Open - New York Orleans Challenger Mouilleron-Le-Captif Challenger Seoul Challenger Roanne Challenger Matsuyama Challenger Pune Challenger M15 Zahra Chennai Challenger M25 Caloundra M25 Changwon M25 Shenzhen Grodzisk Mazowiecki Challenger M15 Bali New Delhi Challenger Sassuolo Challenger Porto Challenger Mallorca Championships - Mallorca Rome Challenger Zhangjiagang Challenger Tiriac Open - Bucharest Monza Challenger Hamburg Open - Hamburg Heilbronn Challenger Braunschweig Challenger Astana Challenger Nordea Open - Bastad U.S. Open - New York Szczecin Challenger Las Vegas Challenger Bad Waltersdorf Challenger Braga Challenger Lisbon Challenger