Career 2025 2024 2023 2022 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012 2011 2010 2009 2008
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 Nordea Open - Bastad Stockholm Open - Stockholm Sofia Open - Sofia Hong Kong Tennis Open - Hong Kong Australian Open - Melbourne Grand Prix Hassan II - Marrakech Miami Open - Miami Barcelona Open Banc Sabadell - Barcelona Mutua Madrid Open - Madrid French Open - Paris Wimbledon - London Perugia Challenger National Bank Open - Montreal Western & Southern Open - Cincinnati U.S. Open - New York Davis Cup, Group B, Valencia China Open - Beijing Shanghai Rolex Masters - Shanghai BNP Paribas Open - Indian Wells Dubai Duty Free Tennis Championships - Dubai Open Occitanie - Montpellier United Cup - Australia ASB Classic - Auckland Australian Open - Melbourne Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome French Open - Paris National Bank Open - Toronto U.S. Open - New York Spain F31 Spain F38 Spain F6 Spain F7 Egypt F5 Egypt F6 Spain F13 Spain F14 Spain F15 Spain F22 Spain F28 Spain F29 Spain F30 Spain F31 Spain F32 Spain F34 Spain F33 Spain F35 Spain F36 Spain F37 Spain F1 Spain F2 Spain F4 Spain F7 Spain F9 Spain F10 Spain F11 Spain F14 Spain F15 Spain F23 Spain F27 Spain F31 Spain F32 Spain F35 Spain F36 Spain F37 Spain F38 Spain F39 Spain F2 Spain F3 Spain F5 Spain F6 Spain F28 Morocco F6 Morocco F7 Morocco F9 Morocco F10 Turkey F2 Turkey F3 Spain F1 Spain F2 Spain F3 Spain F4 Spain F6 Spain F7 Russia F5 Belarus F3 Belarus F4 Kazakhstan F2 Russia F5 Russia F6 Russia F8 Estonia F3 Kazakhstan F1 (Aktobe) Kazakhstan F2 (Aktobe) Kazakhstan F3 (Shymkent) Kazakhstan F4 (Shymkent) Kazakhstan F5 (Shymkent) Czech Republic F1 (Prague) Russia F1 (Kazan) Russia F2 (Kazan) Russia F3 (Kazan) Russia F4 (Kazan) Russia F5 (Kazan) Russia F6 (Moscow) Russia F7 (Moscow) Estonia F3 (Tallinn) Estonia F4 (Parnu) Czech Republic F11 (Valasske Mezirici) Czech Republic F12 (Prague) Russia F3 (Kazan) France F6 (Villers Les Nancy) Kazakhstan F3 (Shymkent) Kazakhstan F4 (Shymkent) Kazakhstan F6 Kazakhstan F7 Czech Republic F5 (Usti Nad Orlici) Turkey F39 (Antalya) M15 Antalya Estonia F2 (Tartu) Estonia F4 Meknes Challenger Alessandria Challenger Ljubljana Challenger Medellin Challenger Buenos Aires Challenger Rabat Challenger Marrakech Challenger Caltanissetta Challenger Mohammedia Challenger Braunschweig Challenger Mohammedia Challenger Ostrava Challenger Astana Challenger Liberec Challenger Portoroz Challenger Tashkent Challenger Ismaning Challenger Eckental Challenger Barletta Challenger Francavilla Challenger Fergana Challenger Milan Challenger Nur-Sultan Challenger Segovia Challenger Manerbio Challenger Meerbusch Challenger Ismaning Challenger Brest Challenger Maia Challenger Cherbourg Challenger Koblenz Challenger Pau Challenger Nur-Sultan Challenger Hamburg Challenger St. Petersburg 1 Challenger St. Petersburg 2 Challenger Barcelona Challenger Oeiras 1 Challenger Oeiras 2 Challenger Rome 1 Challenger Rome 2 Challenger Nur-Sultan 3 Challenger Nur-Sultan 4 Challenger San Marino Challenger Verona Challenger Bergamo Challenger Forli 3 Challenger Forli 3 Challenger Biel Challenger Lugano Challenger Madrid Challenger Aix En Provence Challenger Bordeaux Challenger Cordenons Challenger San Marino Challenger Roanne Challenger Helsinki Challenger Canberra Challenger Manama Challenger Phoenix Challenger Russia F6 (Moscow) Troisdorf Challenger Karlsruhe Challenger Malaga Challenger Turkey F40 (Antalya) Turkey F41 (Antalya) Poznan Challenger Montemar Challenger M15 Antalya Tenerife 1 Challenger Tenerife 2 Challenger Phoenix Challenger Girona Challenger Madrid Challenger Lyon Challenger Seville Challenger Guangzhou Challenger Bad Waltersdorf Challenger Villena Challenger Jinan Challenger Roanne Challenger Olbia Challenger Shenzhen Challenger Tanger Challenger Bytom Challenger Marburg Challenger Trani Challenger Geneva Challenger Open Sabadell Atlantico - Barcelona Grand Prix Hassan II - Casablanca Open Sabadell Atlantico - Barcelona Estoril Open - Estoril If Stockholm Open - Stockholm Open Sud de France - Montpellier Barcelona Open BancSabadell - Barcelona Portugal Open - Oeiras Malaysian Open - Kuala Lumpur If Stockholm Open - Stockholm Valencia Open - Valencia Aircel Chennai Open - Chennai Royal Guard Open Chile - Vina del Mar Rio Open 500 - Rio de Janeiro Grand Prix Hassan II - Casablanca Barcelona Open BancSabadell - Barcelona Portugal Open - Oeiras SkiStar Swedish Open - Bastad Bet-at-home Open - Hamburg Vegeta Croatia Open - Umag Bet-at-home Cup - Kitzbuhel Winston-Salem Open - Winston-Salem If Stockholm Open - Stockholm Valencia Open - Valencia Aircel Chennai Open - Chennai Heineken Open - Auckland Rabat Challenger Brasil Open - Sao Paulo Argentina Open - Buenos Aires Vegeta Croatia Open - Umag Credit Agricole Suisse Open - Gstaad Rome Challenger Winston-Salem Open - Winston-Salem If Stockholm Open - Stockholm Valencia Open - Valencia Millennium Estoril Open - Estoril Qatar ExxonMobil Open - Doha Ecuador Open - Quito Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Cremona Challenger Brasil Open - Sao Paulo Grand Prix Hassan II - Marrakech Millennium Estoril Open - Estoril Geneva Open - Geneva Konzum Croatia Open - Umag Alessandria Challenger Abierto Mexicano - Los Cabos Winston-Salem Open - Winston-Salem Chengdu Open - Chengdu China Open - Beijing Kremlin Cup - Moscow Swiss Indoors Basel - Basel Apia International - Sydney Kosice Challenger Rio Open - Rio de Janeiro Brasil Open - Sao Paulo Pozoblanco Challenger Millennium Estoril Open - Estoril SkiStar Swedish Open - Bastad Winston-Salem Open - Winston-Salem Kremlin Cup - Moscow Erste Bank Open - Vienna Qatar ExxonMobil Open - Doha Ecuador Open - Quito Barcelona Open BancSabadell - Barcelona Millennium Estoril Open - Estoril SkiStar Swedish Open - Bastad German Tennis Championships - Hamburg Winston-Salem Open - Winston-Salem Barcelona Open Banc Sabadell - Barcelona Millennium Estoril Open - Estoril Turkish Airlines Open Antalya - Antalya SkiStar Swedish Open - Bastad German Tennis Championships - Hamburg Winston-Salem Open - Winston-Salem Moselle Open - Metz Chengdu Open - Chengdu Intrum Stockholm Open - Stockholm Erste Bank Open - Vienna Adelaide International - Adelaide Open Sud de France - Montpellier ABN AMRO World Tennis Tournament - Rotterdam Dubai Duty Free Tennis Championships - Dubai St. Petersburg Open - St. Petersburg European Open - Antwerp Erste Bank Open - Vienna Antalya Open - Antalya Segovia Challenger Barcelona Open Banc Sabadell - Barcelona Mallorca Championships - Mallorca Winston-Salem Open - Winston-Salem Moselle Open - Metz Stockholm Open - Stockholm Kremlin Cup - Moscow Erste Bank Open - Vienna Anytech365 Andalucia Open - Marbella Emilia-Romagna Open - Parma Astana Open - Nur-Sultan Rio Open - Rio de Janeiro Qatar ExxonMobil Open - Doha Dubai Duty Free Tennis Championships - Dubai Abierto Mexicano Telcel - Acapulco Grand Prix Hassan II - Marrakech Barcelona Open Banc Sabadell - Barcelona San Sebastian Challenger Noventi Open - Halle Mallorca Championships - Mallorca Nordea Open - Bastad Hamburg European Open - Hamburg Swiss Open - Gstaad Generali Open - Kitzbuhel Astana Open - Astana Stockholm Open - Stockholm Swiss Indoors Basel - Basel Como Challenger ABN AMRO World Tennis Tournament - Rotterdam Qatar ExxonMobil Open - Doha Dubai Duty Free Tennis Championships - Dubai Grand Prix Hassan II - Marrakech Barcelona Open Banc Sabadell - Barcelona Banja Luka Challenger Mallorca Championships - Mallorca Hamburg European Open - Hamburg Heilbronn Challenger Casablanca Challenger Chengdu Open - Chengdu Brest Challenger Koblenz Challenger Generali Open - Kitzbuhel Winston-Salem Open - Winston-Salem Erste Bank Open - Vienna BNP Paribas Nordic Open - Stockholm Adelaide International - Adelaide Quimper Challenger Grand Prix Hassan II - Marrakech Barcelona Open Banc Sabadell - Barcelona Budapest Challenger Rome Challenger Bordeaux Challenger Caltanissetta Challenger Blois Challenger Tanger Challenger Timisoara Challenger Poznan Challenger Segovia Challenger Cordenons Challenger Como Challenger Genova Challenger Shymkent Challenger Samarkand Challenger Jerusalem Challenger Almaty Challenger L'Aquila Challenger Seville Challenger Meknes Challenger Rome Challenger Pozoblanco Challenger San Sebastian Challenger Caltanissetta Challenger Milan Challenger Manerbio Challenger Napoli Challenger Quimper Challenger Bergamo Challenger Meknes Challenger BNP Paribas Open - Indian Wells Sony Open Tennis - Miami Monte-Carlo Rolex Masters - Monte-Carlo Internazionali BNL d'Italia - Rome BNP Paribas Open - Indian Wells Monte-Carlo Rolex Masters - Monte-Carlo Internazionali BNL d'Italia - Rome Orbetello Challenger BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Monte-Carlo Rolex Masters - Monte-Carlo Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Monte-Carlo Rolex Masters - Monte-Carlo Heilbronn Challenger Internazionali BNL d'Italia - Rome Rogers Cup - Montreal Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Miami Open - Miami Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Braunschweig Challenger Rogers Cup - Toronto Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai Braunschweig Challenger Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai Internazionali BNL d'Italia - Rome Western & Southern Open - New York Rolex Paris Masters - Paris BNP Paribas Open - Indian Wells Monte-Carlo Rolex Masters - Monte-Carlo Prostejov Challenger Perugia Challenger Poznan Challenger Mutua Madrid Open - Madrid Seville Challenger Internazionali BNL d'Italia - Rome Szczecin Challenger Western & Southern Open - Cincinnati Rolex Paris Masters - Paris BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid National Bank Open - Montreal BNP Paribas Open - Indian Wells Miami Open - Miami Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Aix En Provence Challenger Cincinnati Open - Cincinnati Shymkent Challenger Jingshan Challenger Sanremo Challenger Rome Challenger Shymkent Challenger Almaty Challenger Fergana Challenger Heilbronn Challenger St. Brieuc Challenger Alicante Challenger Ostrava Challenger Recanati Challenger Perugia Challenger Rennes Challenger Quimper Challenger Barletta Challenger Eckental Challenger Ortisei Challenger Maia Challenger Nur-Sultan 1 Challenger Almaty 2 Challenger Segovia Challenger Cordenons Challenger Manama Challenger Murcia Challenger Pau Challenger Forli 2 Challenger Bordeaux Challenger Forli 2 Challenger Palermo Challenger Istanbul Challenger Tennis Napoli Open - Naples Winston-Salem Open - Winston-Salem Qatar ExxonMobil Open - Doha Dubai Duty Free Tennis Championships - Dubai Open Parc - Lyon Mallorca Championships - Mallorca Nordea Open - Bastad Bari Challenger Chengdu Open - Chengdu Belgrade Open - Belgrade Hong Kong Tennis Open - Hong Kong Rio Open - Rio de Janeiro Grand Prix Hassan II - Casablanca Barcelona Open BancSabadell - Barcelona Open de Nice Cote d'Azur - Nice Aegon Nottingham Open - Nottingham Austrian Open - Kitzbuhel Helsinki Challenger Rakuten Japan Open - Tokyo Eckental Challenger Grand Prix Hassan II - Casablanca China Open - Beijing China Open - Beijing Qatar ExxonMobil Open - Doha Moselle Open - Metz Winston-Salem Open - Winston-Salem Barcelona Open BancSabadell - Barcelona Aegon Nottingham Open - Nottingham Argentina Open - Buenos Aires Barcelona Open BancSabadell - Barcelona China Open - Beijing Argentina Open - Buenos Aires Rio Open - Rio de Janeiro ASB Classic - Auckland Heineken Open - Auckland Copa Claro - Buenos Aires Power Horse Cup - Dusseldorf Generali Open - Kitzbuhel Dubai Duty Free Tennis Championships - Dubai Open Parc - Lyon Sofia Open - Sofia Gijon Open - Gijon Adelaide International 2 - Adelaide Cordoba Open - Cordoba Hamburg European Open - Hamburg Shanghai Rolex Masters - Shanghai French Open - Paris BNP Paribas Open - Indian Wells Australian Open - Melbourne Miami Open - Miami Wimbledon - London U.S. Open - New York Libema Open - 's-Hertogenbosch Mutua Madrid Open - Madrid Miami Open - Miami Miami Open - Miami Mutua Madrid Open - Madrid Terra Wortmann Open - Halle Australian Open - Melbourne Internazionali BNL d'Italia - Rome French Open - Paris Rolex Paris Masters - Paris U.S. Open - New York French Open - Paris Rolex Paris Masters - Paris Wimbledon - London U.S. Open - New York French Open - Paris Australian Open - Melbourne French Open - Paris Miami Open - Miami Mutua Madrid Open - Madrid U.S. Open - New York Australian Open - Melbourne Western & Southern Open - Cincinnati French Open - Paris BNP Paribas Masters - Paris Wimbledon - London U.S. Open - New York BNP Paribas Masters - Paris Australian Open - Melbourne French Open - Paris Australian Open - Melbourne U.S. Open - New York Wimbledon - London U.S. Open - New York Wimbledon - London French Open - Paris U.S. Open - New York French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne U.S. Open - New York French Open - Paris Australian Open - Melbourne Wimbledon - London Australian Open - Melbourne Australian Open - Melbourne French Open - Paris Wimbledon - London Davis Cup, Group I, 2R, ROU-ESP 1-4 Davis Cup, World Group, 1R, CRO-ESP 2-3 Davis Cup, World Group, QF, SRB-ESP 4-1 Davis Cup, Finals, QF, ARG-ESP 1-2 ATP Cup - Melbourne Davis Cup, Finals, Group A ATP Cup - Sydney Davis Cup, Finals, QF, CRO-ESP 2-0 Davis Cup, World Group, Q2, ESP-DEN 3-2 U.S. Open (juniors) Davis Cup, World Group, SF, FRA-ESP 3-2 French Open (juniors) French Open (juniors) Wimbledon (juniors) Kooyong Classic - Kooyong Mubadala World Tennis Championship All Lower level tournaments Nitto ATP Finals - London Olympics - Tokyo Australian Open (juniors) Olympics - Paris