Career 2025 2024 2023 2022 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012 2011 2010 2009 2008 2007 2006
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 Salzburg Challenger Porto Challenger San Marino Challenger Mallorca Challenger U.S. Open - New York Buenos Aires Challenger Montevideo Challenger Seville Challenger Lisbon Challenger Lima 2 Challenger Campinas Challenger Santa Fe 2 Challenger Manama Challenger Oeiras 2 Challenger Oeiras 3 Challenger Oeiras 1 Challenger Tenerife 2 Challenger M25 Quinta Do Lago Poznan Challenger Tenerife 3 Challenger Girona Challenger Murcia Challenger Millennium Estoril Open - Estoril Madrid Challenger Francavilla Challenger Oeiras 4 Challenger Todi Challenger Porto Challenger Brasov Challenger Milan Challenger Seville Challenger Sibiu Challenger Lisbon Challenger M25 Vila Real de Santo Antonio Braga Challenger Campinas Challenger Curitiba Challenger Valencia Challenger Oeiras 2 Challenger Guayaquil Challenger Lima 2 Challenger Montevideo Challenger M25 Quinta do Lago Tenerife 1 Challenger M25 Vale do Lobo M25 Vila Real de Santo Antonio Oeiras 3 Challenger Oeiras 4 Challenger Oeiras 1 Challenger Oeiras 5 Challenger M25 Porto M25 Figueira da Foz Estoril Challenger Girona Challenger M25 Reus M25 Mataro Pozoblanco Challenger M25 Sintra Porto Challenger M25 Sintra Brazil F22 Brazil F31 Brazil F1 Colombia F1 Colombia F2 USA F7 Brazil F26 Brazil F33 Spain F32 Portugal F4 Portugal F5 Portugal F6 Spain F7 Brazil F32 Portugal F1 Portugal F2 Portugal F3 Argentina F3 Spain F17 Spain F18 Spain F28 Spain F32 Spain F33 Sweden F5 Argentina F16 Argentina F18 USA F26 Mexico F10 Mexico F11 USA F1 USA F2 USA F3 Spain F17 Spain F18 Greece F2 Argentina F5 Argentina F6 Argentina F7 Paraguay F2 Paraguay F3 Ecuador F1 Ecuador F2 Ecuador F3 Argentina F9 Argentina F10 Spain F36 Spain F37 Spain F41 Spain F42 Spain F43 Mexico F1 Guatemala F1 Costa Rica F1 Panama F1 Colombia F2 Spain F7 Canada F1 Canada F2 Canada F3 Italy F3 Italy F4 Usa F7 Usa F8 Czech Rep. F2 Argentina F6 Czech Rep. F3 Spain F18 Argentina F7 Usa F14 Usa F15 Usa F18 Brazil F33 Usa F5 Portugal F3 Switzerland F3 Spain F11 Italy F5 Usa F13 Usa F15 M15 Sintra M15 Sintra M25 Porto M25 Vale Do Lobo M25 Villena M25 Vale do Lobo M25 Faro M25 Vale do Lobo Naples Challenger - Naples Copa Petrobras Argentina - Buenos Aires 2007 Knoxville Challenger - Knoxville Bancolombia Open - Bogota Abierto Internacional de Salinas 'Dario Expreso' - Salinas Roma Open Challenger - Rome III Challenger Isla de Gran Canaria Ciudad de Telde - Telde San Remo Tennis Cup - San Remo Nielsen USTA Pro Tennis Championship - Winnetka Challenger Banque Nationale - Granby Moncton Men's Challenger - Moncton Oldum Brown Vancouver Open - Vancouver Levene Gouldin & Thompson Tennis Challenger - Binghamton GHI Bronx Tennis Classic - Bronx Semgroup Challenger - Tulsa Sacramento Challenger - Sacramento Ford Tennis Championships - Louisville National Bank Men's Rimouski Challenger - Rimouski JSM Challenger of Champaign - Urbana Challenger Britania Zavaleta - Puebla Abierto Internacional Varonil Ciudad de Cancun - Cancun Sao Paulo Challenger Napoli Challenger Milan Challenger Braunschweig Challenger Pozoblanco Challenger Recanati Challenger Segovia Challenger San Sebastian Challenger Manerbio Challenger Bogota Challenger Quito Challenger Asuncion Challenger Santiago Challenger Barletta Challenger Napoli Challenger Rome Challenger Rome Challenger Tunis Challenger Zagreb Challenger Milan Challenger Reggio Emilia Challenger Braunschweig Challenger Rimini Challenger Orbetello Challenger Lexington Challenger Campos do Jordao Challenger Brasilia Challenger Salvador Challenger Genova Challenger Belo Horizonte Challenger Montevideo Challenger Buenos Aires Challenger Asuncion Challenger Santiago Challenger Sao Paulo Challenger Sao Paulo Challenger Bucaramanga Challenger Dallas Challenger Salinas Challenger Le Gosier Challenger Rabat Challenger Marrakech Challenger Monza Challenger Recife Challenger Prague Challenger Bordeaux Challenger Marburg Challenger Scheveningen Challenger Orbetello Challenger Recanati Challenger Campos do Jordao Challenger Trani Challenger Manerbio Challenger Como Challenger Szczecin Challenger Campinas Challenger Recife Challenger Belo Horizonte Challenger Rennes Challenger Orleans Challenger Sao Jose Do Rio Preto Challenger Sao Leopoldo Challenger Ortisei Challenger Buenos Aires Challenger Guayaquil Challenger Salzburg Challenger Montevideo Challenger Helsinki Challenger Sao Paulo Challenger Bucaramanga Challenger Florianopolis Challenger Rabat Challenger Marrakech Challenger Le Gosier Challenger Dallas Challenger Blumenau Challenger Santos Challenger Sao Paulo Challenger Bordeaux Challenger Caltanissetta Challenger Kosice Challenger Marburg Challenger Milan Challenger Braunschweig Challenger Arad Challenger Timisoara Challenger Tampere Challenger St. Remy Challenger Seville Challenger Szczecin Challenger Campinas Challenger Madrid Challenger Belem Challenger Rennes Challenger San Juan Challenger Rio De Janeiro Challenger Porto Alegre Challenger Geneva Challenger Montevideo Challenger Bratislava Challenger Sao Leopoldo Challenger Helsinki Challenger ATP Challenger Tour Finals Sao Paulo Challenger Bucaramanga Challenger Pereira Challenger Santiago Challenger Barranquilla Challenger Itajai Challenger Panama City Challenger Santos Challenger Sao Paulo Challenger Rome Challenger Bordeaux Challenger Caltanissetta Challenger Braunschweig Challenger Liberec Challenger Campinas Challenger Porto Alegre Challenger Sao Paulo Challenger Sao Jose Do Rio Preto Challenger Buenos Aires Challenger Montevideo Challenger Bogota Challenger Guayaquil Challenger Sao Paulo Challenger Bucaramanga Challenger Dallas Challenger Irving Challenger Panama City Challenger Barranquilla Challenger Itajai Challenger Sao Paulo Challenger Santos Challenger Aix En Provence Challenger Furth Challenger Blois Challenger Marburg Challenger Braunschweig Challenger Tampere Challenger Genova Challenger Campinas Challenger Porto Alegre Challenger Charlottesville Challenger Knoxville Challenger Champaign Challenger Bucaramanga Challenger Dallas Challenger Santo Domingo Challenger Irving Challenger Le Gosier Challenger Sarasota Challenger Savannah Challenger Aix En Provence Challenger Bordeaux Challenger Mestre Challenger Caltanissetta Challenger Blois Challenger Milan Challenger Braunschweig Challenger Aptos Challenger Vancouver Challenger Como Challenger Meknes Challenger Campinas Challenger Rome Challenger Porto Alegre Challenger Sao Paulo Challenger Mohammedia Challenger Corrientes Challenger Santiago Challenger Lima Challenger Guayaquil Challenger Buenos Aires Challenger Montevideo Challenger Bangkok Challenger Rio De Janeiro Challenger Bucaramanga Challenger Jonkoping Challenger Kazan Challenger Napoli Challenger Barletta Challenger Turin Challenger Bordeaux Challenger Mestre Challenger Vicenza Challenger Prostejov Challenger Milan Challenger Braunschweig Challenger Lima Challenger Guayaquil Challenger Barletta Challenger Francavilla Challenger Rome Challenger Bordeaux Challenger Prostejov Challenger Lisbon Challenger Todi Challenger Milan Challenger Braunschweig Challenger Perugia Challenger Scheveningen Challenger Floridablanca Challenger Santo Domingo Challenger Como Challenger Seville Challenger Rome Challenger Campinas Challenger Buenos Aires Challenger Cali Challenger Lima Challenger Guayaquil Challenger Montevideo Challenger Santiago Challenger Rennes Challenger Santiago Challenger Le Gosier Challenger Barletta Challenger Tunis Challenger Braga Challenger Como Challenger Genova Challenger Biella Challenger Campinas Challenger Santo Domingo Challenger Lima Challenger Guayaquil Challenger Montevideo Challenger Buenos Aires Challenger Noumea Challenger Orlando Challenger Columbus Challenger Newport Beach Challenger Chennai Challenger Bangkok Challenger Bangkok Challenger Yokohama Challenger Barletta Challenger Sarasota Challenger Francavilla Challenger Braga Challenger Lisbon Challenger Perugia Challenger Nur-Sultan Challenger Tampere Challenger Sopot Challenger Buenos Aires Challenger Campinas Challenger Santo Domingo Challenger Montevideo Challenger Noumea Challenger Ann Arbor Challenger Parma Challenger Lisbon Challenger Ismaning Challenger Sao Paulo Challenger Maia Challenger Oeiras 1 Challenger Oeiras 2 Challenger Oeiras 3 Challenger Oeiras 4 Challenger Biella 7 Challenger Forli Challenger Milan Challenger Porto Challenger Amersfoort Challenger Tampere Challenger Poznan Challenger San Marino Challenger Verona Challenger Maia 1 Challenger Maia 2 Challenger Bendigo Challenger Cherbourg Challenger Forli 4 Challenger Forli 5 Challenger Roseto Degli Abruzzi 2 Challenger Zadar Challenger Oeiras 1 Challenger Oeiras 2 Challenger Madrid Challenger Aix En Provence Challenger Bordeaux Challenger Forli 6 Challenger Perugia Challenger Montechiarugolo - Parma Challenger Braunschweig Challenger Lima Challenger Santo Domingo Challenger Seville Challenger Szczecin Challenger Genova Challenger Braga Challenger Lisbon Challenger Campinas Challenger Rio De Janeiro Challenger Las Vegas Challenger Montevideo Challenger Sao Leopoldo Challenger Canberra Challenger Concepcion Challenger Monterrey Challenger Waco Challenger Puerto Vallarta Challenger Santiago Challenger Las Franquesas del Valles Challenger Girona Challenger Prague 1 Challenger Mauthausen Challenger Prague 2 Challenger Oeiras 4 Challenger Cali Challenger Medellin Challenger Braga Challenger Estoril Open - Estoril Estoril Open - Estoril Gerry Weber Open - Halle Delray Beach International Tennis Championships - Delray Beach Estoril Open - Estoril Pilot Pen Tennis - New Haven Estoril Open - Estoril Allianz Suisse Open Gstaad - Gstaad Qatar Exxon Mobil Open - Doha Medibank International - Sydney Movistar Open - Santiago Brasil Open - Costa do Sauipe Copa Telmex - Buenos Aires Estoril Open - Estoril Campbells Hall of Fame Tennis Championships - Newport Open de Moselle - Metz Brasil Open - Costa do Sauipe Copa Claro - Buenos Aires Open Sabadell Atlantico - Barcelona Estoril Open - Estoril BMW Open - Munich Open de Nice Cote d'Azur - Nice Mercedes Cup - Stuttgart Erste Bank Open - Vienna VTR Open - Vina del Mar Brasil Open - Sao Paulo Copa Claro - Buenos Aires Grand Prix Hassan II - Casablanca Open Sabadell Atlantico - Barcelona Estoril Open - Estoril SkiStar Swedish Open - Bastad Bet-at-home Open - Hamburg If Stockholm Open - Stockholm VTR Open - Vina del Mar Brasil Open - Sao Paulo Copa Claro - Buenos Aires Delray Beach International Tennis Championships - Delray Beach Portugal Open - Oeiras Power Horse Cup - Dusseldorf AEGON Championships - London Bet-at-home Open - Hamburg Credit Agricole Suisse Open - Gstaad Moselle Open - Metz Malaysian Open - Kuala Lumpur Rakuten Japan Open - Tokyo Heineken Open - Auckland Royal Guard Open Chile - Vina del Mar U.S. National Indoor Tennis Championships - Memphis Copa Claro - Buenos Aires Rio Open 500 - Rio de Janeiro Delray Beach Open - Delray Beach Brasil Open - Sao Paulo Grand Prix Hassan II - Casablanca Portugal Open - Oeiras BMW Open - Munich Open de Nice Cote d'Azur - Nice AEGON International - Eastbourne Mercedes Cup - Stuttgart Bet-at-home Open - Hamburg Credit Agricole Suisse Open - Gstaad Winston-Salem Open - Winston-Salem Shenzhen Open - Shenzhen Rakuten Japan Open - Tokyo Erste Bank Open - Vienna Swiss Indoors Basel - Basel Qatar ExxonMobil Open - Doha Heineken Open - Auckland Brasil Open - Sao Paulo Rio Open - Rio de Janeiro Abierto Mexicano Telcel - Acapulco Argentina Open - Buenos Aires US Men's Clay Court Championship - Houston Geneva Open - Geneva SkiStar Swedish Open - Bastad BB&T Atlanta Open - Atlanta Credit Agricole Suisse Open - Gstaad Austrian Open - Kitzbuhel Winston-Salem Open - Winston-Salem Moselle Open - Metz If Stockholm Open - Stockholm Valencia Open - Valencia Millennium Estoril Open - Estoril Apia International - Sydney Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Brasil Open - Sao Paulo Grand Prix Hassan II - Marrakech BRD Nastase Tiriac Trophy - Bucharest Millennium Estoril Open - Estoril TEB BNP Paribas Istanbul Open - Istanbul Geneva Open - Geneva SkiStar Swedish Open - Bastad Konzum Croatia Open - Umag Winston-Salem Open - Winston-Salem St. Petersburg Open - St. Petersburg Chengdu Open - Chengdu Shenzhen Open - Shenzhen Rakuten Japan Open - Tokyo If Stockholm Open - Stockholm European Open - Antwerp Swiss Indoors Basel - Basel Aircel Chennai Open - Chennai Apia International - Sydney Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Brasil Open - Sao Paulo Grand Prix Hassan II - Marrakech Millennium Estoril Open - Estoril Open Parc - Lyon SkiStar Swedish Open - Bastad Bet-at-home Open - Hamburg Generali Open - Kitzbuhel Brisbane International - Brisbane Sydney International - Sydney Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Brasil Open - Sao Paulo Barcelona Open BancSabadell - Barcelona Millennium Estoril Open - Estoril Open Parc - Lyon Antalya Cup - Antalya SkiStar Swedish Open - Bastad Swiss Open - Gstaad Generali Open - Kitzbuhel Abierto Mexicano - Los Cabos Cordoba Open - Cordoba Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Brasil Open - Sao Paulo Grand Prix Hassan II - Marrakech Barcelona Open Banc Sabadell - Barcelona Millennium Estoril Open - Estoril Geneva Open - Geneva Turkish Airlines Open Antalya - Antalya SkiStar Swedish Open - Bastad German Tennis Championships - Hamburg Generali Open - Kitzbuhel European Open - Antwerp Erste Bank Open - Vienna Adelaide International - Adelaide Cordoba Open - Cordoba Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Santiago Open - Santiago Generali Open - Kitzbuhel Forte Village Sardegna Open - Sardinia Astana Open - Nur-Sultan Great Ocean Road Open - Melbourne Cordoba Open - Cordoba Argentina Open - Buenos Aires Chile Dove Men+Care Open - Santiago Serbia Open - Belgrade Hamburg European Open - Hamburg Swiss Open - Gstaad Generali Open - Kitzbuhel Winston-Salem Open - Winston-Salem St. Petersburg Open - St. Petersburg European Open - Antwerp Anytech365 Andalucia Open - Marbella Belgrade 2 - Belgrade San Diego Open - San Diego Sydney Tennis Classic - Sydney Cordoba Open - Cordoba Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Chile Dove Men+Care Open - Santiago Grand Prix Hassan II - Marrakech Barcelona Open Banc Sabadell - Barcelona Millennium Estoril Open - Estoril Gonet Geneva Open - Geneva Mallorca Championships - Mallorca Nordea Open - Bastad Swiss Open - Gstaad Plava Laguna Croatia Open - Umag Cordoba Open - Cordoba Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Chile Dove Men+Care Open - Santiago Sony Ericsson Open - Miami Sony Ericsson Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrilena Madrid Open - Madrid Internazionali BNL d'Italia - Rome BNP Paribas Open - Indian Wells Sony Ericsson Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrilena Madrid Open - Madrid BNP Paribas Open - Indian Wells Sony Open Tennis - Miami Mutua Madrid Open - Madrid Shanghai Rolex Masters - Shanghai BNP Paribas Open - Indian Wells Sony Open Tennis - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Rogers Cup - Toronto 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 BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Rogers Cup - Toronto Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai BNP Paribas Open - Indian Wells Miami Open - Miami BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Western & Southern Open - Cincinnati BNP Paribas Masters - Paris Western & Southern Open - New York Rolex Paris Masters - Paris BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome 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 Internazionali BNL d'Italia - Rome Mutua Madrid Open - Madrid Australian Open - Melbourne French Open - Paris U.S. Open - New York French Open - Paris Wimbledon - London U.S. Open - New York French Open - Paris Wimbledon - London 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 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 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 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 Davis Cup, Group 1, 1R, GEO-POR 3-2 Davis Cup, Group 2, 2R, POR-TUN 4-1 Salinas Challenger Amersfoort Challenger Davis Cup, Group I, PO, SVK-POR 3-1 Davis Cup, Group II, 2R, POR-LTU 5-0 Davis Cup, Group II, 3R, MDA-POR 2-3 Davis Cup, Group I, 1R, SLO-POR 3-2 Davis Cup, World Group, 1R, ARG-BRA 3-2 Davis Cup, World Group, QF, ARG-SRB 4-1 Davis Cup, World Group, SF, BEL-ARG 3-2 Davis Cup, Group II, 3R, POR-BLR 3-2 Davis Cup, Group I, 1R, POR-AUT 1-4 Davis Cup, World Group, QF, ITA-ARG 1-3 Davis Cup, Group I, PO, POR-SLO 5-0 Davis Cup, World Group, F, CRO-ARG 2-3 Davis Cup, Group I, 1R, POR-ISR 5-0 Davis Cup, Group I, 2R, POR-UKR 4-1 Davis Cup, Group I, 2R, SWE-POR 3-2 Davis Cup, Group I, 1R, ROU-POR 3-1 Lyon Challenger ATP Cup - Sydney Davis Cup, Group I, PO, POR-POL 4-0 Porto 2 Challenger Verona Challenger All Lower level tournaments Zagreb Challenger Wimbledon (juniors) U.S. Open (juniors) Australian Open (juniors) U.S. Open (juniors) French Open (juniors) Wimbledon (juniors) Szczecin Challenger Olympics - Rio de Janeiro U.S. Open - New York Davis Cup, Group I, PO, RUS-POR 4-1