Career 2025 2024 2023 2022 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012 2011 2010 2009 2008 2007
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 Bratislava 2 Challenger Oeiras 2 Challenger Chennai Challenger Prostejov Challenger Shanghai Rolex Masters - Shanghai BNP Paribas Open - Indian Wells Davis Cup, World Group, Q, TPE-USA 0-4 Miami Open - Miami French Open - Paris Spain F17 Spain F18 Spain F19 Spain F22 Spain F23 Spain F26 Spain F27 Spain F34 Spain F35 Portugal F4 Portugal F5 Spain F38 Spain F39 Spain F40 Spain F41 Spain F5 Spain F6 Spain F8 Spain F9 Spain F10 Spain F13 Spain F18 Spain F19 Spain F20 Spain F30 Spain F31 Spain F34 Portugal F7 Portugal F8 Spain F39 Spain F40 Spain F41 Spain F42 United Arab Emirates F1 United Arab Emirates F2 Spain F3 Spain F4 Spain F5 Spain F7 Spain F11 Turkey F4 Turkey F5 Turkey F6 Spain F16 Spain F17 Spain F18 Spain F20 Spain F21 France F12 Spain F28 Spain F10 Spain F29 Spain F30 Portugal F4 Portugal F5 Spain F35 Spain F37 Spain F3 Spain F4 Italy F2 Italy F3 Spain F16 Spain F17 Spain F18 Spain F19 Spain F20 Italy F17 Spain F31 Spain F35 Spain F36 France F4 Spain F14 Spain F15 Spain F36 Spain F37 Spain F38 USA F27 USA F28 Chinese Taipei F1 Hong Kong F5 Hong Kong F6 (Hong Kong) Italy F19 (Basilicanova) Turkey F7 (Antalya) Turkey F8 (Antalya) Turkey F9 (Antalya) Vietnam F1 (Thua Thien Hue) Vietnam F2 (Thua Thien Hue) Portugal F9 (Povoa de Varzim) Chinese Taipei F1 (Taipei) Chinese Taipei F2 (Taipei) M15 Sharm El Sheikh M15 Sharm El Sheikh M15 Sharm El Sheikh M25 Aktobe M25 Aktobe M25 Hong Kong M25 Hong Kong M25+H Kassel M25 Hamburg M25 Vale Do Lobo M25 Angers M25 Prague M25 Nur-Sultan M25 Pitesti M25 Portimao Spain F33 Spain F3 Spain F17 Romania F11 Romania F10 Spain F33 Kos Succhetti Tennis Cup - Cordenons Tarragona Challenger Rennes Challenger Tanger Challenger Leon Challenger Tallahassee Challenger Istanbul Challenger Manerbio Challenger Seville Challenger Izmir Challenger Sao Paulo Challenger Courmayeur Challenger Quimper Challenger Furth Challenger Marburg Challenger Tampere Challenger San Marino Challenger San Sebastian Challenger Eckental Challenger Kazan Challenger Meknes Challenger M15 Curtea de Arges Casablanca Challenger Marrakech Challenger Mersin Challenger Milan Challenger Tampere Challenger Sibiu Challenger Cordenons Challenger Como Challenger Alphen Challenger Rio De Janeiro Challenger Bordeaux Challenger Furth Challenger Kosice Challenger Todi Challenger San Benedetto Challenger Poznan Challenger Guimaraes Challenger Mamaia Challenger - Constanta Orbetello Challenger Seville Challenger Rabat Challenger Szczecin Challenger Reggio Emilia Challenger Casablanca Challenger Recanati Challenger Tampere Challenger Kosice Challenger Rabat Challenger Kosice Challenger Trnava Challenger Chinese Taipei F3 Yokohama Challenger Phoenix Challenger Braga Challenger Almaty 1 Challenger Orleans Challenger Heilbronn Challenger Guangzhou Challenger Pingguo Challenger Phoenix Challenger Prague Challenger Zadar Challenger Maia 1 Challenger Braunschweig Challenger Santo Domingo Challenger Quimper Challenger Baotou Challenger Porto Challenger Oeiras 1 Challenger Segovia Challenger Oeiras 1 Challenger Banja Luka Challenger Bengalaru 1 Challenger Trnava Challenger Madrid Challenger Verona Challenger Girona Challenger Oeiras 3 Challenger Taipei City Challenger Turin Challenger Playford Challenger Canberra Challenger Prague 3 Challenger Tunis Challenger Shenzhen 1 Challenger Sopot Challenger Manerbio Challenger Modena Challenger Cordenons Challenger Jinan Challenger Shenzhen Challenger Pau Challenger Oeiras 4 Challenger Nur-Sultan 3 Challenger Nur-Sultan 4 Challenger Verona Challenger Barletta Challenger Mallorca Challenger Istanbul 2 Challenger Biel Challenger Tenerife Challenger Ortisei Challenger Pau Challenger Helsinki Challenger Antalya 3 Challenger Maia 2 Challenger Bratislava Challenger Roseto Degli Abruzzi 2 Challenger Marbella Challenger Murcia Challenger Prague 1 Challenger Ostrava Challenger Heilbronn Challenger Poznan Challenger Tulln Challenger Szczecin Challenger Seoul Challenger Pune Challenger Phoenix Challenger Girona Challenger Aix En Provence Challenger Cordenons Challenger Calgary Challenger Nonthaburi 1 Challenger Kobe Challenger Nonthaburi 2 Challenger Szekesfehervar Challenger Murcia Challenger Ostrava Challenger Skopje Challenger Milan Challenger Hangzhou Challenger Matsuyama Challenger Vicenza Challenger 84° Concurso Internacional Tenis San Sebastian - San Sebastian Trieste Challenger Kaohsiung Challenger Jingshan Challenger Estoril Open - Estoril Ningboo Challenger Kobe Challenger Bangkok Challenger Bergamo Challenger Estoril Open - Estoril Forli Challenger Bratislava 2 Challenger Lisbon Challenger Cary Challenger Antalya Challenger Antalya 2 Challenger Potchefstroom 1 Challenger Potchefstroom 2 Challenger St. Brieuc Challenger Rome Challenger Cremona Challenger Alicante Challenger Bengalaru 2 Challenger Quimper Challenger Bergamo Challenger If Stockholm Open - Stockholm Milan Challenger San Juan Challenger Vicenza Challenger Porto Alegre Challenger Taipei 2 Challenger Montevideo Challenger M25 Nonthaburi Open Sabadell Atlantico - Barcelona Estoril Open - Estoril Meknes Challenger Open 13 - Marseille Credit Agricole Suisse Open - Gstaad Montechiarugolo - Parma Challenger Marrakech Challenger Aircel Chennai Open - Chennai Apia International - Sydney Kaohsiung Challenger Brasil Open - Sao Paulo Copa Claro - Buenos Aires Abierto Mexicano Telcel - Acapulco Power Horse Cup - Dusseldorf Winston-Salem Open - Winston-Salem Malaysian Open - Kuala Lumpur Open Sud de France - Montpellier Rio Open 500 - Rio de Janeiro Abierto Mexicano Telcel - Acapulco Portugal Open - Oeiras Topshelf Open - 's-Hertogenbosch Vegeta Croatia Open - Umag China Open - Beijing Open Sud de France - Montpellier ABN AMRO World Tennis Tournament - Rotterdam Open 13 - Marseille Barcelona Open BancSabadell - Barcelona Geneva Open - Geneva St. Petersburg Open - St. Petersburg Millennium Estoril Open - Estoril Grand Prix Hassan II - Marrakech SkiStar Swedish Open - Bastad Winston-Salem Open - Winston-Salem Millennium Estoril Open - Estoril Orlando Challenger Erste Bank Open - Vienna ASB Classic - Auckland Rio Open - Rio de Janeiro Geneva Open - Geneva Tunis Challenger Gerry Weber Open - Halle Gerry Weber Open - Halle Generali Open - Kitzbuhel Winston-Salem Open - Winston-Salem St. Petersburg Open - St. Petersburg Rakuten Japan Open - Tokyo European Open - Antwerp ASB Classic - Auckland SkiStar Swedish Open - Bastad Grand Prix Hassan II - Marrakech Millennium Estoril Open - Estoril Gerry Weber Open - Halle Antalya Cup - Antalya ASB Classic - Auckland Geneva Open - Geneva SkiStar Swedish Open - Bastad Libema Open - 's-Hertogenbosch Swiss Open - Gstaad Winston-Salem Open - Winston-Salem St. Petersburg Open - St. Petersburg Chengdu Open - Chengdu ASB Classic - Auckland Dubai Duty Free Tennis Championships - Dubai Turin Challenger European Open - Antwerp Lisbon Challenger Mercedes Cup - Stuttgart Sardegna Open - Cagliari Melbourne Summer Set - Melbourne Tata Open Maharashtra - Pune Qatar ExxonMobil Open - Doha Serbia Open - Belgrade Mallorca Championships - Mallorca Swiss Open - Gstaad Generali Open - Kitzbuhel Winston-Salem Open - Winston-Salem Moselle Open - Metz Erste Bank Open - Vienna Next Gen ATP Finals - Milan ASB Classic - Auckland Rio Open - Rio de Janeiro Hamburg Open - Hamburg Estoril Open - Estoril German Tennis Championships - Hamburg Aircel Chennai Open - Chennai Heineken Open - Auckland Gerry Weber Open - Halle Studena Croatia Open - Umag Seville Challenger Genova Challenger Dubai Duty Free Tennis Championships - Dubai Rome Challenger Topshelf Open - 's-Hertogenbosch Valencia Open - Valencia Open Parc - Lyon Apia International - Sydney Bordeaux Challenger Furth Challenger Trieste Challenger Grand Prix Hassan II - Casablanca Barcelona Open BancSabadell - Barcelona Power Horse Cup - Dusseldorf Bet-at-home Open - Hamburg Winston-Salem Open - Winston-Salem Moselle Open - Metz Malaysian Open - Kuala Lumpur If Stockholm Open - Stockholm Cordoba Open - Cordoba Madrid Challenger Heineken Open - Auckland Dubai Duty Free Tennis Championships - Dubai Naples Challenger Lyon Challenger AEGON Championships - London Aegon Nottingham Open - Nottingham Vegeta Croatia Open - Umag Como Challenger Credit Agricole Suisse Open - Gstaad Winston-Salem Open - Winston-Salem Malaysian Open - Kuala Lumpur Rakuten Japan Open - Tokyo Kremlin Cup - Moscow Valencia Open - Valencia ASB Classic - Auckland Open Sud de France - Montpellier ABN AMRO World Tennis Tournament - Rotterdam Dubai Duty Free Tennis Championships - Dubai Barcelona Open BancSabadell - Barcelona Open de Nice Cote d'Azur - Nice Gonet Geneva Open - Geneva Aegon Nottingham Open - Nottingham Konzum Croatia Open - Umag St. Petersburg Open - St. Petersburg Brest Challenger Rakuten Japan Open - Tokyo Kaohsiung Challenger Argentina Open - Buenos Aires Barcelona Open BancSabadell - Barcelona Millennium Estoril Open - Estoril Rosario Challenger Sophia Antipolis Challenger Konzum Croatia Open - Umag Bordeaux Challenger Suisse Open - Gstaad Garanti Koza Sofia Open - Sofia ABN AMRO World Tennis Tournament - Rotterdam Brasil Open - Sao Paulo Chengdu Open - Chengdu China Open - Beijing Oeiras 3 Challenger Biella Challenger Sao Paulo Challenger Rio Open - Rio de Janeiro Mallorca Challenger Barcelona Open Banc Sabadell - Barcelona Oeiras 2 Challenger Millennium Estoril Open - Estoril Noventi Open - Halle Turkish Airlines Open Antalya - Antalya Almaty 2 Challenger Open Parc - Lyon Bengaluru Challenger Korea Open - Seoul Tel Aviv Watergen Open - Tel Aviv Intrum Stockholm Open - Stockholm ABN AMRO World Tennis Tournament - Rotterdam Generali Open - Kitzbuhel Cordoba Open - Cordoba Argentina Open - Buenos Aires Chile Dove Men+Care Open - Santiago Abierto Mexicano Telcel - Acapulco Serbia Open - Belgrade Argentina Open - Buenos Aires Noventi Open - Halle Mallorca Championships - Mallorca Hall of Fame Open - Newport Busan Challenger Rakuten Japan Open - Tokyo Swiss Indoors Basel - Basel Bengaluru Challenger Prague 2 Challenger Tunis Challenger Dubai Duty Free Tennis Championships - Dubai Troisdorf Challenger Vicenza Challenger Grand Prix Hassan II - Marrakech Millennium Estoril Open - Estoril Mercedes Cup - Stuttgart Noventi Open - Halle Prostejov Challenger Nordea Open - Bastad Braga Challenger Hamburg European Open - Hamburg Abierto de Tenis Mifel - Los Cabos Rakuten Japan Open - Tokyo Stockholm Open - Stockholm Dallas Open - Dallas Argentina Open - Buenos Aires Chile Dove Men+Care Open - Santiago Millennium Estoril Open - Estoril Rio Open - Rio de Janeiro BMW Open - Munich Plava Laguna Croatia Open - Umag Ortisei Challenger Gijon Open - Gijon Ismaning Challenger Drummondville Challenger Millennium Estoril Open - Estoril Maia Challenger Pune Challenger Barletta Challenger Plava Laguna Croatia Open - Umag Chengdu Open - Chengdu Nordea Open - Bastad Perugia Challenger Hangzhou Open - Hangzhou San Marino Challenger Seoul Challenger Valencia Open - Valencia Open 13 - Marseille Antalya Cup - Antalya Plava Laguna Croatia Open - Umag Swiss Open - Gstaad Swiss Indoors Basel - Basel Argentina Open - Buenos Aires Rothesay International - Eastbourne Brasil Open - Sao Paulo Millennium Estoril Open - Estoril VTR Open - Vina del Mar Chennai Challenger Sanremo Challenger Cassis Challenger Bratislava Challenger Nonthaburi 3 Challenger Hellenic Championship - Athens Winston-Salem Open - Winston-Salem Estoril Open - Estoril Copa Claro - Buenos Aires Western & Southern Open - Cincinnati BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Sony Open Tennis - Miami Qatar ExxonMobil Open - Doha Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Shanghai Rolex Masters - Shanghai Miami Open - Miami Mutua Madrid Open - Madrid Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai Internazionali BNL d'Italia - Rome Western & Southern Open - Cincinnati BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Internazionali BNL d'Italia - Rome Miami Open - Miami Mutua Madrid Open - Madrid Winston-Salem Open - Winston-Salem Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Miami Open - Miami Kremlin Cup - Moscow Internazionali BNL d'Italia - Rome Rogers Cup - Toronto BNP Paribas Open - Indian Wells Western & Southern Open - Cincinnati BNP Paribas Masters - Paris Open 13 Provence - Marseille Shanghai Rolex Masters - Shanghai BNP Paribas Open - Indian Wells Miami Open - Miami BNP Paribas Open - Indian Wells Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Monte-Carlo Rolex Masters - Monte-Carlo Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai Shanghai Rolex Masters - Shanghai Western & Southern Open - New York BNP Paribas Open - Indian Wells Tata Open Maharashtra - Pune Monte-Carlo Rolex Masters - Monte-Carlo Brisbane International - Brisbane Miami Open - Miami Tiriac Open - Bucharest BNP Paribas Open - Indian Wells Sony Open Tennis - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid National Bank Open - Montreal Miami Open - Miami Western & Southern Open - Cincinnati Rogers Cup - Toronto Western & Southern Open - Cincinnati BNP Paribas Open - Indian Wells Monte-Carlo Rolex Masters - Monte-Carlo Internazionali BNL d'Italia - Rome BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Shanghai Rolex Masters - Shanghai Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome BNP Paribas Masters - Paris Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Mutua Madrid Open - Madrid Rolex Paris Masters - Paris Monte-Carlo Rolex Masters - Monte-Carlo National Bank Open - Toronto Internazionali BNL d'Italia - Rome St. Petersburg Open - St. Petersburg Chengdu Open - Chengdu European Open - Antwerp Open Sud de France - Montpellier Shenzhen Open - Shenzhen Swiss Indoors Basel - Basel Barcelona Open BancSabadell - Barcelona St. Petersburg Open - St. Petersburg Open Sud de France - Montpellier Australian Open - Melbourne Wimbledon - London 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 Australian Open - Melbourne Wimbledon - London Shanghai Rolex Masters - Shanghai U.S. Open - New York 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 U.S. Open - New York Australian Open - Melbourne French Open - Paris Australian Open - Melbourne Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London Internazionali BNL d'Italia - Rome U.S. Open - New York Australian Open - Melbourne French Open - Paris U.S. Open - New York French Open - Paris Australian Open - Melbourne Wimbledon - London Wimbledon - London U.S. Open - New York French Open - Paris Rogers Cup - Montreal Wimbledon - London U.S. Open - New York Rogers Cup - Toronto French Open - Paris Australian Open - Melbourne Wimbledon - London U.S. Open - New York Cassis Challenger Australian Open - Melbourne French Open - Paris Davis Cup, Group II, 3R, MDA-POR 2-3 Davis Cup, Group I, 1R, POR-ISR 5-0 Davis Cup, Group 2, 2R, POR-CYP 5-0 Davis Cup, World Group I, PO, UKR-TPE 3-2 Trieste Challenger Davis Cup, Group II, 1R, POR-BEN 5-0 Davis Cup, Group 2, PO, ALG-POR 0-5 Davis Cup, Group I, 1R, SLO-POR 3-2 Davis Cup, Group I, PO, RUS-POR 4-1 Davis Cup, Group I, 1R, POR-SVK 4-1 Davis Cup, Group II, 1R, POR-MAR 4-1 Davis Cup, Group I, 2R, ISR-POR 3-2 Davis Cup, Group I, PO, SVK-POR 3-1 Davis Cup, Group I, PO, POR-SLO 5-0 Davis Cup, Group I, 2R, POR-UKR 4-1 Davis Cup, World Group, PO, POR-GER 2-3 Davis Cup, Group I, 2R, SWE-POR 3-2 Davis Cup, Group I, 1R, BLR-POR 3-2 Davis Cup, Group I, 1R, POR-BRA 3-1 Davis Cup, World Group, PO, POR-CZE 1-3 Davis Cup, Group I, PO, MEX-TPE 1-3 Davis Cup, World Group, Q, TPE-FRA 0-4 Davis Cup, Group II, PO, GUA-TPE 0-4 Davis Cup, World Group I, 1R, TPE-BIH 3-2 Davis Cup, Europe/Africa Group II, 2R, POR-CYP 5-0 Davis Cup, Europe/Africa Group II, 3R, POR-BIH 3-2 Davis Cup, Group I, 2R, SUI-POR 5-0 Davis Cup, Group 2, 1R, CYP-POR 3-2 Davis Cup, Group II, 2R, POR-FIN 4-1 Davis Cup, World Group I, PO, LTU-POR 0-4 Davis Cup, Group I, 1R, ROU-POR 3-1 Davis Cup, Group I, 1R, AUT-POR 1-3 Davis Cup, Group I, 1R, TPE-NOR 2-3 Davis Cup, World Group, QR, KAZ-POR 3-1 Davis Cup, Group II, 3R, POR-BLR 3-2 Davis Cup, Group II, 1R, HKG-TPE 0-4 U.S. Open (juniors) Davis Cup, Group I, PO, POR-POL 4-0 Davis Cup, World Group, Q, FIN-POR 3-1 Davis Cup, Group I, 1R, POR-AUT 1-4 Davis Cup, Group I, 1R, ROU-TPE 1-3 Australian Open (juniors) Davis Cup, Group II, 1R, LIB-TPE 3-2 Davis Cup, Group I, PO, UKR-POR 3-1 French Open (juniors) Wimbledon (juniors) Australian Open (juniors) French Open (juniors) Wimbledon (juniors) All Lower level tournaments Australian Open - Melbourne Wimbledon - London U.S. Open - New York Olympics - Rio de Janeiro Olympics - Tokyo Davis Cup, Group I, PO, POR-RSA 4-0