Career 2025 2024 2023 2022 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012 2011 2010 2009 2008 2007 2006 2005 2004 2003 2002 2001
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 Brazil F1 Colombia F1 Colombia F2 Italy F11 Italy F12 Brazil F4 Brazil F5 Brazil F7 Brazil F8 Brazil F9 Brazil F10 El Salvador F1 Guatemala F1 Costa Rica F1 Mexico F1 Mexico F2 Brazil F1 Chile F1 Chile F3 Colombia F3 Colombia F4 Brazil F4 Brazil F5 Spain F16 Spain F17 Spain F18 Poland F7 Brazil F10 Brazil F21 Brazil F1 Brazil F3 Brazil F6 Brazil F14 Brazil F2 Poland F8 Brazil F11 Italy F3 Italy F4 Italy F5 Italy F6 Italy F7 Italy F8 Italy F9 Italy F10 Brazil F1 Brazil F2 Brazil F3 Brazil F4 Brazil F5 Brazil F1 Brazil F2 Brazil F3 Brazil F7 Brazil F8 Germany F12 Brazil F27 Brazil F28 Brazil F13 Brazil F12 Brazil F16 Salzburg Challenger Wimbledon - London Nordea Open - Bastad Hamburg European Open - Hamburg Seville Challenger Davis Cup, Group A, Bologna U.S. Open - New York Mallorca Challenger Orleans Challenger Guayaquil Challenger Alicante Challenger Malaga Challenger Lima 2 Challenger Stockholm Open - Stockholm Valencia Challenger Montevideo Challenger Portugal F1 Naples Challenger Portugal F2 Australian Open - Melbourne Portugal F3 Oeiras 3 Challenger BNP Paribas Open - Indian Wells Miami Open - Miami Qatar ExxonMobil Open - Doha Egypt F1 Egypt F2 Egypt F3 Egypt F4 Manama Challenger Quimper Challenger Davis Cup, World Group, Q, SWE-BRA 1-3 Wimbledon - London Dubai Duty Free Tennis Championships - Dubai Phoenix Challenger Ostrava Challenger Oeiras 4 Challenger Mauthausen Challenger French Open - Paris Canada F6 Citi Open - Washington Cary Challenger Sweden F4 Sassuolo Challenger Sweden F6 Nordea Open - Bastad Sweden F7 U.S. Open - New York Istanbul Challenger Orleans Challenger BNP Paribas Nordic Open - Stockholm Zug Challenger Mouilleron-Le-Captif Challenger Seoul Challenger Roanne Challenger Israel F1 Matsuyama Challenger Israel F2 Kobe Challenger Israel F3 Cordenons Challenger Tampere Challenger Great Britain F5 Great Britain F6 Great Britain F7 Egypt F12 Egypt F13 Egypt F14 Sweden F2 Romania F3 Netherlands F1 Pune Challenger Netherlands F2 Yokkaichi Challenger Chennai Challenger Netherlands F3 Yokohama Challenger St. Tropez Challenger Zadar Challenger Francavilla Challenger Grodzisk Mazowiecki Challenger New Delhi Challenger Internazionali BNL d'Italia - Rome Prague Challenger BCP Tennis Classic - Sao Paulo Copa Ericsson Brazil - Sao Paulo Visa Tennis Open - Sao Paulo 12th BH Tennis Open International Cup - Belo Horizonte Sao Paulo - Brazil Aberto de Sao Paulo - Sao Paulo Nossa Caixa Tennis Cup - Sao Paulo Cyclus Open de Tenis - Florianopolis 10° Trofeo Luigi Pezzoli - Bergamo Seguros Bogota Open - Bogota Credicard Mastercard Tennis Cup - Campos do Jordao BH Tennis Open International Cup - Belo Horizonte Joinville Tennis Festival - Joinville II Manta Open - Manta Amazonia Open de Tenis - Belem IX Gramado Open - Gramado XII Trofeo Ciudad de Quito 'Diario El Comercio' - Quito Seguros Bolivar Open - Medellin Copa Petrobras Colombia - Bogota Copa Petrobras Uruguray - Montevideo Copa Petrobras Brazil - Aracaju Copa Petrobras Paraguay - Asuncion Aberto de Sao Paulo - Sao Paulo La Serena Open - La Serena Copa Kia Challenger ATP - Santiago II Cyclus Open de Tenis - Florianopolis XII Abierto Internacional de Salinas - Salinas Bancolombia Open - Bogota Aberto de Santa Catarina de Tenis - Florianopolis Prosperita Open 2007 - Ostrava Croatia Osiguranje Rijeka Open - Rijeka Unique Zagreb Open - Zagreb Baden Open - Karlsruhe Memorial Manfredini - Sassuolo Polska Energia Open - Bytom Riviera di Rimini Challenger - Rimini Credicard Citi Mastercard Tennis Cup 2007 - Campos do Jordao Ljubljana Open - Ljubljana Pekao Open - Szczecin Ipsos Bucharest Challenger - Bucharest Aberto de Sao Paulo - Sao Paulo ITG Miami Challenger - Miami Hilton Waikoloa Village USTA Challenger - Waikoloa Challenger de Providencia-Copa Kia - Santiago Bancolombia Open - Bogota Abierto Internacional de Salinas 'Dario Expreso' - Salinas III Aberto Santa Catarina de Tenis - Florianopolis Bukhara Challenger - Bukhara Karshi Challenger - Karshi Southern Capital Cup - Almaty Dusseldorf Open Challenger - Dusseldorf Challenger Copa Sevilla 2008 - Seville Copa Petrobras-Brazil - Aracaju Cyclus Open de Tenis - Florianopolis Sao Paulo Challenger Salinas Challenger Iquique Challenger Bucaramanga Challenger Santiago Challenger Monza Challenger Rome Challenger Blumenau Challenger Constanta Challenger Oberstaufen Challenger Recanati Challenger Belo Horizonte Challenger Campos do Jordao Challenger Brasilia Challenger Seville Challenger Todi Challenger Palermo Challenger Florionapolis Challenger Guayaquil Challenger Sao Paulo Challenger Lima Challenger Sao Paulo Challenger Salinas Challenger Caltanissetta Challenger Barletta Challenger Napoli Challenger Blunmenau Challenger Curitiba Challenger Cairo Challenger Biella Challenger Cremona Challenger Alessandria Challenger Rome Challenger Bogota Challenger Campos do Jordao Challenger Brasilia Challenger Salvador Challenger Belo Horizonte Challenger Bogota Challenger Cali Challenger Quito Challenger Asuncion Challenger Sao Paulo Challenger Medellin Challenger Guayaquil Challenger Sao Paulo Challenger Bucaramanga Challenger Salinas Challenger Santiago Challenger San Jose Challenger Barranquilla Challenger Pereira Challenger Prague Challenger Bordeaux Challenger Alessandria Challenger Prostejov Challenger Nottingham Challenger Bogota Challenger Manta Challenger Campos do Jordao Challenger Binghamton Challenger Campinas Challenger Recife Challenger Belo Horizonte Challenger Sao Jose Do Rio Preto Challenger Medellin Challenger Buenos Aires Challenger Guayaquil Challenger Montevideo Challenger Sao Paulo Challenger Florianopolis Challenger Santiago Challenger Le Gosier Challenger Tallahassee Challenger Blumenau Challenger Santos Challenger Sao Paulo Challenger Bordeaux Challenger Caltanissetta Challenger Monza Challenger Panama City Challenger San Marino Challenger Cordenons Challenger Campinas Challenger Belem Challenger San Juan Challenger Villa Allende Challenger Buenos Aires Challenger Montevideo Challenger Eckental Challenger Sao Leopoldo Challenger Sao Paulo Challenger Bucaramanga Challenger Salinas Challenger Pereira Challenger Santiago Challenger Itajai Challenger Santos Challenger Sao Paulo Challenger Braunschweig Challenger Porto Alegre Challenger Sao Paulo Challenger Sao Jose Do Rio Preto Challenger Buenos Aires Challenger Montevideo Challenger Bratislava Challenger Helsinki Challenger Andria Challenger Panama City Challenger Barranquilla Challenger Sao Paulo Challenger Santos Challenger Tunis Challenger Vicenza Challenger Mestre Challenger Arad Challenger Blois Challenger Poznan Challenger Tampere Challenger Cortina Challenger Liberec Challenger San Marino Challenger Bangkok Challenger Shanghai Challenger Napa Challenger Sacramento Challenger Tiburon Challenger Eckental Challenger Helsinki Challenger Santiago Challenger Drummondville Challenger San Luis Potosi Challenger Sarasota Challenger Santos Challenger Sao Paulo Challenger Turin Challenger Cali Challenger Rome Challenger Furth Challenger Caltanissetta Challenger Ilkley Challenger Blois Challenger Milan Challenger Marburg Challenger Braunschweig Challenger Poznan Challenger Aptos Challenger Prague Challenger Vancouver Challenger Cordenons Challenger Barranquilla Challenger Istanbul Challenger Izmir Challenger Campinas Challenger Porto Alegre Challenger Mons Challenger Sao Paulo Challenger Rennes Challenger Corrientes Challenger Santiago Challenger Lima Challenger Guayaquil Challenger Bratislava Challenger Buenos Aires Challenger Brescia Challenger Mendoza Challenger Buenos Aires Challenger Rio De Janeiro Challenger Bucaramanga Challenger Bergamo Challenger Jonkoping Challenger Santiago Challenger Irving Challenger Napoli Challenger Barletta Challenger Turin Challenger Aix En Provence Challenger Bordeaux Challenger Prostejov Challenger Caltanissetta Challenger Prague Challenger Perugia Challenger Milan Challenger Bastad Challenger Biella Challenger Cordenons Challenger Manerbio Challenger Como Challenger Genova Challenger Barranquilla Challenger Santos Challenger Rome Challenger Medellin Challenger Campinas Challenger Mohammedia Challenger Buenos Aires Challenger Santiago Challenger Lima Challenger Guayaquil Challenger Montevideo Challenger Dallas Challenger Santiago Challenger Buenos Aires Challenger San Francisco Challenger Panama City Challenger Barletta Challenger Aix En Provence Challenger Bordeaux Challenger Vicenza Challenger Lyon Challenger Poprad Tatry Challenger Braunschweig Challenger Bastad Challenger Cordenons Challenger Manerbio Challenger Como Challenger Genova Challenger Tiburon Challenger Stockton Challenger Mouilleron-Le-Captif Challenger Montevideo Challenger Santiago Challenger Bangalore Challenger Rio De Janeiro Challenger Rennes Challenger Budapest Challenger Santiago Challenger Irving Challenger St. Brieuc Challenger Panama City Challenger Tunis Challenger Aix En Provence Challenger Rome Challenger Bordeaux Challenger Prostejov Challenger L'Aquila Challenger Milan Challenger Marburg Challenger Braunschweig Challenger Bastad Challenger Prague Challenger Como Challenger Chicago Challenger Genova Challenger Szczecin Challenger Cary Challenger Orleans Challenger Campinas Challenger Santo Domingo Challenger Brest Challenger Lima Challenger Mouilleron-Le-Captif Challenger Bangalore Challenger Pune Challenger Playford Challenger Rennes Challenger Punta Del Este Challenger Santiago Challenger Phoenix Challenger Alicante Challenger Aix En Provence Challenger Heilbronn Challenger Poznan Challenger Lyon Challenger Ludwigshafen Challenger Braunschweig Challenger Perugia Challenger San Benedetto Challenger Prague Challenger Tampere Challenger Liberec Challenger Genova Challenger Banja Luka Challenger Hamburg Challenger Bratislava Challenger Helsinki Challenger Canberra Challenger Nur-Sultan Challenger Prague Challenger Prague II Challenger Aix En Provence Challenger Split Challenger Istanbul Challenger Cary Challenger Orlando Challenger Biella 4 Challenger Marbella Challenger Split 1 Challenger Split 2 Challenger Rome 1 Challenger Ostrava Challenger Prague Challenger Lyon Challenger Aix En Provence Challenger Braunschweig Challenger St. Tropez Challenger Cassis Challenger Rennes Challenger Orleans Challenger Mouilleron-Le-Captif Challenger Tenerife Challenger Marbella Challenger Bordeaux Challenger Prostejov Challenger Perugia Challenger Montechiarugolo - Parma Challenger Salzburg Challenger Vancouver Challenger Toulouse Challenger Tulln Challenger Helsinki Challenger Andria Challenger Maia Challenger Ottignies-Louvain-la-Neuve Challenger Vilnius Challenger Phoenix Challenger Split Challenger Bordeaux Challenger Prostejov Challenger Brasil Open - Costa do Sauipe Generali Open - Kitzbuhel Brasil Open - Costa do Sauipe Movistar Open - Santiago Brasil Open - Costa do Sauipe Movistar Open - Santiago Brasil Open - Costa do Sauipe Maia Challenger VTR Open - Vina del Mar Brasil Open - Sao Paulo Copa Claro - Buenos Aires SkiStar Swedish Open - Bastad Bet-at-home Open - Hamburg Bet-at-home Cup - Kitzbuhel If Stockholm Open - Stockholm VTR Open - Vina del Mar Brasil Open - Sao Paulo Copa Claro - Buenos Aires Open de Nice Cote d'Azur - Nice Topshelf Open - 's-Hertogenbosch SkiStar Swedish Open - Bastad If Stockholm Open - Stockholm Copa Claro - Buenos Aires Rio Open 500 - Rio de Janeiro Brasil Open - Sao Paulo Open de Nice Cote d'Azur - Nice SkiStar Swedish Open - Bastad If Stockholm Open - Stockholm Aircel Chennai Open - Chennai Ecuador Open - Quito Brasil Open - Sao Paulo Rio Open - Rio de Janeiro Argentina Open - Buenos Aires US Men's Clay Court Championship - Houston Barcelona Open BancSabadell - Barcelona SkiStar Swedish Open - Bastad Austrian Open - Kitzbuhel Aircel Chennai Open - Chennai Open Sud de France - Montpellier Ecuador Open - Quito Rio Open - Rio de Janeiro Brasil Open - Sao Paulo Grand Prix Hassan II - Marrakech Barcelona Open BancSabadell - Barcelona Millennium Estoril Open - Estoril SkiStar Swedish Open - Bastad Suisse Open - Gstaad Generali Open - Kitzbuhel If Stockholm Open - Stockholm Brisbane International - Brisbane Aircel Chennai Open - Chennai Apia International - Sydney Ecuador Open - Quito Argentina Open - Buenos Aires Memphis Open - Memphis Rio Open - Rio de Janeiro Delray Beach Open - Delray Beach Brasil Open - Sao Paulo US Men's Clay Court Championship - Houston Barcelona Open BancSabadell - Barcelona Millennium Estoril Open - Estoril TEB BNP Paribas Istanbul Open - Istanbul Geneva Open - Geneva Antalya Cup - Antalya SkiStar Swedish Open - Bastad Konzum Croatia Open - Umag Generali Open - Kitzbuhel Winston-Salem Open - Winston-Salem St. Petersburg Open - St. Petersburg Shenzhen Open - Shenzhen China Open - Beijing Kremlin Cup - Moscow If Stockholm Open - Stockholm Erste Bank Open - Vienna Qatar ExxonMobil Open - Doha ASB Classic - Auckland Ecuador Open - Quito Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Brasil Open - Sao Paulo Barcelona Open BancSabadell - Barcelona Gazprom Hungarian Open - Budapest TEB BNP Paribas Istanbul Open - Istanbul Gerry Weber Open - Halle SkiStar Swedish Open - Bastad Plava Laguna Croatia Open - Umag Swiss Open - Gstaad Abierto Mexicano - Los Cabos Intrum Stockholm Open - Stockholm Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Brasil Open - Sao Paulo Grand Prix Hassan II - Marrakech Millennium Estoril Open - Estoril SkiStar Swedish Open - Bastad Intrum Stockholm Open - Stockholm Murray River Open - Melbourne Nordea Open - Bastad Abierto Mexicano de Tenis Mifel - Los Cabos Truist Atlanta Open - Atlanta Citi Open - Washington Stockholm Open - Stockholm Kremlin Cup - Moscow Astana Open - Nur-Sultan Tata Open Maharashtra - Pune Qatar ExxonMobil Open - Doha Dubai Duty Free Tennis Championships - Dubai Barcelona Open Banc Sabadell - Barcelona BMW Open - Munich Nordea Open - Bastad Swiss Open - Gstaad Plava Laguna Croatia Open - Umag Rakuten Japan Open - Tokyo Stockholm Open - Stockholm Korea Open - Seoul Tata Open Maharashtra - Pune ABN AMRO World Tennis Tournament - Rotterdam Open 13 Provence - Marseille Abierto Mexicano Telcel - Acapulco Grand Prix Hassan II - Marrakech Banja Luka Open - Banja Luka Western & Southern Financial Group Masters - Cincinnati Sony Ericsson Open - Miami Sony Open Tennis - Miami Sony Open Tennis - Miami Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Miami Open - Miami BNP Paribas Open - Indian Wells Miami Open - Miami Rogers Cup - Montreal Miami Open - Miami Rogers Cup - Toronto BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Internazionali BNL d'Italia - Rome BNP Paribas Open - Indian Wells Miami Open - Miami BNP Paribas Open - Indian Wells Miami Open - Miami Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Wimbledon - London 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 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 Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York 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 Davis Cup, Group I, 2R, URU-BRA 0-5 Davis Cup, World Group, PO, BRA-RUS 5-0 Davis Cup, World Group, PO, GER-BRA 4-1 Davis Cup, Group I, PO, SWE-DEN 3-2 Davis Cup, Group I, 2R, ECU-BRA 1-3 Davis Cup, World Group, PO, BRA-ESP 3-1 Davis Cup, Group I, PO, ROU-SWE 3-1 Davis Cup, Group I, 1R, SWE-AUT 2-3 Davis Cup, Group I, 2R, BRA-ECU 3-1 Davis Cup, Group I, PO, SWE-NED 0-5 Davis Cup, Group I, PO, ISR-SWE 3-1 Davis Cup, Group II, 2R, TUR-SWE 1-4 Davis Cup, Group II, 3R, SWE-LTU 5-0 Davis Cup, Group I, 1R, UKR-SWE 2-3 Davis Cup, Group I, 2R, SWE-POR 3-2 Davis Cup, World Group, QR, COL-SWE 4-0 Davis Cup, World Group, QR, BRA-BEL 1-3 Davis Cup, World Group, QR, SWE-CHI 3-1 Davis Cup, Finals, Group B Davis Cup, Finals, QF, RUS-SWE 2-0 Davis Cup, Qualifiers, 1R, SWE-JPN 3-2 Davis Cup, Group A, Bologna Davis Cup, World Group, PO, SWE-BIH 3-1 Davis Cup, World Group I, 1R, SWE-IND 4-0 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 Oeiras 5 Challenger Sassuolo Challenger Porto Challenger Mallorca Championships - Mallorca Naples Challenger Rome Challenger Tiriac Open - Bucharest Monza Challenger Hamburg Open - Hamburg Perugia Challenger Heilbronn Challenger Braunschweig Challenger Nordea Open - Bastad U.S. Open - New York Seville Challenger Porto 2 Challenger Szczecin Challenger Bad Waltersdorf Challenger Braga Challenger Lisbon Challenger