Career 2025 2024 2023 2022 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012 2011 2010
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 U.S. Open - New York Davis Cup, Group I, 1R, BIH-GER 0-4 Astana Open - Astana M25 Santa Margherita di Pula Rolex Paris Masters - Paris Australian Open - Melbourne ASB Classic - Auckland M25 Santa Margherita di Pula Movistar Chile Open - Santiago Szekesfehervar Challenger Grand Prix Hassan II - Marrakech BMW Open - Munich Split Challenger Mutua Madrid Open - Madrid Vicenza Challenger Gonet Geneva Open - Geneva Internazionali BNL d'Italia - Rome Zagreb Challenger Perugia Challenger Mallorca Championships - Mallorca Brasov Challenger EFG Swiss Open - Gstaad San Marino Challenger Cordenons Challenger Verona Challenger Seville Challenger U.S. Open - New York Hangzhou Open - Hangzhou China Open - Beijing Villena Challenger European Open - Antwerp Rolex Paris Masters - Paris BNP Paribas Open - Indian Wells Abierto Mexicano Telcel - Acapulco ASB Classic - Auckland Australian Open - Melbourne M15 Dubrovnik M15 Porec Miami Open - Miami Internazionali BNL d'Italia - Rome Grand Prix Hassan II - Marrakech Skopje Challenger Wimbledon - London National Bank Open - Toronto Plava Laguna Croatia Open - Umag Seville Challenger Bad Waltersdorf Challenger Braga Challenger Olbia Challenger M25 Santa Margherita di Pula Turkey F44 Spain F31 Spain F32 Spain F6 Spain F7 Spain F9 Spain F10 Spain F11 Spain F12 Spain F13 Spain F15 Morocco F4 Italy F18 Spain F28 Spain F29 Spain F31 Spain F38 Spain F39 Spain F41 Spain F1 Spain F2 Spain F4 Spain F5 Spain F6 Croatia F5 Italy F3 Italy F5 Spain F10 Spain F11 Spain F12 Poland F3 Italy F13 Czech Republic F5 Spain F22 Croatia F7 Poland F5 Spain F26 Spain F27 Serbia F13 Spain F30 Spain F32 Morocco F6 Morocco F7 Morocco F9 Turkey F3 Spain F2 Croatia F2 Spain F3 Spain F4 Spain F6 Spain F7 Spain F8 Turkey F14 Turkey F15 Bosnia & Herzegovina F1 Spain F19 Egypt F15 Serbia F7 Italy F22 Croatia F8 Croatia F9 Serbia F13 Spain F32 Serbia F14 Spain F33 Spain F34 Croatia F10 Croatia F11 Spain F36 Spain F38 Egypt F3 Turkey F1 Spain F1 Turkey F2 Turkey F3 Spain F3 Spain F4 Egypt F9 Egypt F10 Italy F6 Egypt F11 Italy F7 Bosnia & Herzegovina F1 Bosnia & Herzegovina F2 Bosnia & Herzegovina F3 Bosnia & Herzegovina F3 Bosnia & Herzegovina F4 Bulgaria F2 Bulgaria F3 Bulgaria F4 Bulgaria F6 Serbia F7 Austria F6 Austria F7 Austria F8 Serbia F14 Spain F29 Spain F30 Czech Republic F4 Turkey F45 Turkey F46 Egypt F1 Egypt F2 Egypt F3 Turkey F7 Egypt F12 Egypt F13 Turkey F16 Turkey F17 Bosnia & Herzegovina F1 Bosnia & Herzegovina F2 Bosnia & Herzegovina F3 Bosnia & Herzegovina F4 Bosnia & Herzegovina F5 Serbia F3 Serbia F4 Serbia F6 Serbia F7 Serbia F8 Serbia F9 Serbia F10 Croatia F14 Croatia F15 Croatia F16 Greece F7 Greece F8 Greece F9 Tunisia F32 Tunisia F33 Turkey F2 Turkey F8 Turkey F10 Turkey F11 Turkey F14 Turkey F15 Bosnia & Herzegovina F1 Bosnia & Herzegovina F2 Bosnia & Herzegovina F3 Macedonia F1 Serbia F1 Serbia F2 Serbia F4 Serbia F5 Turkey F3 Serbia F6 Croatia F9 Croatia F10 Croatia F11 Turkey F47 Tunisia F2 (Hammamet) Tunisia F6 (Hammamet) Turkey F9 (Antalya) Turkey F11 (Antalya) Tunisia F14 (Hammamet) Tunisia F15 (Hammamet) Turkey F18 (Antalya) Czech Republic F1 (Prague) Bosnia & Herzegovina F2 (Brcko) Bosnia & Herzegovina F3 (Kiseljak) Bosnia & Herzegovina F4 Croatia F17 Georgia F1 (Telavi) Georgia F2 (Telavi) Georgia F3 (Telavi) Serbia F1 (Novi Sad) Serbia F2 (Novi Sad) Serbia F3 (Subotica) Turkey F36 (Antalya) Turkey F37 (Antalya) Turkey F38 (Antalya) Turkey F39 (Antalya) Qatar F4 (Doha) Qatar F5 (Doha) Qatar F6 (Doha) Turkey F7 Egypt F14 Egypt F16 Turkey F15 (Antalya) Turkey F16 (Antalya) Bosnia & Herzegovina F1 (Doboj) Bosnia & Herzegovina F2 (Brcko) Bosnia & Herzegovina F3 (Kiseljak) Germany F4 (Kaltenkirchen) Austria F2 (Kramsach) Austria F3 (Wels) Italy F20 (Pontedera) Austria F5 (Vogau) Italy F32 (Santa Margherita Di Pula) Italy F33 (Santa Margherita Di Pula) Italy F34 (Santa Margherita Di Pula) Turkey F36 (Antalya) Turkey F39 (Antalya) Turkey F40 (Antalya) M15 Antalya M15 Opatija M25 Santa Margherita Di Pula M25 Santa Margherita Di Pula M25 Santa Margherita Di Pula M25 Prijedor M25 Doboj M25 Kiseljak M15 Belgrade M25+H Kassel M15 Zlatibor M25 Santa Margherita Di Pula M25 Trento M15 Antalya M15 Antalya M15 Prijedor Spain F14 Turkey F10 (Antalya) M15 Porec M25 Antalya M25 Antalya M25 Antalya M15 Antalya M25 Antalya M15 Piombino M25 Santa Margherita Di Pula M25 Monastir M15 Antalya M15 Porec M15 Antalya M15 Bol France F13 Marbella Challenger Scheveningen Challenger Poznan Challenger Liberec Challenger San Benedetto Challenger Prague Challenger Cordenons Challenger Manerbio Challenger Como Challenger Kenitra Challenger M15 Antalya M25 Santa Margherita Di Pula Mohammedia Challenger Guayaquil Challenger Guadalajara Challenger Czech Republic F5 M25 Antalya Milan Challenger Bastad Challenger Cortina Challenger Mohammedia Challenger Ortisei Challenger Noumea Challenger Cordenons Challenger Como Challenger Lyon Challenger L'Aquila Challenger Braunschweig Challenger Bordeaux Challenger Bordeaux Challenger Szczecin Challenger Biella Challenger Florence Challenger Murcia Challenger Lisbon Challenger Parma Challenger Genova Challenger Szczecin Challenger Barcelona Challenger Brest Challenger Helsinki Challenger Bergamo Challenger Marbella Challenger Campinas Challenger Belgrade Challenger Aix En Provence Challenger Forli Challenger Salzburg-Anif Challenger Perugia Challenger Iasi Challenger Trieste Challenger Cordenons Challenger Meerbusch Challenger Verona Challenger Seville Challenger Ambato Challenger Murcia Challenger Losinj Challenger Bergamo Challenger Ortisei Challenger Barcelona Challenger Antalya 3 Challenger Forli 1 Challenger Gran Canaria Challenger Brest Challenger Zadar Challenger Marbella Challenger Sanremo Challenger Split Challenger Mauthausen Challenger Tunis Challenger Forli 6 Challenger Perugia Challenger Oeiras 3 Challenger Salzburg Challenger Amersfoort Challenger Trieste Challenger San Benedetto Challenger Santo Domingo Challenger Banja Luka Challenger Como Challenger Seville Challenger Szczecin Challenger Sibiu Challenger Orleans Challenger Parma Challenger Ortisei Challenger Valencia Challenger Antalya Challenger Phoenix Challenger Zadar Challenger Canberra Challenger Rome Challenger Split Challenger M25 Santa Margherita di Pula Prague 2 Challenger Skopje Challenger Vicenza Challenger Perugia Challenger Phoenix Challenger M25 Antalya Alicante Challenger San Marino Challenger M15 Antalya Como Challenger Seville Challenger Sibiu Challenger Shenzhen Challenger Lisbon Challenger Ismaning Challenger Canberra Challenger M25 Zlatibor Rome Challenger Manama Challenger Phoenix Challenger Zadar Challenger Barletta Challenger Rome Challenger Sophia Antipolis Challenger Cortina Challenger Noumea Challenger Bendigo Challenger Santiago Challenger Braunschweig Challenger Aix En Provence Challenger Sarajevo Challenger Argentina Open - Buenos Aires Guayaquil Challenger Seville Challenger Madrid Challenger Sarajevo Challenger Pozoblanco Challenger Banja Luka Challenger Sarajevo Challenger Tanger Challenger Orbetello Challenger Segovia Challenger Luedenscheid Challenger Brasov Challenger Banja Luka Challenger Seville Challenger Casablanca Challenger Banja Luka Challenger Zadar Challenger Furth Challenger Prague Challenger Cordenons Challenger Marburg Challenger Todi Challenger Perugia Challenger San Benedetto Challenger Prague Challenger Cordenons Challenger Alphen Challenger Seville Challenger Forli 3 Challenger Meknes Challenger Kenitra Challenger Zug Challenger Guayaquil Challenger Lima Challenger Oberstaufen Challenger Casablanca Challenger Bucaramanga Challenger Santo Domingo Challenger Guangzhou Challenger Napoli Challenger Mersin Challenger Mestre Challenger Caltanissetta Challenger Perugia Challenger Vicenza Challenger Padova Challenger Liberec Challenger Meknes Challenger Rome Challenger Casablanca Challenger Buenos Aires Challenger Mendoza Challenger Buenos Aires Challenger Rio De Janeiro Challenger Santo Domingo Challenger Santiago Challenger Napoli Challenger Barletta Challenger Bordeaux Challenger Furth Challenger Lyon Challenger Perugia Challenger Fano Challenger Meerbusch Challenger Como Challenger Genova Challenger Meknes Challenger Kenitra Challenger Casablanca Challenger Brescia Challenger Shenzhen Challenger Ostrava Challenger Bordeaux Challenger Vicenza Challenger Prostejov Challenger Turin Challenger Lisbon Challenger Poprad Tatry Challenger Bastad Challenger San Benedetto Challenger Biella Challenger Manerbio Challenger Seville Challenger Banja Luka Challenger Sibiu Challenger Rome Challenger Cali Challenger Lima Challenger Guayaquil Challenger Mutua Madrid Open - Madrid Montevideo Challenger Rio De Janeiro Challenger Marbella Challenger Alicante Challenger Prostejov Challenger Naples Challenger Bordeaux Challenger Poznan Challenger Todi Challenger Milan Challenger Madrid Challenger Lima Challenger Montechiarugolo - Parma Challenger St. Petersburg 1 Challenger Santiago Challenger Zadar Challenger Marbella Challenger Split 1 Challenger Maia Challenger Helsinki Challenger Szczecin Challenger Salzburg Challenger Banja Luka Challenger Manama Challenger Antalya 4 Challenger Bad Waltersdorf Challenger Forli 2 Challenger Vicenza Challenger Braga Challenger Malaga Challenger San Marino Challenger Barletta Challenger Zagreb Challenger Iasi Challenger Shanghai Challenger Mauthausen Challenger Zagreb Challenger Braunschweig Challenger San Marino Challenger Sofia 1 Challenger Lisbon Challenger Valencia Challenger Mohammedia Challenger Barcelona Open BancSabadell - Barcelona Ismaning Challenger Vilnus Challenger Grand Prix Hassan II - Casablanca Barcelona Open BancSabadell - Barcelona Portugal Open - Oeiras Ecuador Open - Quito Argentina Open - Buenos Aires Barcelona Open BancSabadell - Barcelona Millennium Estoril Open - Estoril Ecuador Open - Quito Brasil Open - Sao Paulo TEB BNP Paribas Istanbul Open - Istanbul SkiStar Swedish Open - Bastad Ecuador Open - Quito Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Brasil Open - Sao Paulo Grand Prix Hassan II - Marrakech Barcelona Open BancSabadell - Barcelona Ecuador Open - Quito Rio Open - Rio de Janeiro Barcelona Open BancSabadell - Barcelona Millennium Estoril Open - Estoril Open Parc - Lyon Antalya Cup - Antalya Swiss Open - Gstaad Winston-Salem Open - Winston-Salem Tata Open Maharashtra - Pune Cordoba Open - Cordoba Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Brasil Open - Sao Paulo Barcelona Open Banc Sabadell - Barcelona Fever-Tree Championships - London Turkish Airlines Open Antalya - Antalya SkiStar Swedish Open - Bastad Swiss Open - Gstaad Winston-Salem Open - Winston-Salem St. Petersburg Open - St. Petersburg Kremlin Cup - Moscow Santiago Open - Santiago Forte Village Sardegna Open - Sardinia Great Ocean Road Open - Melbourne Cordoba Open - Cordoba Argentina Open - Buenos Aires Chile Dove Men+Care Open - Santiago Serbia Open - Belgrade Millennium Estoril Open - Estoril Mallorca Championships - Mallorca Nordea Open - Bastad Plava Laguna Croatia Open - Umag Erste Bank Open - Vienna Anytech365 Andalucia Open - Marbella Belgrade 2 - Belgrade Adelaide International 1 - Adelaide Adelaide International 2 - Adelaide Cordoba Open - Cordoba Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Qatar ExxonMobil Open - Doha Grand Prix Hassan II - Marrakech Barcelona Open Banc Sabadell - Barcelona Swiss Open - Gstaad Plava Laguna Croatia Open - Umag Firenze Open - Florence Tennis Napoli Open - Naples Tata Open Maharashtra - Pune Cordoba Open - Cordoba Rio Open - Rio de Janeiro Chile Dove Men+Care Open - Santiago Grand Prix Hassan II - Marrakech BMW Open - Munich Gonet Geneva Open - Geneva Generali Open - Kitzbuhel European Open - Antwerp Sofia Open - Sofia Cordoba Open - Cordoba Rio Open - Rio de Janeiro Barcelona Open Banc Sabadell - Barcelona Nordea Open - Bastad Generali Open - Kitzbuhel Citi Open - Washington Dallas Open - Dallas EFG Swiss Open - Gstaad Grand Prix Hassan II - Casablanca Open Parc - Lyon Mallorca Championships - Mallorca Barcelona Open BancSabadell - Barcelona Generali Open - Kitzbuhel Open Sabadell Atlantico - Barcelona Maharashtra Open - Pune Argentina Open - Buenos Aires Brasil Open - Sao Paulo SkiStar Swedish Open - Bastad Generali Open - Kitzbuhel Generali Open - Kitzbuhel Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Millennium Estoril Open - Estoril Banja Luka Open - Banja Luka EFG Swiss Open - Gstaad Plava Laguna Croatia Open - Umag Grand Prix Hassan II - Marrakech Argentina Open - Buenos Aires Australian Open - Melbourne Australian Open - Melbourne Maspalomas Challenger Moselle Open - Metz Hong Kong Tennis Open - Hong Kong Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Barcelona Open Banc Sabadell - Barcelona Sofia Open - Sofia Modena Challenger European Open - Antwerp Mutua Madrid Open - Madrid Mutua Madrid Open - Madrid Miami Open - Miami Mutua Madrid Open - Madrid Monte-Carlo Rolex Masters - Monte-Carlo Miami Open - Miami Mutua Madrid Open - Madrid BNP Paribas Open - Indian Wells Miami Open - Miami Mutua Madrid Open - Madrid BNP Paribas Masters - Paris Internazionali BNL d'Italia - Rome Rolex Paris Masters - Paris BNP Paribas Open - Indian Wells Terra Wortmann Open - Halle Internazionali BNL d'Italia - Rome Rolex Paris Masters - Paris Miami Open - Miami Mutua Madrid Open - Madrid BNP Paribas Open - Indian Wells Miami Open - Miami Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Shanghai Rolex Masters - Shanghai BNP Paribas Open - Indian Wells National Bank Open - Montreal Shanghai Rolex Masters - Shanghai Cincinnati Open - Cincinnati Miami Open - Miami Mutua Madrid Open - Madrid Australian Open - Melbourne French Open - Paris U.S. Open - New York French Open - Paris Wimbledon - London French Open - Paris Australian Open - Melbourne Wimbledon - London Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York French Open - Paris U.S. Open - New York U.S. Open - New York French Open - Paris U.S. Open - New York Australian Open - Melbourne Monte-Carlo Rolex Masters - Monte-Carlo U.S. Open - New York Australian Open - Melbourne French Open - Paris French Open - Paris BNP Paribas Open - Indian Wells Wimbledon - London U.S. Open - New York French Open - Paris Davis Cup, Group II, 1R, BIH-LUX 4-1 Davis Cup, Group II, 3R, BIH-LTU 2-3 Davis Cup, Group II, 1R, ZIM-BIH 1-4 Davis Cup, Group II, 3R, LTU-BIH 0-5 Davis Cup, World Group, QR, AUS-BIH 4-0 Davis Cup, Group I, 1R, PER-BIH 3-2 Davis Cup, Group I, 1R, BIH-MEX 3-1 Davis Cup, World Group, Q, SUI-ESP 1-3 Davis Cup, Group I, 1R, ECU-BIH 3-2 Australian Open - Melbourne Wimbledon - London Wimbledon - London French Open - Paris Wimbledon - London Australian Open (juniors) French Open (juniors) Wimbledon (juniors) All Lower level tournaments French Open - Paris Davis Cup, Group I, PO, BUL-BIH 1-3 Karlsruhe Challenger Verona Challenger Olympics - Tokyo