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 Wimbledon - London Truist Atlanta Open - Atlanta Porto Challenger Prague 3 Challenger Mallorca Challenger U.S. Open - New York Davis Cup, Group I, 1R, AUT-POR 1-3 Bratislava 2 Challenger Ortisei Challenger Ismaning Challenger Knoxville Challenger Calgary Challenger Drummondville Challenger Oeiras 2 Challenger Oeiras 1 Challenger Quimper Challenger Davis Cup, World Group, Q, FIN-POR 3-1 Open Sud de France - Montpellier Abierto Mexicano Telcel - Acapulco Acapulco Challenger Phoenix Challenger Girona Challenger Savannah Challenger Dallas Open - Dallas St. Tropez Challenger Delray Beach Open - Delray Beach Citi Open - Washington Cassis Challenger St. Tropez Challenger Spain F17 Spain F18 Spain F19 Spain F22 Spain F23 Spain F26 Spain F27 Spain F33 Spain F34 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 Romania F10 Romania F11 Spain F30 Spain F31 Spain F33 Spain F34 Portugal F7 Spain F39 Spain F41 Spain F42 United Arab Emirates F1 United Arab Emirates F2 Spain F3 Spain F4 Spain F5 Spain F7 Spain F10 Turkey F4 Turkey F5 Turkey F6 Spain F16 Spain F17 Spain F18 Spain F20 Spain F21 France F12 Spain F28 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 F38 USA F32 USA F7 Bahrain F1 Qatar F1 Qatar F2 Qatar F3 USA F28 USA F29 USA F2 Portugal F8 Spain F40 Nicaragua F1 USA F10 USA F14 USA F15 USA F16 Romania F4 Spain F35 USA F22 USA F29 USA F30 USA F1 Spain F37 USA F10 Spain F3 USA F18 USA F21 Spain F11 USA F23 (Wichita) USA F31 Spain F17 Seville Challenger Tarragona Challenger Rabat Challenger Tallahassee Challenger Recanati Challenger Istanbul Challenger Manerbio Challenger Sao Paulo Challenger Courmayeur Challenger Casablanca Challenger Guangzhou Challenger St. Brieuc Challenger Furth Challenger Kosice Challenger Marburg Challenger Braunschweig Challenger Segovia Challenger Seville Challenger Trnava Challenger Madrid Challenger Kazan Challenger Quimper Challenger Bergamo Challenger Meknes Challenger Marrakech Challenger Mersin Challenger Sibiu Challenger Como Challenger Alphen Challenger Rio De Janeiro Challenger Montevideo Challenger Bordeaux Challenger Furth Challenger Kosice Challenger Todi Challenger San Benedetto Challenger Poznan Challenger Sarasota Challenger Charlottesville Challenger Champaign Challenger Binghamton Challenger Cary Challenger Stockton Challenger Champaign Challenger Maui Challenger San Francisco Challenger Tempe Challenger Savannah Challenger Samarkand Challenger Nottingham Challenger Ilkley Challenger Binghamton Challenger Lexington Challenger Stockton Challenger Fairfield Challenger Las Vegas Challenger Charlottesville Challenger Champaign Challenger Newport Beach Challenger San Francisco Challenger Irving Challenger Sarasota Challenger Tallahassee Challenger Savannah Challenger Nottingham Challenger Ilkley Challenger Winnipeg Challenger Aptos Challenger Chicago Challenger Columbus Challenger Tiburon Challenger Brest Challenger Charlottesville Challenger Knoxville Challenger Little Rock Challenger New Haven Challenger Cary Challenger Fairfield Challenger Charlottesville Challenger Knoxville Challenger Dallas Challenger Cleveland Challenger Indian Wells Challenger Antalya 2 Challenger Tallahassee Challenger Zagreb Challenger Orleans Challenger Alicante Challenger Brest Challenger Charlottesville Challenger Bratislava Challenger Knoxville Challenger Champaign Challenger Bendigo Challenger Quimper Challenger Sarasota Challenger Tallahassee Challenger Malaga Challenger Charleston Challenger Tiburon Challenger Fairfield Challenger Knoxville Challenger Drummondville Challenger Phoenix Challenger Girona Challenger Aix En Provence Challenger Tunis Challenger Braga Challenger Yokohama Challenger Canberra Challenger Tampere Challenger Casablanca Challenger Pingguo Challenger Porto Alegre Challenger Tampere Challenger Rome Challenger Furth Challenger Milan Challenger Cleveland Challenger San Diego Challenger Savannah Challenger Winnetka Challenger Estoril Open - Estoril Estoril Open - Estoril Estoril Open - Estoril If Stockholm Open - Stockholm Open 13 - Marseille Kos Succhetti Tennis Cup - Cordenons Aircel Chennai Open - Chennai Tunis Challenger Heilbronn Challenger Open Sabadell Atlantico - Barcelona Quimper Challenger Estoril Open - Estoril San Marino Challenger Rome Challenger Mamaia Challenger - Constanta Credit Agricole Suisse Open - Gstaad Tampere Challenger Cordenons Challenger Tanger Challenger Meknes Challenger Aircel Chennai Open - Chennai Apia International - Sydney Copa Claro - Buenos Aires Abierto Mexicano Telcel - Acapulco Tiburon Challenger Power Horse Cup - Dusseldorf Cremona Challenger Winston-Salem Open - Winston-Salem St. Petersburg Open - St. Petersburg Malaysian Open - Kuala Lumpur Kremlin Cup - Moscow Valencia Open - Valencia Qatar ExxonMobil Open - Doha Apia International - Sydney Open Sud de France - Montpellier Rio Open 500 - Rio de Janeiro Abierto Mexicano Telcel - Acapulco Topshelf Open - 's-Hertogenbosch SkiStar Swedish Open - Bastad Vegeta Croatia Open - Umag Malaysian Open - Kuala Lumpur China Open - Beijing If Stockholm Open - Stockholm Valencia Open - Valencia Open Sud de France - Montpellier ABN AMRO World Tennis Tournament - Rotterdam Dubai Duty Free Tennis Championships - Dubai Barcelona Open BancSabadell - Barcelona Geneva Open - Geneva Topshelf Open - 's-Hertogenbosch Winston-Salem Open - Winston-Salem Malaysian Open - Kuala Lumpur St. Petersburg Open - St. Petersburg Open 13 - Marseille SkiStar Swedish Open - Bastad Brasil Open - Sao Paulo St. Petersburg Open - St. Petersburg European Open - Antwerp Garanti Koza Sofia Open - Sofia Chengdu Open - Chengdu Tata Open Maharashtra - Pune ASB Classic - Auckland Argentina Open - Buenos Aires Millennium Estoril Open - Estoril Noventi Open - Halle Turkish Airlines Open Antalya - Antalya SkiStar Swedish Open - Bastad BB&T Atlanta Open - Atlanta Swiss Open - Gstaad St. Petersburg Open - St. Petersburg Chengdu Open - Chengdu Rakuten Japan Open - Tokyo Intrum Stockholm Open - Stockholm Swiss Indoors Basel - Basel Open Sud de France - Montpellier ABN AMRO World Tennis Tournament - Rotterdam Generali Open - Kitzbuhel European Open - Antwerp Murray River Open - Melbourne Argentina Open - Buenos Aires Chile Dove Men+Care Open - Santiago Abierto Mexicano Telcel - Acapulco Serbia Open - Belgrade Open Parc - Lyon Mercedes Cup - Stuttgart Las Vegas Challenger Citi Open - Washington Sardegna Open - Cagliari Tata Open Maharashtra - Pune Qatar ExxonMobil Open - Doha US Men's Clay Court Championship - Houston Grand Prix Hassan II - Marrakech Serbia Open - Belgrade Leon Challenger Gonet Geneva Open - Geneva Open Parc - Lyon Mercedes Cup - Stuttgart Noventi Open - Halle Mallorca Championships - Mallorca Nordea Open - Bastad Swiss Open - Gstaad Maui Challenger Generali Open - Kitzbuhel Citi Open - Washington Erste Bank Open - Vienna Delray Beach Open - Delray Beach Rio Open - Rio de Janeiro Abierto Mexicano Telcel - Acapulco Millennium Estoril Open - Estoril Winston-Salem Open - Winston-Salem Rennes Challenger Winnetka Challenger Charlottesville Challenger Knoxville Challenger Happy Valley Challenger Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Cary Challenger Tiburon Challenger Knoxville Challenger Stanford Challenger Reggio Emilia Challenger Trnava Challenger Turin Challenger Columbus Challenger Winnetka Challenger Madrid Challenger Gatineau Challenger Aptos Challenger Columbus Challenger Las Vegas Challenger Houston Challenger Cary Challenger Orlando Challenger Biel Challenger Las Vegas Challenger Tenerife Challenger Helsinki Challenger Puerto Vallarta Challenger Forli 5 Challenger Monterrey Challenger Bordeaux Challenger Rome Challenger Turin Challenger Little Rock Challenger Orlando Challenger Ilkley Challenger San Juan Challenger Winnipeg Challenger Cary Challenger Mallorca Challenger Oeiras 3 Challenger Vicenza Challenger Seville Challenger Cassis Challenger Lisbon Challenger Charlottesville Challenger Cassis Challenger Eckental Challenger Tiburon Challenger Izmir Challenger Cary 2 Challenger Orbetello Challenger Sarasota Challenger Tallahassee Challenger Charlottesville Challenger Kosice Challenger Guimaraes Challenger Marrakech Challenger San Sebastian Challenger Szczecin Challenger Rabat Challenger Tyler Challenger Columbus Challenger Cleveland Challenger Drummondville Challenger Fairfield Challenger Open Sud de France - Montpellier German Tennis Championships - Hamburg Rome Challenger Copa Claro - Buenos Aires BNP Paribas Open - Indian Wells Sony Open Tennis - Miami Rio Open - Rio de Janeiro Mutua Madrid Open - Madrid Western & Southern Open - Cincinnati BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Sony Open Tennis - Miami Dubai Duty Free Tennis Championships - Dubai Monte-Carlo Rolex Masters - Monte-Carlo Cordoba Open - Cordoba Mutua Madrid Open - Madrid Millennium Estoril Open - Estoril Internazionali BNL d'Italia - Rome Noventi Open - Halle Rogers Cup - Toronto Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai BNP Paribas Masters - Paris Millennium Estoril Open - Estoril BNP Paribas Open - Indian Wells Internazionali BNL d'Italia - Rome Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai BNP Paribas Open - Indian Wells Miami Open - Miami 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 Monte-Carlo Rolex Masters - Monte-Carlo VTR Open - Vina del Mar Mutua Madrid Open - Madrid Western & Southern Open - Cincinnati Monte-Carlo Rolex Masters - Monte-Carlo Shanghai Rolex Masters - Shanghai BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Miami Open - Miami Internazionali BNL d'Italia - Rome Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Internazionali BNL d'Italia - Rome Western & Southern Open - Cincinnati US Men's Clay Court Championship - Houston Swiss Indoors Basel - Basel Shanghai Rolex Masters - Shanghai Grand Prix Hassan II - Casablanca Internazionali BNL d'Italia - Rome Western & Southern Open - New York Dallas Open - Dallas BNP Paribas Open - Indian Wells Barcelona Open BancSabadell - Barcelona Miami Open - Miami Portugal Open - Oeiras Monte-Carlo Rolex Masters - Monte-Carlo Power Horse Cup - Dusseldorf Gerry Weber Open - Halle Rogers Cup - Toronto Bet-at-home Open - Hamburg BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Moselle Open - Metz Internazionali BNL d'Italia - Rome National Bank Open - Montreal Rolex Paris Masters - Paris Heineken Open - Auckland BNP Paribas Open - Indian Wells U.S. National Indoor Tennis Championships - Memphis Open 13 - Marseille AEGON Championships - London Aegon Nottingham Open - Nottingham Vegeta Croatia Open - Umag Credit Agricole Suisse Open - Gstaad Rakuten Japan Open - Tokyo Kremlin Cup - Moscow Monte-Carlo Rolex Masters - Monte-Carlo BNP Paribas Open - Indian Wells Valencia Open - Valencia Millennium Estoril Open - Estoril ASB Classic - Auckland Open Sud de France - Montpellier ABN AMRO World Tennis Tournament - Rotterdam Memphis Open - Memphis Dubai Duty Free Tennis Championships - Dubai Grand Prix Hassan II - Marrakech US Men's Clay Court Championship - Houston Barcelona Open BancSabadell - Barcelona Millennium Estoril Open - Estoril 84° Concurso Internacional Tenis San Sebastian - San Sebastian Open de Nice Cote d'Azur - Nice Gerry Weber Open - Halle Aegon Nottingham Open - Nottingham Hall of Fame Tennis Championships - Newport Konzum Croatia Open - Umag BB&T Atlanta Open - Atlanta Winston-Salem Open - Winston-Salem St. Petersburg Open - St. Petersburg Chengdu Open - Chengdu Rakuten Japan Open - Tokyo European Open - Antwerp Erste Bank Open - Vienna ASB Classic - Auckland Savannah Challenger Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Barcelona Open BancSabadell - Barcelona Geneva Open - Geneva Antalya Cup - Antalya Hall of Fame Tennis Championships - Newport Suisse Open - Gstaad Generali Open - Kitzbuhel Winston-Salem Open - Winston-Salem Shenzhen Open - Shenzhen Rakuten Japan Open - Tokyo Swiss Indoors Basel - Basel Brisbane International - Brisbane ASB Classic - Auckland New York Open - New York Open 13 Provence - Marseille Abierto Mexicano Telcel - Acapulco Dubai Duty Free Tennis Championships - Dubai Knoxville Challenger US Men's Clay Court Championship - Houston Grand Prix Hassan II - Marrakech Barcelona Open BancSabadell - Barcelona Millennium Estoril Open - Estoril Open Parc - Lyon Antalya Cup - Antalya Plava Laguna Croatia Open - Umag Swiss Open - Gstaad Abierto Mexicano - Los Cabos St. Petersburg Open - St. Petersburg China Open - Beijing Swiss Indoors Basel - Basel Brasil Open - Sao Paulo Brasil Open - Sao Paulo Barcelona Open Banc Sabadell - Barcelona Geneva Open - Geneva Libema Open - 's-Hertogenbosch Yokkaichi Challenger Winston-Salem Open - Winston-Salem Australian Open - Melbourne Wimbledon - London U.S. Open - New York ASB Classic - Auckland Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London Mallorca Championships - Mallorca 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 Wimbledon - London U.S. Open - New York Australian Open - Melbourne Singapore Tennis Open - Singapore French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne Melbourne Summer Set - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris U.S. Open - New York Australian Open Qualifying - Doha Australian Open - Melbourne French Open - Paris Gerry Weber Open - Halle Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London Winston-Salem Open - Winston-Salem Moselle Open - Metz U.S. Open - New York Australian Open - Melbourne Stockholm Open - Stockholm Tel Aviv Watergen Open - Tel Aviv Gijon Open - Gijon Tata Open Maharashtra - Pune ASB Classic - Auckland ABN AMRO World Tennis Tournament - Rotterdam Cordoba Open - Cordoba Dallas Open - Dallas Argentina Open - Buenos Aires Chile Dove Men+Care Open - Santiago Millennium Estoril Open - Estoril US Men's Clay Court Championship - Houston Winston-Salem Open - Winston-Salem Konzum Croatia Open - Umag Maia Challenger Davis Cup, Group 2, 2R, POR-CYP 5-0 Davis Cup, Europe/Africa Group II, 2R, POR-CYP 5-0 Davis Cup, Group I, 1R, POR-SVK 4-1 Davis Cup, Group I, 2R, SUI-POR 5-0 Davis Cup, Group I, 2R, ISR-POR 3-2 Davis Cup, Group I, PO, SVK-POR 3-1 Davis Cup, Group II, 1R, POR-BEN 5-0 Davis Cup, Group II, 3R, MDA-POR 2-3 Davis Cup, Group I, 1R, SLO-POR 3-2 Millennium Estoril Open - Estoril Davis Cup, Group I, PO, RUS-POR 4-1 Hamburg European Open - Hamburg Studena Croatia Open - Umag Intrum Stockholm Open - Stockholm Hall of Fame Open - Newport Estoril Open - Estoril Heineken Open - Auckland Winston-Salem Open - Winston-Salem Davis Cup, Group II, 1R, POR-MAR 4-1 Davis Cup, Group II, 2R, POR-FIN 4-1 Davis Cup, Group II, 3R, POR-BLR 3-2 Davis Cup, Group I, 1R, POR-AUT 1-4 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, PO, UKR-POR 3-1 Davis Cup, World Group, QR, KAZ-POR 3-1 Davis Cup, Group I, 1R, BLR-POR 3-2 Davis Cup, World Group I, PO, LTU-POR 0-4 Davis Cup, Group I, 1R, ROU-POR 3-1 Davis Cup, Group I, PO, POR-POL 4-0 Davis Cup, Group I, 1R, POR-BRA 3-1 Miami Open - Miami Miami Open - Miami Mutua Madrid Open - Madrid Gerry Weber Open - Halle Mutua Madrid Open - Madrid Citi Open - Washington BNP Paribas Open - Indian Wells Mutua Madrid Open - Madrid Dubai Duty Free Tennis Championships - Dubai Rogers Cup - Toronto Rogers Cup - Montreal Australian Open - Melbourne Internazionali BNL d'Italia - Rome Internazionali BNL d'Italia - Rome French Open - Paris French Open - Paris Davis Cup, World Group, PO, POR-CZE 1-3 Davis Cup, Europe/Africa Group II, 3R, POR-BIH 3-2 Davis Cup, Group I, PO, POR-RSA 4-0 Davis Cup, Group 2, 1R, CYP-POR 3-2 Davis Cup, Group 2, PO, ALG-POR 0-5 Davis Cup, Group I, 1R, POR-ISR 5-0 U.S. Open (juniors) Australian Open (juniors) French Open (juniors) Wimbledon (juniors) U.S. Open (juniors) Australian Open (juniors) French Open (juniors) Wimbledon (juniors) U.S. Open (juniors) All Lower level tournaments Olympics - Rio de Janeiro Olympics - Tokyo