Career 2023 2022 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012 2011 2010 2009 2008 2007 2006 2005 2004 2003 2002
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 Canada F3 Canada F4 Canada F2 Canada F1 Canada F2 Canada F3 Guatemala F1 Panama F1 Costa Rica F1 USA F4 USA F5 USA F6 Canada F2 USA F7 USA F8 El Salvador F1 Guatemala F1 Colombia F1 Colombia F2 Canada F5 Canada F7 Venezuela F8 USA F26 USA F27 USA F5 USA F6 Canada F1 Canada F2 Romania F1 Canada F5 Canada F7 Canada F9 Australia F1 Canada F1 Canada F2 Canada F5 Canada F7 Canada F8 Canada F9 Canada F6 Canada F9 USA F16 USA F17 USA F18 Canada F3 Canada F4 Canada F5 M25 Nur-Sultan USA F24 USA F25 Canada F1 Canada F3 El Salvador F1 Canada F5 Banca Marche Tennis Cup - San Benedetto Ciudad de Pozoblanco Open Diputacion - Cordoba Challenger Banque Nationale Rimouski - Rimouski Open Castilla y Leon - Segovia XXX Edizione 'A Savoldi Marco' - Manerbio Countrywide Classic USTA Challenger - Carson Trofeo Sisma Mantova - Mantova Ethias Trophy - Mons Bogota Challenger - Bogota Morocco Tennis Tour - Rabat Challenger Leon 2004 - Leon Morocco Tennis Tour - Marrakech Seguros Bolivar Open - Bogota Moncton Men's Challenger - Moncton Oldum Brown Vancouver Open - Vancouver Waco Tennis Challenger - Waco Bancolombia Open - Cali National Bank Men's Rimouski Challenger - Rimouski Heilbronn Challenger Wroclaw Challenger Dallas Challenger Corona Mexico City Open - Mexico City Bogota Challenger Mexico City Challenger Reggio Emilia Challenger Turin Challenger Bruno & Bruno Trial Lawyers Men's Challenger - New Orleans The Surbiton Trophy - Surbiton Granby Challenger Vancouver Challenger Cali Challenger Bogota Challenger Quito Challenger Mons Challenger Rennes Challenger The Surbiton Trophy - Surbiton Santiago Challenger Carson Challenger Ojai Challenger Bogota Challenger Aptos Challenger II Naples ITG Challenger - Naples Sunset Moulding Yuba City Racquet Club Challenger - Yuba City Challenger Natrel Presented by National Bank - Granby Seguros Bolivar Open - Bogota Singapore Challenger Bucaramanga Challenger San Jose Challenger Rimouski Challenger Barranquilla Challenger Rome Challenger Alessandria Challenger Nottingham Challenger Bogota Challenger Copa Petrobras - Bogota Challenger Leon 2003 - Leon VIII Avierto Internacional de Salinas - Salinas San Luis Potosi Challenger - San Luis Potosi San Marino Cepu Open - San Marino Levene Gouldin & Thompson Tennis Challenger - Binghamton Maia Open 2002 - Maia 3° Trofeo 'Citta di Brindisi' - Brindisi USTA Challenger of San Antonio - San Antonio Corona Mexico City Open - Mexico City Rennes Challenger Arroyo de la Encomienda - Valladolid Oklahoma Challenger - Tulsa Ford Tennis Championships - Louisville The Surbiton Trophy - Surbiton Medellin Challenger San Luis Potosi Challenger - San Luis Potosi Knoxville Challenger Abierto Club Casablanca - Mexico City Noumea Challenger Honolulu Challenger Ciudad de Pozoblanco Open Diputacion - Cordoba Barranquilla Challenger Athens Challenger Orbetello Challenger Tallahassee Challenger Arad Challenger Prague Challenger M25 Cancun Challenger Banque Nationale - Granby Granby Challenger Lexington Challenger Vancouver Challenger Napa Challenger Tiburon Challenger Noumea Challenger Maui Challenger Bucaramanga Challenger Dallas Challenger Irving Challenger The 'Fitz' Casino Challenger - Tunica 2007 West Side Tennis Club Clay Court Challenger - Forest Hills Arpa Ceramic Cup - Reggio Emilia dBI Tennis Challenger - Binghamton GHI Bronx Classic - Bronx Tatra Banka Open - Bratislava Lexington Challenger The Natrel's Challenger - Granby Montevideo Challenger Ethias Trophy - Mons Lubbock Challenger - Lubbock San Luis Potosi Challenger - San Luis Potosi BNP Paribas Primrose - Bordeaux Memorial A. Manfredini Sassuolo Challenger - Sassuolo Napa Challenger Pereira Challenger Ford Tennis Championships - Louisville Tatra Banka Slovak Open - Bratislava Salinas Challenger ECM Prague Open 2005 - Prague Asuncion Challenger Carson Challenger Challenger de Providencia-Copa Kia - Santiago Abierto Internacional de Salinas 'Dario Expreso' - Salinas Zagreb Challenger Pereira Challenger Reggio Emilia Challenger Granby Challenger Columbus Challenger Pereira Challenger Sacramento Challenger Zenith Tennis Cup-Harbour Club - Milan Mobilux Open - Luxembourg Bogota Challenger Noumea Challenger Happy Valley Challenger Burnie Challenger Bucaramanga Challenger Semgroup Challenger - Tulsa Seguros Bolivar Open - Cali Copa Petrobras-Colombia - Bogota Drummondville Challenger Prague Challenger JSM Challenger of Champaign - Urbana BMW Tennis Championship - Sunrise Seguros Bolivar Open - Medellin Leon Challenger San Luis Potosi Challenger - San Luis Potosi Savannah Challenger Abierto Colombiano de Tenis - Bogota Tallahassee Challenger Bordeaux Challenger Open de Montauban - Montauban Riviera di Rimini Challenger - Rimini Barranquilla Challenger Cali Challenger Monterrey Challenger Knoxville Challenger IX Abierto Internacional de Salinas - Salinas Barranquilla Challenger Noumea Challenger Mons Challenger Pereira Challenger Savannah Challenger Vicenza Challenger Surbiton Challenger Nottingham Challenger Dallas Challenger Winnipeg Challenger San Luis Potosi Challenger Gatineau Challenger Granby Challenger Manta Challenger Floridablanca Challenger Gwangju Challenger Granby Challenger Ciudad de Pozoblanco Open Diputacion - Cordoba Ningboo Challenger Indian Wells Challenger Sacramento Challenger Sarasota Challenger Tallahassee Challenger Happy Valley Challenger Bordeaux Challenger Chitre Challenger Nottingham Challenger Odlum Brown Vancouver Open - Vancouver Vancouver Challenger Kosice Challenger Winnetka Challenger Cary Challenger Lexington Challenger Tallahassee Challenger Bordeaux Challenger Bangkok Challenger Manta Challenger Nur-Sultan 3 Challenger Lexington Challenger Sacramento Challenger Cali Challenger Tiburon Challenger Pro Challenger at Calabasas - Calabasas Le Gosier Challenger Morelos Challenger Savannah Challenger Aix En Provence Challenger Knoxville Challenger Puerto Vallarta Challenger Granby Challenger Surbiton Challenger PrivatBank Cup - Dnepropetrovsk Winnipeg Challenger Tiburon Challenger Gatineau Challenger Medellin Challenger Fairfield Challenger Ilkley Challenger Morelos Challenger Le Gosier Challenger Manchester Challenger Ilkley Challenger Ho Chi Minh City Challenger Cary Challenger Stockton Challenger Charlottesville Challenger Morelos Challenger San Francisco Challenger Sarasota Challenger Bordeaux Challenger XL Challenger de Tenis Copa Sevilla - Seville Santo Domingo Challenger Granby Challenger Shenzhen Challenger Bogota Challenger - Bogota Sarasota Challenger Savannah Challenger Granby Challenger Tiburon Challenger Charlottesville Challenger Knoxville Challenger Champaign Challenger Caltanissetta Challenger Furth Challenger Czech Open 2005 - Prostejov Kosice Challenger Indian Wells Challenger Phoenix Challenger Monterrey Challenger Panama City Challenger Sarasota Challenger Bogota Challenger Heilbronn Challenger Recanati Challenger The Natrel's Challenger of Granby - Granby Project Independence Men's Challenger - Mandeville Vancouver Challenger Lexington Challenger IX Trofeo Ciudad de Quito - Quito The Stella Artois Grass Court Championships - London Synsam Swedish Open - Bastad Morelos Challenger The Priority Telecom Open - Amersfoort Orlando Challenger Sao Paulo - Brazil Hilton Waikoloa Village USTA Challenger - Waikoloa Ostrava Challenger Naples Challenger - Naples Generali Open - Kitzbuhel Legg Mason Tennis Classic - Washington D.C. Nur-Sultan 4 Challenger Nur-Sultan 2 Challenger Kremlin Cup - Moscow Columbus Challenger Charlottesville Challenger Columbus Challenger Cleveland Challenger X Open Internacional D'Andorra - Andorra Charlottesville Challenger Bogota Challenger RCA Championships - Indianapolis XI Trofeo Ciudad de Quito - Quito Mercedes-Benz Cup - Los Angeles Tunis Open 2006 - Tunis Legg Mason Tennis Classic - Washington D.C. Swanston Challenger - Sacramento The Stella Artois Championships - London III Aberto Santa Catarina de Tenis - Florianopolis XL Bermuda Open - Bermuda Trofeo Cassa di Risparmio di Alessandria - Alessandria BA-CA Tennis Trophy - Vienna Grand Prix de Tennis de Lyon - Lyon Columbus Challenger San Luis Potosi Challenger Tiburon Challenger Milan Challenger 2008 Lubbock Challenger - Lubbock Fairfield Challenger Open Seat Godo 2007 - Barcelona Charlottesville Challenger Estoril Open - Estoril Knoxville Challenger Bangkok Challenger Ethias Trophy - Mons Vancouver Challenger Columbus Challenger Sacramento Challenger - Sacramento The Mercedes Benz of Calabasas - Calabasas RCA Championships - Indianapolis Ostrava Challenger Legg Mason Tennis Classic - Washington Barcelona Challenger Istanbul Challenger Cary Challenger Caloundra Challenger Potchefstroom 1 Challenger Pereira Challenger San Remo Challenger Zagreb Challenger Napoli Challenger Grand Prix de Tennis de Lyon - Lyon Alessandria Challenger The Nottingham Open - Nottingham Indianapolis Tennis Championships - Indianapolis Legg Mason Tennis Classic - Washington Grand Prix de Tennis de Lyon - Lyon Bordeaux Challenger AEGON Championships - London Campbells Hall of Fame Tennis Championships - Newport Countrywide Classic - Los Angeles Legg Mason Tennis Classic - Washington Furth Challenger Bank Austria Tennis Trophy - Vienna Sarasota Challenger Bogota Challenger Burnie Challenger Champaign Challenger Chennai Open - Chennai San Benedetto Challenger Winnipeg Challenger Sacramento Challenger Prostejov Challenger U.S. Mens's Clay Court Championship - Houston Open Sabadell Atlantico - Barcelona Honolulu Challenger Estoril Open - Estoril Orlando Challenger Serbia Open - Belgrade Ordina Open - s-Hertogenbosch Open de Tenis Comunidad Valenciana - Valencia Malaysian Open - Kuala Lumpur Bucaramanga Challenger The Artois Championships - London Drummondville Challenger Brisbane International - Brisbane Medibank International - Sydney SAP Open - San Jose Delray Beach International Tennis Championships - Delray Beach Delray Beach International Tennis Championships - Delray Beach Sunrise Challenger US Men's Clay Court Championship - Houston Brasil Open - Costa do Sauipe Noumea Challenger Estoril Open - Estoril Leon Challenger Legg Mason Tennis Classic - Washington Winston Salem - Winston Salem International Tennis Championships - Delray Beach West Lakes Challenger If Stockholm Open - Stockholm Heineken Open - Auckland Sydney Challenger Rimouski Challenger Monterrey Challenger US Men's Clay Court Championship - Houston Rimouski Challenger UNICEF Open - 's Hertogenbosch Thailand Open - Bangkok Malaysian Open - Kuala Lumpur Rakuten Japan Open - Tokyo If Stockholm Open - Stockholm Countrywide Classic - Los Angeles Campionati Internazionali di Sicilia - Palermo Brisbane International - Brisbane Heineken Open - Auckland UNICEF Open - 's Hertogenbosch Bogota Challenger Nottingham Challenger SAP Open - San Jose U.S. National Indoor Tennis Championships - Memphis Delray Beach International Tennis Championships - Delray Beach Open de Nice Cote d'Azur - Nice BB&T Atlanta Open - Atlanta Grand Prix de Tennis de Lyon - Lyon Panama City Challenger PTT Thailand Open - Bangkok Rakuten Japan Open - Tokyo If Stockholm Open - Stockholm Baton Rouge Challenger Claro Open Colombia - Bogota BMW Open - Munich Heineken Open - Auckland Las Vegas Challenger Charlottesville Challenger Abierto Mexicano Telcel - Acapulco Tallahassee Challenger Bogota Challenger RCA Championships - Indianapolis Knoxville Challenger Gerry Weber Open - Halle Las Vegas Challenger Chennai Open - Chennai Sydney International - Sydney Open de la Comunidad Valenciana - Valencia The Stella Artois Championships - London Abierto Mexicano - Los Cabos Ecuador Open - Quito Memphis Open - Memphis Open Parc - Lyon Next Generation Adelaide International - Adelaide Champaign Challenger Potchefstroom 2 Challenger Abierto Mexicano - Los Cabos Erste Bank Open - Vienna Brisbane International - Brisbane Savannah Challenger Porto Challenger Copa Telmex - Buenos Aires Delray Beach International Tennis Championships - Delray Beach Gerry Weber Open - Halle New York Open - New York Legg Mason Tennis Classic - Washington AIG Japan Open Tennis Championships - Tokyo Open de Tenis Comunidad Valenciana - Valencia Aircel Chennai Open - Chennai Infosys Hall of Fame Open - Newport Farmers Classic - Los Angeles Manchester Challenger Abierto Mexicano Telcel - Acapulco Brisbane International - Brisbane Regions Morgan Keegan Championships - Memphis Delray Beach International Tennis Championships - Delray Beach BMW Open - Munich Open de Nice Cote d'Azur - Nice Portugal Open - Oeiras Champaign Challenger US Men's Clay Court Championship - Houston Guadalajara Challenger Citi Open - Washington Claro Open Colombia - Bogota Citi Open - Washington Valencia Open - Valencia Gatineau Challenger Delray Beach Open - Delray Beach Medellin Challenger Maui Challenger Iasi Challenger US Men's Clay Court Championship - Houston Split Challenger Canberra Challenger Topshelf Open - 's-Hertogenbosch Puebla Challenger Drummondville Challenger Aix En Provence Challenger Tallahassee Challenger Cali Challenger If Stockholm Open - Stockholm Valencia Open - Valencia Ecuador Open - Quito Maui Challenger Knoxville Challenger Bogota Challenger Mercedes Cup - Stuttgart Gerry Weber Open - Halle Hall of Fame Tennis Championships - Newport Savannah Challenger Claro Open Colombia - Bogota Dallas Challenger Kobe Challenger Hua Hin Challenger Monterrey Challenger USTA Challenger of North Miami Beach - North Miami Beach Intrum Stockholm Open - Stockholm Newport Beach Challenger Delray Beach Open - Delray Beach Ilkley Challenger Guadalajara Challenger Citi Open - Washington Shanghai Challenger Prague Challenger Fairfield Challenger Columbus Challenger Delray Beach Open - Delray Beach Winston-Salem Open - Winston-Salem Columbus Challenger Newport Beach Challenger Geneva Open - Geneva Vancouver Challenger Cary Challenger Surbiton Challenger Abierto Mexicano - Los Cabos Winnipeg Challenger Gatineau Challenger Vancouver Challenger Ecuador Open - Quito New Haven Challenger Cary Challenger Las Vegas Challenger Champaign Challenger Guayaquil Challenger Newport Beach Challenger Alicante Challenger Nur-Sultan 1 Challenger Prague Challenger Little Rock Challenger Orlando 2 Challenger The Stella Artois Grass Court Championships - London Regions Morgan Keegan Championships - Memphis Grand Prix Hassan II - Casablanca Countrywide Classic - Los Angeles BA-CA Tennis Trophy - Vienna Brisbane - Brisbane SAP Open - San Jose Brisbane International - Brisbane Ecuador Open - Quito Topshelf Open - 's-Hertogenbosch China Open - Beijing Brisbane International - Brisbane Delray Beach Open - Delray Beach Bank Austria Tennis Trophy - Vienna New York Open - New York Delray Beach Open - Delray Beach Tennis Masters Series - Madrid Tallahassee Challenger Aix En Provence Challenger Millenium Tennis Championships - Delray Beach Tallahassee Challenger Cary 2 Challenger Rogers Cup - Montreal Rogers Masters - Toronto Western & Southern Financial Group Masters - Cincinnati Masters Series Madrid - Madrid BNP Paribas Masters - Paris Sony Ericsson Open - Miami Western & Southern Financial Group Masters - Cincinnati New York Open - New York Masters Series Monte-Carlo - Monte Carlo Campionati Internazionali d'Italia - Rome Rogers Masters - Toronto Aircel Chennai Open - Chennai Pacific Life Open - Indian Wells Rogers Cup - Montreal Open Parc - Lyon Masters Series - Hamburg BNP Paribas Masters - Paris Sony Ericsson Open - Miami Internazionali BNL dItalia - Rome Mutua Madrilena Masters Madrid - Madrid Rogers Cup - Toronto Western & Southern Financial Group Masters - Cincinnati Sony Ericsson Open - Miami Mutua Madrilena Madrid Open - Madrid Internazionali BNL d'Italia - Rome BNP Paribas Masters - Paris Sony Open Tennis - Miami Rogers Cup - Montreal BNP Paribas Open - Indian Wells BNP Paribas Open - Indian Wells BNP Paribas Masters - Paris Rogers Cup - Montreal Mutua Madrid Open - Madrid Open 13 - Marseille Western & Southern Financial Group Masters - Cincinnati Shanghai ATP Masters 1000 - Shanghai Internazionali BNL d'Italia - Rome Internazionali BNL d'Italia - Rome BNP Paribas Open - Indian Wells Medibank International - Sydney BNP Paribas Open - Indian Wells Rogers Cup - Toronto Western & Southern Open - Cincinnati Rogers Cup - Montreal Shanghai Rolex Masters - Shanghai BNP Paribas Open - Indian Wells Sony Open Tennis - Miami Rogers Cup - Toronto Western & Southern Open - Cincinnati Miami Open - Miami Mutua Madrid Open - Madrid Rogers Cup - Montreal Miami Open - Miami Rogers Cup - Toronto Winston-Salem Open - Winston-Salem Miami Open - Miami Shanghai Rolex Masters - Shanghai BNP Paribas Open - Indian Wells Campionati Internazionali D'Italia - Rome Rogers Masters - Montreal Rogers Cup - Toronto Miami Open - Miami Coupe Rogers - Montreal Sony Ericsson Open - Miami Mutua Madrilena Madrid Open - Madrid BNP Paribas Open - Indian Wells BNP Paribas Open - Indian Wells Rogers Cup - Toronto Shanghai Rolex Masters - Shanghai Mutua Madrid Open - Madrid BNP Paribas Open - Indian Wells National Bank Open - Toronto Miami Open - Miami BNP Paribas Open - Indian Wells Medibank International - Sydney Hall of Fame Tennis Championships - Newport Tennis Channel Open - Las Vegas Hall of Fame Tennis Championships - Newport Campbells Hall of Fame Tennis Championships - Newport US Men's Clay Court Championship - Houston Open Sabadell Atlantico - Barcelona Swiss Indoors Basel - Basel US Men's Clay Court Championship - Houston Barcelona Open BancSabadell - Barcelona Fever-Tree Championships - London Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York French Open - Paris 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 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 U.S. Open - New York Australian Open - Melbourne Australian Open - Melbourne French Open - Paris Wimbledon - London French Open - Paris Wimbledon - London U.S. Open - New York U.S. Open - New York French Open - Paris Australian Open - Melbourne French Open - Paris Wimbledon - London Wimbledon - London French Open - Paris U.S. Open - New York U.S. Open - New York Australian Open - Melbourne Wimbledon - London BNP Paribas Open - Indian Wells Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne Australian Open - Melbourne Australian Open Qualifying - Doha French Open - Paris U.S. Open - New York Citi Open - Washington Davis Cup, Group 1, 2R, BRA-CAN 3-1 Davis Cup, Group 1, 1R, COL-URU 3-2 Davis Cup, Group 1, 2R, COL-BRA 1-4 Davis Cup, Group I, 2R, BRA-COL 3-1 Davis Cup, World Group, PO, COL-JPN 2-3 Davis Cup, World Group, PO, COL-USA 1-3 Davis Cup, Group 1, 1R, CAN-MEX 4-1 Davis Cup, Group I, 1R, MEX-CAN 1-4 Davis Cup, Group I, 1R, URU-COL 4-1 Davis Cup, Group 1, 1R, CAN-COL 5-0 Davis Cup, Group I, PO, MEX-COL 0-5 Davis Cup, Group 1, 2R, CHI-CAN 3-2 Davis Cup, Group 1, 1R, COL-CAN 4-1 Davis Cup, Group I, 2R, COL-URU 5-0 Davis Cup, World Group, 1R, JPN-CAN 4-1 Australian Open (juniors) French Open (juniors) U.S. Open (juniors) Davis Cup, Group 2, PO, COL-BAH 5-0 Davis Cup, Group 2, 2R, COL-PAR 4-1 Davis Cup, Group 1, PO, PER-CAN 2-3 Davis Cup, Group 2, F, DOM-COL 0-5 Wimbledon (juniors) Davis Cup, Americas Group I, PO, CAN-DOM 5-0 Davis Cup, World Group, PO, ISR-CAN 2-3 Davis Cup, Group I, 2R, COL-DOM 4-1 Davis Cup, Group 2, 1R, COL-URU 4-1 Davis Cup, World Group, PO, JPN-COL 3-2 Davis Cup, Group 1, 1R, COL-URU 5-0 Australian Open (juniors) U.S. Open (juniors) Olympics - London All Lower level tournaments