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 F11 USA F2 USA F3 Mexico F10 USA F1 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 F13 Usa F15 Brazil F31 Brazil F32 Brazil F33 Brazil F1 Colombia F1 Colombia F2 USA F7 Brazil F33 Usa F5 France F10 France F12 Portugal F3 Switzerland F3 Spain F11 Turkey F49 Spain F3 France F7 France F8 France F12 Belgium F9 Italy F27 France F16 France F17 Croatia F16 Great Britain F5 France F4 Argentina F4 Argentina F5 France F13 France F9 France F14 France F15 Brazil F26 France F19 Portugal F7 France F21 Greece F8 Greece F9 Greece F10 Kuwait F1 Kuwait F2 France F1 Great Britain F1 Great Britain F2 Italy F1 France F4 France F6 Great Britain F5 France F8 France F9 France F16 Spain F25 Italy F24 Great Britain F8 Portugal F5 France F7 Italy F10 Italy F11 Portugal F1 Italy F5 Brazil F22 M15 Sintra M15 Sintra M25 Porto M25 Vale Do Lobo M25 Villena M25 Vale do Lobo M25 Faro M25 Quinta Do Lago Colombia F2 M25 Vila Real de Santo Antonio M25 Quinta do Lago M25 Vale do Lobo M25 Porto M25 Reus M25 Vale do Lobo Levene Gouldin & Thompson Tennis Challenger - Binghamton Brasilia Challenger Buenos Aires Challenger Sao Paulo Challenger Porto Alegre Challenger M25+H Nevers Sao Paulo Challenger Sao Jose Do Rio Preto Challenger Dallas Challenger M25 Sintra Charlottesville Challenger Jonkoping Challenger Barletta Challenger Turin Challenger M25 Vale do Lobo Tallahassee Challenger Mestre Challenger Prostejov Challenger Binghamton Challenger Lexington Challenger St. Remy Challenger Stockton Challenger Quimper Challenger St. Brieuc Challenger Italy F2 Ilkley Challenger Milan Challenger Aptos Challenger Floridablanca Challenger Santo Domingo Challenger Vancouver Challenger Como Challenger Columbus Challenger Tiburon Challenger Monterrey Challenger Buenos Aires Challenger Guayaquil Challenger Santiago Challenger Braunschweig Challenger Rennes Challenger Quimper Challenger Bucaramanga Challenger Lille Challenger Barletta Challenger Nanchang Challenger Tunis Challenger Poznan Challenger Lyon Challenger Granby Challenger Como Challenger Cassis Challenger Orleans Challenger M25 Vila Real de Santo Antonio Almaty Challenger Brest Challenger Lima Challenger Mouilleron-Le-Captif Challenger Buenos Aires Challenger Andria Challenger Orlando Challenger Rennes Challenger Quimper Challenger Chennai Challenger Bangkok Challenger Lille Challenger Tunis Challenger Francavilla Challenger Bordeaux Challenger Aix En Provence Challenger Braga Challenger Lisbon Challenger Poznan Challenger Recanati Challenger Lyon Challenger Bordeaux Challenger Winnetka Challenger Nur-Sultan Challenger Mallorca Challenger Cassis Challenger Seville Challenger Glasgow Challenger Campinas Challenger Naples Challenger - Naples Pau Challenger Cordenons Challenger Aix En Provence Challenger Iasi Challenger Le Gosier Challenger Sao Paulo Challenger San Remo Tennis Cup - San Remo Biella 3 Challenger Biella 4 Challenger Belo Horizonte Challenger Oeiras 1 Challenger Oeiras 2 Challenger Challenger Banque Nationale - Granby Heilbronn Challenger Oeiras 3 Challenger GHI Bronx Tennis Classic - Bronx Forli Challenger Milan Challenger Porto Challenger Amersfoort Challenger Braga Challenger Budapest Challenger Abierto Internacional Varonil Ciudad de Cancun - Cancun Santiago Challenger Sao Paulo Challenger Tampere Challenger Segovia Challenger Verona Challenger Istanbul 2 Challenger Forli 3 Challenger Pau Challenger Lille Challenger M25 Mataro Oeiras 1 Challenger St. Brieuc Challenger Turin Challenger Oeiras 2 Challenger Santo Domingo Challenger Aix En Provence Challenger Bordeaux Challenger Ismaning Challenger Forli 6 Challenger Campos do Jordao Challenger Guayaquil Challenger Salvador Challenger Perugia Challenger Bangalore Challenger Noumea Challenger Columbus Challenger Braunschweig Challenger Newport Beach Challenger Montevideo Challenger M25 Figueira da Foz Pau Challenger Asuncion Challenger Lima Challenger Sarasota Challenger Erste Bank Open - Vienna Sao Paulo Challenger Bucaramanga Challenger Orleans Challenger Campinas Challenger Ismaning Challenger Rio De Janeiro Challenger Santos Challenger Sao Leopoldo Challenger Arad Challenger Canberra Challenger Timisoara Challenger Puerto Vallarta Challenger Tampere Challenger Phoenix Challenger Girona Challenger Prague 2 Challenger Mallorca Challenger Belem Challenger Lisbon Challenger Santa Fe 2 Challenger Bucaramanga Challenger Eckental Challenger Blois Challenger Braunschweig Challenger Oeiras 1 Challenger Porto Alegre Challenger Buenos Aires Challenger Guayaquil Challenger Manama Challenger Sao Paulo Challenger Bucaramanga Challenger Quimper Challenger Murcia Challenger Girona Challenger Blois Challenger Napoli Challenger Split Challenger Blumenau Challenger Aix En Provence Challenger Caltanissetta Challenger Columbus Challenger Lima Challenger Francavilla Challenger Orleans Challenger Bordeaux Challenger Kazan Challenger Sarasota Challenger Savannah Challenger M25 Sintra Bordeaux Challenger Vicenza Challenger Lyon Challenger Poznan Challenger Ilkley Challenger Milan Challenger Noumea Challenger Seville Challenger Barletta Challenger Qingdao Challenger Rennes Challenger Mouilleron-Le-Captif Challenger Todi Challenger Cherbourg Challenger Bergamo Challenger Braunschweig Challenger Wroclaw Challenger Curitiba Challenger Maia 2 Challenger Lima 2 Challenger Campinas Challenger Girona Challenger Aix En Provence Challenger Oeiras 5 Challenger Bancolombia Open - Bogota Abierto Internacional de Salinas 'Dario Expreso' - Salinas Roma Open Challenger - Rome III Challenger Isla de Gran Canaria Ciudad de Telde - Telde Nielsen USTA Pro Tennis Championship - Winnetka Moncton Men's Challenger - Moncton Oldum Brown Vancouver Open - Vancouver 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 Salinas Challenger Lisbon Challenger Porto Challenger Cherbourg Challenger Lisbon Challenger Maia Challenger Santiago Challenger Sao Paulo Challenger Dallas Challenger Le Gosier Challenger Lille Challenger Recife Challenger Split 2 Challenger Prague Challenger Bordeaux Challenger Campos do Jordao Challenger Campinas Challenger Recife Challenger Belo Horizonte Challenger Sao Jose Do Rio Preto Challenger Sao Leopoldo Challenger Guayaquil Challenger Sao Paulo Challenger Bucaramanga Challenger Florianopolis Challenger Le Gosier Challenger Dallas Challenger Caltanissetta Challenger Oeiras 4 Challenger Biella 7 Challenger Bratislava Challenger St. Remy Challenger San Juan Challenger Rio De Janeiro Challenger Montevideo Challenger Sao Leopoldo Challenger Santos Challenger Sao Paulo Challenger Itajai Challenger Campinas Challenger Orleans Challenger Montevideo Challenger Bogota Challenger Alicante Challenger Barranquilla Challenger Itajai Challenger Sao Paulo Challenger Aix En Provence Challenger Ismaning Challenger Tunis Challenger Vicenza Challenger Furth Challenger Marburg Challenger Tenerife Challenger Estoril Challenger Campinas Challenger Porto Alegre Challenger Ortisei Challenger Mutua Madrid Open - Madrid Mouilleron-Le-Captif Challenger Knoxville Challenger Champaign Challenger Panama City Challenger Dallas Challenger Santo Domingo Challenger Santos Challenger Lexington Challenger Le Gosier Challenger St. Brieuc Challenger Sarasota Challenger Savannah Challenger Mestre Challenger Milan Challenger Braunschweig Challenger Recanati Challenger Segovia Challenger Bordeaux Challenger Aptos Challenger Vancouver Challenger Buenos Aires Challenger Como Challenger Maia 1 Challenger Meknes Challenger Irving Challenger St. Remy Challenger Tiburon Challenger Genova Challenger Sacramento Challenger Bendigo Challenger Corrientes Challenger Fairfield Challenger Santiago Challenger Guayaquil Challenger Montevideo Challenger Noumea Challenger Bangkok Challenger Bucaramanga Challenger Bergamo Challenger Cherbourg Challenger Forli 4 Challenger Quimper Challenger Forli 5 Challenger Roseto Degli Abruzzi 2 Challenger St. Brieuc Challenger Canberra Challenger Rio De Janeiro Challenger Cherbourg Challenger Madrid Challenger Rome 1 Challenger Montevideo Challenger Tiburon Challenger Porto Alegre Challenger Fairfield Challenger Montechiarugolo - Parma Challenger Mouilleron-Le-Captif Challenger Canberra Challenger Anning Challenger Rome Challenger Bordeaux Challenger Bordeaux Challenger Buenos Aires Challenger Lisbon Challenger Gatineau Challenger Scheveningen Challenger Kosice Challenger Marburg Challenger Rome Challenger Montevideo Challenger Drummondville Challenger Taipei City Challenger Anning Challenger Vicenza Challenger Las Franquesas del Valles Challenger Aix En Provence Challenger Campinas Challenger Aix En Provence Challenger Aptos Challenger Vancouver Challenger Genova Challenger Ortisei Challenger Montevideo Challenger Rennes Challenger Yokohama Challenger St. Brieuc Challenger ATP Challenger Tour Finals Sao Paulo Challenger Braunschweig Challenger Buenos Aires Challenger Quimper Challenger Ismaning Challenger Ann Arbor Challenger Trieste Challenger Bratislava Challenger Biella 5 Challenger Bordeaux Challenger Oeiras 3 Challenger San Marino Challenger Lima Challenger Budapest Challenger Braga Challenger Lima Challenger Zadar Challenger Oeiras 4 Challenger Las Vegas Challenger Montevideo Challenger Rome Challenger Recanati Challenger Braga Challenger Lima 2 Challenger Oeiras 2 Challenger Cherbourg Challenger Tenerife 2 Challenger Phoenix Challenger Tampere Challenger Barcelona Challenger Madrid Challenger Istanbul Challenger Oeiras 4 Challenger Biella Challenger Zagreb Challenger Campinas Challenger Brasov Challenger Porto Challenger Todi Challenger Porto 2 Challenger Sibiu Challenger Orleans Challenger Mouilleron-Le-Captif Challenger Valencia Challenger Blois Challenger Campinas Challenger Guayaquil Challenger Montevideo Challenger Bangkok Challenger Campinas Challenger Oeiras 1 Challenger Oeiras 2 Challenger Sao Paulo Challenger Oeiras 3 Challenger Tenerife 1 Challenger Tampere Challenger Sopot Challenger Lisbon Challenger Buenos Aires Challenger Mouilleron-Le-Captif Challenger Guayaquil Challenger Quimper Challenger Pozoblanco Challenger Koblenz Challenger Porto Challenger Parma Challenger Cassis Challenger Poznan Challenger Cordenons Challenger 2007 Knoxville Challenger - Knoxville Estoril Open - Estoril Braga Challenger Gerry Weber Open - Halle Estoril Open - Estoril Blois Challenger Estoril Open - Estoril Estoril Open - Estoril Estoril Open - Estoril Open de Nice Cote d'Azur - Nice VTR Open - Vina del Mar Brasil Open - Sao Paulo Estoril Open - Estoril Copa Claro - Buenos Aires Brasil Open - Sao Paulo Mercedes Cup - Stuttgart Bet-at-home Open - Hamburg Erste Bank Open - Vienna Swiss Indoors Basel - Basel Qatar ExxonMobil Open - Doha US Men's Clay Court Championship - Houston Open de Nice Cote d'Azur - Nice Open Sud de France - Montpellier Argentina Open - Buenos Aires Rio Open - Rio de Janeiro SkiStar Swedish Open - Bastad Moselle Open - Metz Apia International - Sydney Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Brasil Open - Sao Paulo Millennium Estoril Open - Estoril Open Parc - Lyon Bet-at-home Open - Hamburg Generali Open - Kitzbuhel Abierto Mexicano - Los Cabos Brisbane International - Brisbane Rio Open - Rio de Janeiro Dubai Duty Free Tennis Championships - Dubai Brasil Open - Sao Paulo Moselle Open - Metz Open Sud de France - Montpellier Estoril Open - Estoril Murray River Open - Melbourne Open Sud de France - Montpellier Delray Beach International Tennis Championships - Delray Beach Pilot Pen Tennis - New Haven Mercedes Cup - Stuttgart Mallorca Championships - Mallorca Hall of Fame Open - Newport Truist Atlanta Open - Atlanta Abierto de Tenis Mifel - Los Cabos Moselle Open - Metz Stockholm Open - Stockholm Adelaide International 1 - Adelaide ASB Classic - Auckland Open Sud de France - Montpellier ABN AMRO World Tennis Tournament - Rotterdam BMW Open - Munich VTR Open - Vina del Mar Delray Beach International Tennis Championships - Delray Beach EFG Swiss Open - Gstaad Erste Bank Open - Vienna Portugal Open - Oeiras Moselle Open - Metz U.S. National Indoor Tennis Championships - Memphis Moselle Open - Metz Delray Beach Open - Delray Beach Portugal Open - Oeiras Abierto Mexicano Telcel - Acapulco Millennium Estoril Open - Estoril BB&T Atlanta Open - Atlanta Valencia Open - Valencia Millennium Estoril Open - Estoril cinch Championships - London Open 13 - Marseille Brasil Open - Sao Paulo Millennium Estoril Open - Estoril Open de Nice Cote d'Azur - Nice Winston-Salem Open - Winston-Salem Konzum Croatia Open - Umag Rakuten Japan Open - Tokyo If Stockholm Open - Stockholm Open Sud de France - Montpellier BB&T Atlanta Open - Atlanta Argentina Open - Buenos Aires Terra Wortmann Open - Halle Citi Open - Washington Hall of Fame Open - Newport China Open - Beijing European Open - Brussels Open Sud de France - Montpellier Tata Open Maharashtra - Pune Winston-Salem Open - Winston-Salem Qatar ExxonMobil Open - Doha Dubai Duty Free Tennis Championships - Dubai Millennium Estoril Open - Estoril European Open - Antwerp Open Occitanie - Montpellier Brisbane International - Brisbane Open 13 Provence - Marseille Boss Open - Stuttgart Millennium Estoril Open - Estoril Moselle Open - Metz Adelaide International - Adelaide Open 13 Provence - Marseille Qatar ExxonMobil Open - Doha Dubai Duty Free Tennis Championships - Dubai Gonet Geneva Open - Geneva Erste Bank Open - Vienna Chengdu Open - Chengdu Swiss Indoors Basel - Basel Open 13 Provence - Marseille Millennium Estoril Open - Estoril Abierto Mexicano - Los Cabos Open Parc - Lyon Francavilla Challenger Brasil Open - Sao Paulo Bergamo Challenger Barletta Challenger Monterrey Challenger Waco Challenger Santo Domingo Challenger Brest Challenger Lyon Challenger Noumea Challenger Sibiu Challenger Ismaning Challenger Kyiv Challenger European Open - Antwerp Millennium Estoril Open - Estoril Copa Claro - Buenos Aires Shenzhen Open - Shenzhen Sony Ericsson Open - Miami BNP Paribas Open - Indian Wells Sony Ericsson Open - Miami BNP Paribas Open - Indian Wells Sony Open Tennis - Miami BNP Paribas Open - Indian Wells BNP Paribas Masters - Paris Miami Open - Miami BNP Paribas Masters - Paris Miami Open - Miami National Bank Open - Montreal Rolex Paris Masters - Paris BNP Paribas Open - Indian Wells Miami Open - Miami Mutua Madrid Open - Madrid Rolex Paris Masters - Paris Miami Open - Miami Sony Ericsson Open - Miami Internazionali BNL d'Italia - Rome National Bank Open - Toronto Campbells Hall of Fame Tennis Championships - Newport St. Petersburg Open - St. Petersburg Mutua Madrid Open - Madrid Aircel Chennai Open - Chennai Shanghai Rolex Masters - Shanghai BNP Paribas Open - Indian Wells Miami Open - Miami Western & Southern Open - Cincinnati BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Wimbledon - London U.S. Open - New York French Open - Paris French Open - Paris Wimbledon - London 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 French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Australian Open Qualifying - Doha 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 Rolex Paris Masters - Paris Australian Open - Melbourne Davis Cup, Group 2, 2R, POR-TUN 4-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, 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, 1R, ROU-POR 3-1 Davis Cup, Group I, PO, POR-POL 4-0 Wimbledon - London Wimbledon (juniors) U.S. Open (juniors) Australian Open (juniors) U.S. Open (juniors) French Open (juniors) Wimbledon (juniors) Australian Open (juniors) French Open (juniors) U.S. Open (juniors) Australian Open (juniors) Wimbledon (juniors) U.S. Open (juniors) Australian Open (juniors) All Lower level tournaments Olympics - Rio de Janeiro Wimbledon - London Pau Challenger Tenerife 3 Challenger French Open - Paris Milan Challenger Zug Challenger U.S. Open - New York Australian Open - Melbourne BNP Paribas Nordic Open - Stockholm Australian Open - Melbourne BNP Paribas Open - Indian Wells Australian Open - Melbourne U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Mutua Madrid Open - Madrid French Open - Paris French Open - Paris Rothesay International - Eastbourne Wimbledon - London Mifel Tennis Open - Los Cabos Montevideo Challenger Shanghai Rolex Masters - Shanghai Rolex Paris Masters - Paris U.S. Open - New York Davis Cup, Group 1, 1R, GEO-POR 3-2 Davis Cup, Group I, PO, SVK-POR 3-1 Davis Cup, Group II, 3R, POR-BLR 3-2 Davis Cup, Group I, PO, POR-SLO 5-0 Davis Cup, Group I, 2R, SWE-POR 3-2 Davis Cup, Group I, 1R, POR-AUT 1-4 Davis Cup, World Group, Q, TPE-FRA 0-4 French Open (juniors) French Open (juniors) Wimbledon (juniors) U.S. Open (juniors) U.S. Open - New York Seville Challenger