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 Spain F32 Portugal F4 Portugal F6 Spain F7 Portugal F2 Portugal F3 Spain F17 Spain F18 Sweden F5 USA F26 Mexico F10 Mexico F11 USA F1 USA F2 USA F3 Mexico F1 Costa Rica F1 Canada F1 Canada F2 Canada F3 Usa F7 Usa F8 Czech Rep. F2 Czech Rep. F3 Spain F18 Usa F14 Usa F15 Usa F18 Usa F5 Portugal F3 Switzerland F3 Spain F11 Usa F13 Usa F15 Brazil F31 Brazil F32 Brazil F33 Brazil F1 Colombia F1 Colombia F2 USA F7 Brazil F26 Brazil F33 Portugal F5 Portugal F1 Italy F5 Brazil F22 Italy F19 (Gubbio) Italy F26 (Trieste) Italy F29 (Santa Margherita Di Pula) M15 Sharm El Sheikh M15 Sharm El Sheikh M15 Reggio Emilia M15 Sintra M15 Sintra M25 Porto M25 Vale Do Lobo M15 Monastir M15 Monastir M15 Monastir M25 Villena M25 Vale do Lobo M25 Faro M25 Vale do Lobo M15 Antalya M15 Antalya M15 Antalya M15 Antalya M15 Antalya M15 Perugia Colombia F2 M15 Monastir M15 Monastir M15 Monastir M15 Monastir M25 Sharm ElSheikh M15 Monastir M25 Vila Real de Santo Antonio M15 Monastir M25 Vale do Lobo III Challenger Isla de Gran Canaria Ciudad de Telde - Telde M25 Santa Margherita di Pula M15 Alaminos-Larnaca Salinas Challenger M25 Monastir Moncton Men's Challenger - Moncton M25 Vila Real de Santo Antonio M25 Vale do Lobo M25 Heraklion M25 Wetzlar M25 Sharm ElSheikh M25 Nottingham M15 Monastir M25 Porto Challenger Britania Zavaleta - Puebla M15 Kursumlijska Banja M15 Monastir M25 Santa Margherita di Pula National Bank Men's Rimouski Challenger - Rimouski M15 Monastir M25 Monastir M25 Monastir M25 Figueira da Foz M25 Kursumlijska Banja M25 Sintra M25 Monastir M25 Porto M25 Reus M25 Idanha-a-Nova M25 Monastir M25+H Plaisir JSM Challenger of Champaign - Urbana Abierto Internacional de Salinas 'Dario Expreso' - Salinas Campos do Jordao Challenger Brasilia Challenger Belo Horizonte Challenger Sao Paulo Challenger Bucaramanga Challenger Le Gosier Challenger Campos do Jordao Challenger Sao Paulo Challenger M15 Cairo Campinas Challenger Belo Horizonte Challenger Sao Leopoldo Challenger Buenos Aires Challenger Guayaquil Challenger Sao Paulo Challenger M15 Cairo Challenger Banque Nationale - Granby M25 Cairo Le Gosier Challenger Blumenau Challenger Arad Challenger M25 Santa Margherita di Pula Sao Leopoldo Challenger Santos Challenger Sao Paulo Challenger M25 Santa Margherita di Pula Recife Challenger M25 Santa Margherita di Pula M25 Santa Margherita di Pula M15 Monastir Asuncion Challenger Santiago Challenger Sao Paulo Challenger Roma Open Challenger - Rome Campinas Challenger San Remo Tennis Cup - San Remo Porto Alegre Challenger Sao Jose Do Rio Preto Challenger Bogota Challenger Guayaquil Challenger Bucaramanga Challenger Barranquilla Challenger M15 Antalya Semgroup Challenger - Tulsa Sao Paulo Challenger M15 Antalya Ford Tennis Championships - Louisville Blois Challenger Abierto Internacional Varonil Ciudad de Cancun - Cancun Porto Alegre Challenger Charlottesville Challenger Santo Domingo Challenger Savannah Challenger Vancouver Challenger Como Challenger Bucaramanga Challenger Corrientes Challenger Guayaquil Challenger M15 Monastir Belem Challenger M25 Monastir Bangkok Challenger Bucaramanga Challenger Barletta Challenger Mestre Challenger Barletta Challenger Braunschweig Challenger Scheveningen Challenger Floridablanca Challenger Santo Domingo Challenger Como Challenger Seville Challenger Campinas Challenger Buenos Aires Challenger Santiago Challenger Santiago Challenger Barletta Challenger Buenos Aires Challenger Dallas Challenger Genova Challenger Santo Domingo Challenger M25 Santa Margherita di Pula Sarasota Challenger Nielsen USTA Pro Tennis Championship - Winnetka Maia Challenger Rio De Janeiro Challenger Oeiras 4 Challenger Oeiras 1 Challenger Girona Challenger Bucaramanga Challenger M15 Alaminos-Larnaca Rome Challenger Turin Challenger Todi Challenger Milan Challenger Braunschweig Challenger Itajai Challenger Sao Paulo Challenger M15 San Gregorio di Catania Montevideo Challenger Sao Paulo Challenger Dallas Challenger M15 San Gregorio di Catania Montevideo Challenger Aix En Provence Challenger Marburg Challenger Braunschweig Challenger Montevideo Challenger Lisbon Challenger Kazan Challenger M15 Monastir Campinas Challenger Amersfoort Challenger Guayaquil Challenger M25 Lesa M25 Santa Margherita di Pula Knoxville Challenger Champaign Challenger M15 Torello Le Gosier Challenger M25 Monastir M15 Monastir Puerto Vallarta Challenger Tunis Challenger Andria Challenger M25 Nottingham M25 Quinta Do Lago Poznan Challenger Seville Challenger Braga Challenger Mestre Challenger Lisbon Challenger Caltanissetta Challenger M15 Monastir M15 Monastir Aptos Challenger M25 Santa Margherita di Pula M25 Santa Margherita di Pula Oeiras 1 Challenger Meknes Challenger M25 Sintra Orlando Challenger Lima Challenger Montevideo Challenger Napoli Challenger Vicenza Challenger Prostejov Challenger Campinas Challenger M15 Chieti Aix En Provence Challenger Oeiras 1 Challenger M15 Monastir M15+H Tauste Forli 6 Challenger Montechiarugolo - Parma Challenger M25+H Bagneres-de-Bigorre Braunschweig Challenger Bordeaux Challenger Lisbon Challenger Sao Jose Do Rio Preto Challenger Canberra Challenger Florianopolis Challenger Oeiras 1 Challenger Oeiras 4 Challenger Manama Challenger Porto Challenger Montevideo Challenger M15 Monastir Segovia Challenger Rennes Challenger Porto 2 Challenger Maia 1 Challenger M25 Quinta do Lago Levene Gouldin & Thompson Tennis Challenger - Binghamton Madrid Challenger M25 Les Franqueses del Valles Santos Challenger Pozoblanco Challenger Guayaquil Challenger Sao Paulo Challenger Como Challenger Naples Challenger - Naples Lima Challenger Guayaquil Challenger Caltanissetta Challenger Columbus Challenger Newport Beach Challenger Chennai Challenger Bangkok Challenger Yokohama Challenger Sarasota Challenger Francavilla Challenger Lima 2 Challenger Timisoara Challenger Braga Challenger Hersonissos 6 Challenger Francavilla Challenger Tampere Challenger Nur-Sultan Challenger St. Remy Challenger Oeiras 2 Challenger Oeiras 3 Challenger Biella 7 Challenger Forli Challenger Porto Challenger Tampere Challenger San Marino Challenger Verona Challenger Bari Challenger Maia 2 Challenger Bendigo Challenger Cherbourg Challenger Forli 5 Challenger Roseto Degli Abruzzi 2 Challenger Oeiras 2 Challenger Oldum Brown Vancouver Open - Vancouver Perugia Challenger Campinas Challenger Curitiba Challenger Lima Challenger Campinas Challenger Rio De Janeiro Challenger Las Vegas Challenger Lima 2 Challenger Montevideo Challenger Sao Leopoldo Challenger Bordeaux Challenger Prague 2 Challenger Oeiras 2 Challenger Bancolombia Open - Bogota Oeiras 3 Challenger Porto Challenger Mallorca Challenger Genova Challenger Santa Fe 2 Challenger Montevideo Challenger Oeiras 2 Challenger Tenerife 2 Challenger Murcia Challenger Girona Challenger Oeiras 3 Challenger Oeiras 4 Challenger Pozoblanco Challenger Oeiras 5 Challenger Tbilisi Challenger GHI Bronx Tennis Classic - Bronx Tenerife 1 Challenger Hersonissos 3 Challenger Ann Arbor Challenger Hersonissos 4 Challenger Sacramento Challenger - Sacramento Salvador Challenger Lisbon Challenger Milan Challenger Recife Challenger M25 Santa Margherita di Pula Jonkoping Challenger Prague Challenger Estoril Open - Estoril Bordeaux Challenger Estoril Open - Estoril Estoril Open - Estoril Estoril Open - Estoril Open de Nice Cote d'Azur - Nice Estoril Open - Estoril VTR Open - Vina del Mar Copa Claro - Buenos Aires Dallas Challenger Brasil Open - Sao Paulo Mercedes Cup - Stuttgart SkiStar Swedish Open - Bastad Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Milan Challenger Dallas Challenger San Juan Challenger Aix En Provence Challenger Bordeaux Challenger Braunschweig Challenger Porto Alegre Challenger Furth Challenger Montevideo Challenger Le Gosier Challenger Bucaramanga Challenger Rome Challenger Itajai Challenger Portugal Open - Oeiras Bet-at-home Open - Hamburg Tunis Challenger Santiago Challenger Millennium Estoril Open - Estoril Las Franquesas del Valles Challenger Sao Paulo Challenger Konzum Croatia Open - Umag Gerry Weber Open - Halle Open Parc - Lyon Delray Beach International Tennis Championships - Delray Beach Estoril Open - Estoril Brasil Open - Sao Paulo Panama City Challenger Santos Challenger Lexington Challenger Zagreb Challenger Todi Challenger U.S. National Indoor Tennis Championships - Memphis Buenos Aires Challenger Estoril Open - Estoril Irving Challenger Genova Challenger VTR Open - Vina del Mar Brasil Open - Sao Paulo Estoril Challenger Rio De Janeiro Challenger Delray Beach International Tennis Championships - Delray Beach Montevideo Challenger Lisbon Challenger Portugal Open - Oeiras Porto Alegre Challenger Bordeaux Challenger Buenos Aires Challenger Kosice Challenger Marburg Challenger Trieste Challenger Delray Beach Open - Delray Beach Buenos Aires Challenger Winston-Salem Open - Winston-Salem Campinas Challenger Erste Bank Open - Vienna Swiss Indoors Basel - Basel M25 Castelo Branco Qatar ExxonMobil Open - Doha Abierto Mexicano Telcel - Acapulco ATP Challenger Tour Finals Sao Paulo Challenger Braunschweig Challenger US Men's Clay Court Championship - Houston Bordeaux Challenger Braga Challenger BB&T Atlanta Open - Atlanta Lima Challenger Lima Challenger Zadar Challenger Millennium Estoril Open - Estoril Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Brasov Challenger Brasil Open - Sao Paulo Tampere Challenger Rakuten Japan Open - Tokyo If Stockholm Open - Stockholm Biella Challenger Apia International - Sydney Campinas Challenger Forli 4 Challenger Millennium Estoril Open - Estoril Blois Challenger Bangkok Challenger Campinas Challenger Sao Paulo Challenger Generali Open - Kitzbuhel Tampere Challenger Sopot Challenger Lisbon Challenger Brasil Open - Sao Paulo Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Buenos Aires Challenger Guayaquil Challenger Bet-at-home Open - Hamburg Grodzisk Mazowiecki Challenger Poznan Challenger Manacor Challenger Sibiu Challenger Braga Challenger 2007 Knoxville Challenger - Knoxville Braga Challenger Millennium Estoril Open - Estoril Buenos Aires Challenger Bordeaux Challenger Pilot Pen Tennis - New Haven Tenerife 3 Challenger Madrid Challenger Porto Challenger Girona Challenger M25 Mataro Millennium Estoril Open - Estoril Abierto Mexicano - Los Cabos Francavilla Challenger M25 Pozzuoli Brasil Open - Sao Paulo Montevideo Challenger Barletta Challenger Monterrey Challenger Waco Challenger Sony Ericsson Open - Miami BNP Paribas Open - Indian Wells Santo Domingo Challenger Millennium Estoril Open - Estoril Todi Challenger Seville Challenger Milan Challenger Millennium Estoril Open - Estoril Barletta Challenger Copa Claro - Buenos Aires Lyon Challenger Shenzhen Open - Shenzhen BNP Paribas Open - Indian Wells Western & Southern Open - Cincinnati Miami Open - Miami U.S. Open - New York French Open - Paris Wimbledon - London French Open - Paris Wimbledon - London Miami Open - Miami U.S. Open - New York Sony Ericsson Open - Miami French Open - Paris Australian Open - Melbourne U.S. Open - New York U.S. Open - New York U.S. Open - New York Sony Ericsson Open - Miami BNP Paribas Open - Indian Wells BNP Paribas Open - Indian Wells Campbells Hall of Fame Tennis Championships - Newport St. Petersburg Open - St. Petersburg Aircel Chennai Open - Chennai Davis Cup, Group 2, 2R, POR-TUN 4-1 Davis Cup, Group II, 3R, MDA-POR 2-3 Davis Cup, Group I, 1R, SLO-POR 3-2 Davis Cup, Group I, PO, RUS-POR 4-1 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 Sony Open Tennis - Miami French Open - Paris Wimbledon - London Wimbledon - London Wimbledon (juniors) U.S. Open (juniors) Australian Open (juniors) U.S. Open (juniors) Wimbledon (juniors) U.S. Open - New York M25 Santa Margherita di Pula Australian Open - Melbourne All Lower level tournaments Wimbledon - London U.S. Open - New York French Open - Paris Australian Open - Melbourne Wimbledon - London Mutua Madrid Open - Madrid Olympics - Rio de Janeiro Australian Open - Melbourne Wimbledon - London French Open - Paris U.S. Open - New York Australian Open - Melbourne U.S. Open - New York Australian Open - Melbourne Davis Cup, Group I, PO, SVK-POR 3-1 Davis Cup, Group I, PO, POR-SLO 5-0 Davis Cup, Group II, 2R, POR-LTU 5-0 Davis Cup, Group 1, 1R, GEO-POR 3-2 Davis Cup, Group I, 1R, ROU-POR 3-1 Davis Cup, Group II, 3R, POR-BLR 3-2 Davis Cup, Group I, PO, POR-POL 4-0 Davis Cup, Group I, 1R, POR-AUT 1-4 French Open (juniors) M25 Monastir Valencia Challenger