Career 2023 2022 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012 2011 2010 2009 2008 2007 2006 2005 2004 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 Algeria F2 Iran F2 Spain F20 Tunisia F4 Tunisia F5 UAE F1 Qatar F1 Qatar F2 Portugal #1-w1 Portugal #1-w2 Portugal #1-w3 Portugal #1-w4 Portugal F1 Portugal F2 Portugal F3 France F5 Greece F2 Spain F5 Romania F1 Romania F2 Italy F13 Romania F3 Tunisia F1 Tunisia F2 Spain F12 Tunisia F3 France F9 Spain F13 Spain F14 Spain F16 Iran F1 Iran F2 Spain F21 Spain F22 France F12 Spain F24 Spain F27 Spain F28 Spain F32 Tunisia F4 Spain F33 Tunisia F5 France F2 France F3 Poland F2 Egypt F2 Portugal F1 Egypt F3 Portugal F2 Portugal F3 France F6 Spain F14 Spain F16 Spain F17 Spain F18 Spain F20 Spain F30 Spain F31 France F17 Spain F33 Tunisia F4 Tunisia F5 Tunisia F6 Tunisia F7 Spain F1 France F1 Spain F4 Great Britain F3 Spain F6 Great Britain F4 Spain F7 Spain F8 Spain F12 Egypt F1 Egypt F2 Egypt F3 Spain F19 Tunisia F1 Tunisia F2 Portugal F5 Spain F39 Turkey F2 Kuwait F2 Tunisia F1 Austria F4 Austria F5 Austria F6 Romania F15 France F15 France F17 France F18 United Arab Emirates F1 United Arab Emirates F2 Morocco F1 Morocco F2 Spain F7 Spain F8 Spain F11 Spain F15 Spain F16 Spain F17 Kuwait F1 Kuwait F2 Spain F19 Tunisia F1 Spain F20 Tunisia F2 Spain F21 Tunisia F3 France F12 Georgia F1 Georgia F2 Germany F12 Italy F24 Spain F34 Spain F33 France F19 Spain F35 Spain F36 Spain F37 Morocco F1 Morocco F2 Spain F7 Italy F2 Italy F3 France F6 Italy F8 Tunisia F1 Tunisia F2 Spain F29 Netherlands F5 Netherlands F6 Morocco F7 Spain F35 Spain F36 Egypt F4 Egypt F5 Spain F39 Sudan F1 Sudan F2 Spain F2 Colombia F1 Colombia F2 Spain F7 Italy F5 Great Britain F7 Poland F2 Poland F4 Kazakhstan F4 Spain F36 France F20 France F22 Spain F24 Portugal F12 Spain F19 France F3 France F2 Nigeria F1 Nigeria F2 Algeria F1 Saudi Arabia F1 Saudi Arabia F2 Tunisia F1 Tunisia F2 Tunisia F3 Spain F13 Spain F14 Morocco F3 Spain F16 Iran F1 Spain F17 Italy F22 Italy F23 Spain F21 France F13 Spain F22 Spain F23 Spain F25 Spain F26 Spain F27 France F19 France F20 Belgium F2 Tunisia F6 Qatar F3 Morocco F1 Morocco F2 Italy F12 Romania F4 Spain F23 Spain F26 France F17 China F1 China F2 Spain F4 Italy F1 Italy F2 Poland F1 Italy F3 Spain F9 France F7 Spain F15 Spain F19 Spain F32 France F18 France F19 Spain F35 Spain F36 Spain F2 France F3 Spain F5 Spain F9 Spain F10 Morocco F4 France F18 Spain F14 Netherlands F1 M25 Porto M25 Bakio M25 Loule Trofeo Internacional Club Laieta - Barcelona LXV Concurso Internacional Vigo - Vigo Isla de Lanzarote - Lanzarote Open Castilla y Leon - Segovia Tunis Open 2006 - Tunis Trofeo Sisma Mantova - Mantova Dusseldorf Open 2006 - Dusseldorf Challenger Copa Sevilla - Seville Riviera di Rimini Challenger - Rimini Tunis Open 2007 - Tunis Isla de Gran Canaria - Mas Palomas San Remo Tennis Cup - San Remo Polska Energia Open - Bytom Nord LB Open 2007 - Braunschweig Arpa Ceramic Cup - Reggio Emilia Ciudad de Pozoblanco Open Diputacion - Cordoba Open Prevadies St. Brieuc Cotes D'Amor - St. Brieuc Delhi Challenger I - New Delhi Bancolombia Open - Bogota AT&T Challenger of Dallas - Dallas Challenger de Providencia-Copa Kia - Santiago Ciudad de Pozoblanco 'Open Diputacion' - Cordoba Media Will Cup Busan Challenger Tennis - Busan Memorial A. Manfredini Sassuolo Challenger - Sassuolo Togliatti Cup - Togliatti Arroyo de la Encomienda - Valladolid Mordovia Cup 2005 - Saransk LTA Shrewsbury Challenger - Shrewsbury South African Airways Open - East London Sail Open - New Delhi Internationaux de Nouvelle-Caledonie - New Caledonia Tunis Open - Tunis ITG Miami Challenger - Miami Ethias Tennis Trophy - Mons Morocco Tennis Tour - Marrakech Riviera de Rimini Challenger - Rimini Medjurgorje Open - Medjugorje Timisoara Challenger - Timisoara LXVII Concurso Internacional de Tenis Cidade de Vigo - Vigo 2nd Campionati Internazionali di Tennis Del'Umbria - Todi Tennislife Cup - Napoli Ford Tennis Championships - Louisville IPP Open - Helsinki Tanger Challenger Marrakech Challenger St. Brieuc Challenger Rome Challenger Tenerife Challenger Turin Challenger Vigo Challenger Como Challenger Todi Challenger Tulsa Challenger Quito Challenger Cancun Challenger Puebla Challenger Sao Paulo Challenger Meknes Challenger Rabat Challenger Caltanissetta Challenger Tunis Challenger Ostrava Challenger Alessandria Challenger Cordenons Challenger Segovia Challenger Brasilia Challenger Salvador Challenger Tashkent Challenger Kazan Challenger Casablanca Challenger Marrakech Challenger Astana Challenger Mons Challenger Rennes Challenger Geneva Challenger Kazan Challenger Quimper Challenger Kyoto Challenger Sao Paulo Challenger Pingguo Challenger Rabat Challenger Barletta Challenger Tunis Challenger Caltanissetta Challenger Rome Challenger Prostejov Challenger Recanati Challenger Bucaramanga Challenger Quimper Challenger St. Remy Challenger Recife Challenger Santos Challenger San Luis Potosi Challenger Prostejov Challenger Milan Challenger Arad Challenger Morelos Challenger Istanbul Challenger Leon Challenger Ostrava Challenger Nossa Caixa Tennis Cup - Sao Paulo Rome Challenger Orleans Challenger Furth Challenger Granby Challenger Astana Challenger Marrakech Challenger Meknes Challenger Pune Challenger Noumea Challenger Isla de Lanzarote - Lanzarote Leon Challenger Guadalajara Challenger Open Castilla y Leon - Segovia Turin Challenger Blumenau Challenger Samarkand Challenger Cremona Challenger IPP Open - Helsinki Penza Challenger Tunis Challenger Samarkand Challenger Ilkley Challenger Shanghai Challenger Fergana Challenger Geneva Challenger Andria Challenger Indore Challenger Noumea Challenger Dallas Challenger Chennai Challenger Aptos Challenger Bucaramanga Challenger Seville Challenger Istanbul Challenger Izmir Challenger Rennes Challenger Bangalore Challenger Pune Challenger Kenitra Challenger Guadalajara Challenger San Luis Potosi Challenger Leon Challenger Le Gosier Challenger Manchester Challenger Ilkley Challenger San Benedetto Challenger Recanati Challenger Segovia Challenger Istanbul Challenger Izmir Challenger Ortisei Challenger Bergamo Challenger Leon Challenger Surbiton Challenger Jersey Challenger Recanati Challenger Gatineau Challenger Segovia Challenger Aptos Challenger Istanbul Challenger Suzhou Challenger Pune Challenger Bangalore Challenger Cherbourg Challenger Indian Wells Challenger Zhuhai Challenger Shenzhen Challenger Qujing Challenger Mexico City Challenger Guadalajara Challenger Leon Challenger Puerto Vallarta Challenger Recanati Challenger Segovia Challenger Portoroz Challenger Kaohsiung Challenger Leon Challenger Glasgow Challenger Sibiu Challenger St. Brieuc Challenger Aguascalientes Challenger Morelos Challenger Rabat Challenger Izmir Challenger Eckental Challenger Fairfield Challenger Little Rock Challenger Orlando Challenger Calgary Challenger Seoul Challenger Buenos Aires 3 Challenger Marbella Challenger Bogota Challenger Pozoblanco Challenger Mallorca Challenger Cassis Challenger Alicante Challenger Sao Paulo Challenger Drummondville Challenger Blois Challenger Portoroz Challenger Istanbul Challenger Pozoblanco Challenger Istanbul Challenger Great Britain F8 Izmir Challenger Nottingham-2 Challenger Madrid Challenger Ostrava Challenger Karshi Challenger Maui Challenger Rome Challenger San Luis Potosi Challenger Binghamton Challenger Charlottesville Challenger Winnetka Challenger Mouilleron-Le-Captif Challenger Chitre Challenger Segovia Challenger Todi Challenger Istanbul Challenger Izmir Challenger Seville Challenger Izmir Challenger Noumea Challenger Knoxville Challenger Champaign Challenger Morelos Challenger Manchester Challenger Pozoblanco Challenger Segovia Challenger Mons Challenger Ho Chi Minh City Challenger Timisoara Challenger Lexington Challenger Tiburon Challenger Fairfield Challenger Noumea Challenger Puebla Challenger Mestre Challenger Furth Challenger St. Remy Challenger Surbiton Challenger Tashkent Challenger Geneva Challenger Lexington Challenger Portoroz Challenger San Luis Potosi Challenger Noumea Challenger Casablanca Challenger Brest Challenger Cherbourg Challenger Pune Challenger Noumea Challenger Sarajevo Challenger Guadalajara Challenger Panama City Challenger Leon Challenger Aix En Provence Challenger Samarkand Challenger Aix En Provence Challenger Bordeaux Challenger Karshi Challenger Sarasota Challenger San Luis Potosi Challenger Ningboo Challenger Santos Challenger Canberra Challenger Marbella Challenger Tunis Challenger Ismaning Challenger Caltanissetta Challenger Kosice Challenger Surbiton Challenger Recanati Challenger Aptos Challenger Orleans Challenger Cassis Challenger Tashkent Challenger Pozoblanco Challenger Rennes Challenger Kazan Challenger Hua Hin Challenger Charlottesville Challenger Champaign Challenger Las Vegas Challenger Kolkata Challenger Guadalajara Challenger Andria Challenger Playford Challenger Tunis Challenger Quimper Challenger Bordeaux Challenger Lille Challenger Caltanissetta Challenger Prague Challenger Recanati Challenger Tashkent Challenger Puerto Vallarta Challenger Vicenza Challenger Shymkent Challenger Ilkley Challenger Andria Challenger Istanbul Challenger Cherbourg Challenger Recanati Challenger Monterrey Challenger Cherbourg Challenger Vancouver Challenger Mallorca Challenger San Luis Potosi Challenger Seville Challenger Orleans Challenger Nur-Sultan Challenger Ningboo Challenger Hamburg Challenger Shenzhen Challenger Knoxville Challenger Houston Challenger Bangkok Challenger Bangkok Challenger Bengalaru Challenger Cleveland Challenger Morelos Challenger Monterrey Challenger Prague Challenger Split Challenger Barcelona Challenger Alicante Challenger Lisbon Challenger Rome Challenger Parma Challenger Portoroz Challenger Potchefstroom 1 Challenger Potchefstroom 2 Challenger Lugano Challenger Belgrade Challenger Knoxville Challenger Salinas Challenger Izmir Challenger Ostrava Challenger Salinas 2 Challenger Milan Challenger Braunschweig Challenger Morelos Challenger Prague 2 Challenger Luedenscheid Challenger Banja Luka Challenger Quito Challenger Lima Challenger Bogota Challenger Las Vegas Challenger Ilkley Challenger Bengalaru 1 Challenger Iasi Challenger Forli 4 Challenger Roseto Degli Abruzzi 2 Challenger Biel Challenger Marbella Challenger Tunis Challenger Corrientes Challenger Cali Challenger Segovia Challenger Marbella Challenger Tunis Open - Tunis Prague 3 Challenger Toulouse Challenger Rabat Challenger Brest Challenger Almaty Challenger Mouilleron-Le-Captif Challenger Challenger Ford de Cherbourg - Cherbourg Winnetka Challenger Ciudad de Pozoblanco Open Diputacion - Cordoba Calgary Challenger Samsung Securities Cup - Seoul Saransk Challenger Ciudad de Telde - Telde Nottingham Challenger ATP Guzzini Challenger - Recanati Concurso Internacional de Vigo - Vigo Morocco Tennis Tour - Marrakech Schickedanz Open 2007 - Furth Oberstaufen Cup - Oberstaufen Open Costa Daurada - Tarragona III Challenger Isla de Gran Canaria Ciudad de Telde - Telde Open D'Orleans - Orleans Music City Challenger - Nashville Caversham International Tennis Tournament - Jersey Tunis Challenger Pozoblanco Challenger Marbella Challenger Sacramento Challenger Genova Challenger Kazan Challenger Tanger Challenger Marrakech Challenger Monza Challenger Johannesburg Challenger Barletta Challenger San Benedetto Challenger Banja Luka Challenger Ljubljana Challenger Qatar Open - Doha Seoul Challenger Segovia Challenger Bergamo Challenger Madrid Challenger Bratislava Challenger Heilbronn Challenger Dutch Open Tennis - Amersfoort Istanbul Challenger Orleans Challenger Loughborough Challenger Quimper Challenger Rimouski Challenger Guadalajara Challenger St. Remy Challenger Guimaraes Challenger Open de Tenis Comunidad Valenciana - Valencia Mercedes Cup - Stuttgart Qatar Exxon Mobil Open - Doha Open 13 - Marseille Grand Prix Hassan II - Casablanca Open Sabadell Atlantico - Barcelona Grand Prix Hassan II - Casablanca Portoroz Challenger Estoril Open - Estoril Qatar ExxonMobil Open - Doha Black Forest Open - Freudenstadt Open Sabadell Atlantico - Barcelona UNICEF Open - 's Hertogenbosch Studena Croatia Open - Umag Winston-Salem Open - Winston-Salem Kremlin Cup - Moscow Open Sud de France - Montpellier Dubai Duty Free Tennis Championships - Dubai BB&T Atlanta Open - Atlanta Citi Open - Washington Winston-Salem Open - Winston-Salem Qatar ExxonMobil Open - Doha Garanti Koza Sofia Open - Sofia Delray Beach Open - Delray Beach Abierto Mexicano Telcel - Acapulco Dubai Duty Free Tennis Championships - Dubai Barcelona Open BancSabadell - Barcelona Guzzini Challenger - Recanati BMW Open - Munich Gerry Weber Open - Halle Citi Open - Washington Winston-Salem Open - Winston-Salem Moselle Open - Metz Shenzhen Open - Shenzhen Intersport Heilbronn Open - Heilbronn Ecuador Open - Quito Millennium Estoril Open - Estoril Citi Open - Washington Grand Prix Hassan II - Marrakech Barcelona Open BancSabadell - Barcelona TEB BNP Paribas Istanbul Open - Istanbul Ricoh Open - 's-Hertogenbosch BB&T Atlanta Open - Atlanta Swiss Open - Gstaad Citi Open - Washington St. Petersburg Open - St. Petersburg Chengdu Open - Chengdu China Open - Beijing Kremlin Cup - Moscow Swiss Indoors Basel - Basel Tata Open Maharashtra - Pune Sydney International - Sydney Open Sud de France - Montpellier Cordoba Open - Cordoba New York Open - New York Delray Beach Open - Delray Beach Abierto Mexicano Telcel - Acapulco Grand Prix Hassan II - Marrakech Barcelona Open Banc Sabadell - Barcelona Millennium Estoril Open - Estoril Antalya Open - Antalya China Open - Beijing Qatar ExxonMobil Open - Doha Ho Chi Minh City Challenger Singapore Tennis Open - Singapore Belgrade 2 - Belgrade Dubai Duty Free Tennis Championships - Dubai Grand Prix Hassan II - Marrakech Generali Open - Kitzbuhel Karshi Challenger Ilkley Challenger Open Diputacion Ciudad de Pozoblanco - Cordoba Ciudad de Pozoblanco Open Diputacion - Cordoba 1° Torneo Challenger Series 12° Trofeo Paolo Corazzi - Cremona Izmir Cup - Izmir Stockholm Open - Stockholm Black Forest Open - Freudenstadt Qatar ExxonMobil Open - Doha Grand Prix de Tennis de Lyon - Lyon Open 13 - Marseille The LTA Men's Challenger - Southampton Cassis Challenger Mouilleron-Le-Captif Challenger Liuzhou Challenger Bratislava Challenger Verona Challenger Prague II Challenger Grand Prix Hassan II - Casablanca Istanbul Challenger Biella 1 Challenger Biella 2 Challenger Gran Canaria 1 Challenger Casablanca Challenger Gran Canaria 2 Challenger San Sebastian Challenger Biella 4 Challenger Oberstaufen Challenger Almaty 1 Challenger Almaty 2 Challenger Forli Challenger Genova Open Challenger - Genova Nur-Sultan 3 Challenger Nur-Sultan 4 Challenger Segovia Challenger Liberec Challenger San Marino Challenger Warsaw Challenger Akbank Private Banking TED Open - Istanbul Ambato Challenger Alicante Challenger Knoxville Challenger Dubai Duty Free Tennis Championships - Dubai Champaign Challenger Puerto Vallarta Challenger Grand Prix Hassan II - Casablanca Seville Challenger Forli 2 Challenger Ciudad de Pozoblanco 'Open Diputacion' - Cordoba Maharashtra Open - Pune Open 13 - Marseille Dubai Duty Free Tennis Championships - Dubai New Delhi Challenger Charleston Challenger Ambato Challenger Citi Open - Washington Mercedes Cup - Stuttgart Tunis Challenger Heilbronn Challenger Qatar ExxonMobil Open - Doha Meknes Challenger ASB Classic - Auckland Hall of Fame Tennis Championships - Newport Citi Open - Washington Malaysian Open - Kuala Lumpur China Open - Beijing Kremlin Cup - Moscow Valencia Open - Valencia Barcelona Open BancSabadell - Barcelona Qatar ExxonMobil Open - Doha Ecuador Open - Quito Moselle Open - Metz U.S. National Indoor Tennis Championships - Memphis Delray Beach Open - Delray Beach Dubai Duty Free Tennis Championships - Dubai Mercedes Cup - Stuttgart Grand Prix Hassan II - Casablanca BRD Nastase Tiriac Trophy - Bucharest Tata Open Maharashtra - Pune Topshelf Open - 's-Hertogenbosch Aegon Nottingham Open - Nottingham Hall of Fame Tennis Championships - Newport Open Sud de France - Montpellier Claro Open Colombia - Bogota Dubai Duty Free Tennis Championships - Dubai Kremlin Cup - Moscow Abierto Mexicano Telcel - Acapulco Memphis Open - Memphis Aegon Nottingham Open - Nottingham If Stockholm Open - Stockholm Open Sud de France - Montpellier Rio Open - Rio de Janeiro Open 13 - Marseille Dubai Duty Free Tennis Championships - Dubai Grand Prix Hassan II - Marrakech TEB BNP Paribas Istanbul Open - Istanbul Hall of Fame Tennis Championships - Newport BB&T Atlanta Open - Atlanta Winston-Salem Open - Winston-Salem Shenzhen Open - Shenzhen China Open - Beijing Rakuten Japan Open - Tokyo If Stockholm Open - Stockholm Chengdu Open - Chengdu Qatar ExxonMobil Open - Doha Ecuador Open - Quito Garanti Koza Sofia Open - Sofia New York Open - New York Delray Beach Open - Delray Beach Open 13 Provence - Marseille Dubai Duty Free Tennis Championships - Dubai Gerry Weber Open - Halle Winston-Salem Open - Winston-Salem Brasil Open - Sao Paulo Mercedes Cup - Stuttgart Troisdorf Challenger Swiss Open - Gstaad Citi Open - Washington Qatar ExxonMobil Open - Doha Meknes Challenger Dubai Duty Free Tennis Championships - Dubai Sarasota Challenger Grand Prix de Tennis de Lyon - Lyon Estoril Open - Estoril AEGON Championships - London Open Sud de France - Montpellier Mutua Madrilena Masters Madrid - Madrid Open de Nice Cote d'Azur - Nice Sony Open Tennis - Miami San Luis Potosi Challenger Rogers Cup - Toronto Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Miami Open - Miami Mutua Madrid Open - Madrid Western & Southern Open - Cincinnati BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai BNP Paribas Open - Indian Wells Western & Southern Open - Cincinnati BNP Paribas Open - Indian Wells Miami Open - Miami BNP Paribas Open - Indian Wells Qatar ExxonMobil Open - Doha Pozoblanco Challenger Argentina Open - Buenos Aires Dubai Duty Free Tennis Championships - Dubai Sardegna Open - Cagliari Suisse Open - Gstaad Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris U.S. Open - New York 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 Internazionali BNL d'Italia - Rome U.S. Open - New York Australian Open - Melbourne Internazionali BNL d'Italia - Rome French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London BNP Paribas Masters - Paris U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne Davis Cup, Group 2, PO, LAT-TUN 3-2 Davis Cup, Group 2, 2R, POR-TUN 4-1 Davis Cup, Group 2, PO, SLO-TUN 4-1 Davis Cup, Group II, 1R, GBR-TUN 4-1 Davis Cup, Group II, PO, IRL-TUN 3-2 Davis Cup, Group II, PO, TUN-BLR 2-3 Davis Cup, Group II, 1R, BIH-TUN 3-1 Davis Cup, Group II, PO, TUN-BUL 3-2 Davis Cup, Group II, 1R, TUN-SWE 2-3 Davis Cup, Group II, PO, CYP-TUN 1-4 Davis Cup, Group II, 1R, TUN-FIN 2-3 Davis Cup, World Group II, PO, GUA-TUN 1-3 Davis Cup, Group I, PO, TUN-BIH 1-3 Monte-Carlo Rolex Masters - Monte-Carlo BNP Paribas Open - Indian Wells Rogers Cup - Toronto Coupe Rogers - Montreal U.S. Open - New York Davis Cup, Group II, PO, EST-TUN 3-2 All Lower level tournaments Olympics - London Olympics - Rio de Janeiro