Career 2025 2024 2023 2022 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012 2011
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 Milan Challenger U.S. Open - New York Davis Cup, Group I, 1R, BIH-GER 0-4 M25 Santa Margherita di Pula Australian Open - Melbourne BNP Paribas Open - Indian Wells Madrid Challenger Bordeaux Challenger French Open - Paris Wimbledon - London Shanghai Challenger M25 Santa Margherita di Pula Sibiu Challenger M15 Antalya M15 Porec Sofia 1 Challenger Mauthausen Challenger Zadar Challenger Morelia Challenger Skopje Challenger U.S. Open - New York Istanbul Challenger St. Tropez Challenger Orleans Challenger Croatia F7 Serbia F13 Croatia F2 Turkey F14 Turkey F15 Morocco F1 Bosnia & Herzegovina F1 Morocco F2 Bosnia & Herzegovina F3 Bosnia & Herzegovina F4 Egypt F14 Egypt F15 France F12 Serbia F7 Croatia F8 Croatia F9 Serbia F13 Serbia F14 France F18 France F19 Croatia F10 Croatia F11 France F21 France F2 Turkey F1 Turkey F2 Turkey F3 France F4 France F5 Egypt F9 Egypt F10 France F7 Egypt F11 Bosnia & Herzegovina F1 Turkey F15 Bosnia & Herzegovina F2 Turkey F16 Bosnia & Herzegovina F4 Bulgaria F2 Bulgaria F3 Bulgaria F4 France F14 Bulgaria F6 Turkey F25 Serbia F7 Austria F6 Spain F21 Austria F7 Spain F22 Austria F8 Turkey F31 Turkey F32 France F20 Serbia F14 Czech Republic F4 Tunisia F9 Tunisia F10 Tunisia F11 Turkey F44 Turkey F45 Turkey F46 Egypt F1 Tunisia F1 Egypt F2 Tunisia F2 Egypt F3 France F3 Tunisia F5 Tunisia F6 Turkey F7 France F4 Switzerland F1 Egypt F12 Spain F7 Egypt F13 Greece F3 Greece F4 Tunisia F15 Turkey F16 Israel F4 Turkey F17 Israel F5 Bosnia & Herzegovina F1 Turkey F19 Bosnia & Herzegovina F2 Turkey F20 Bosnia & Herzegovina F3 Bosnia & Herzegovina F4 Bosnia & Herzegovina F5 India F8 India F9 Serbia F3 India F10 Serbia F4 France F14 Serbia F6 Slovakia F2 Turkey F3 Serbia F8 Serbia F9 Serbia F10 Switzerland F4 Croatia F14 Croatia F15 Croatia F16 Croatia F17 Greece F7 Greece F8 Greece F9 Kuwait F1 Kuwait F2 Tunisia F32 Egypt F16 Germany F1 Turkey F2 France F3 Great Britain F3 Turkey F7 Turkey F8 Italy F1 Italy F2 Turkey F10 Turkey F11 Turkey F14 Turkey F15 Bosnia & Herzegovina F1 Bosnia & Herzegovina F2 Bosnia & Herzegovina F3 Tunisia F21 Macedonia F1 Germany F5 Turkey F27 Portugal F8 Portugal F9 Serbia F1 Serbia F2 Serbia F4 Serbia F5 Switzerland F3 Bosnia & Herzegovina F3 Italy F26 Serbia F6 France F18 France F19 France F20 France F21 Croatia F9 Croatia F10 Croatia F11 Norway F2 Norway F3 Turkey F47 Tunisia F2 (Hammamet) France F3 (Veigy-Foncenex) Great Britain F1 (Glasgow) Great Britain F2 (Tipton) Tunisia F6 (Hammamet) Italy F2 (Trento) Czech Republic F5 Italy F3 (Basiglio) Turkey F9 (Antalya) Turkey F10 (Antalya) Turkey F11 (Antalya) Tunisia F14 (Hammamet) France F8 (La Grande Motte) Tunisia F15 (Hammamet) Turkey F18 (Antalya) Bosnia & Herzegovina F2 (Brcko) Bosnia & Herzegovina F3 (Kiseljak) Israel F11 (Herzlia) Israel F12 (Tel Aviv) Georgia F2 (Telavi) Georgia F3 (Telavi) Serbia F1 (Novi Sad) Belarus F2 (Minsk) Serbia F2 (Novi Sad) Belarus F3 (Minsk) Serbia F3 (Subotica) Italy F27 (Piombino) France F19 (Mulhouse) France F20 (Plaisir) Turkey F36 (Antalya) Turkey F37 (Antalya) Turkey F38 (Antalya) Turkey F39 (Antalya) Malaysia F3 (Kuala Lumpur) Qatar F4 (Doha) Qatar F5 (Doha) Qatar F6 (Doha) France F3 (Veigy-Foncenex) Switzerland F2 (Bellevue) Italy F1 (Trento) Turkey F15 (Antalya) Turkey F16 (Antalya) Bosnia & Herzegovina F1 (Doboj) Bosnia & Herzegovina F2 (Brcko) Bosnia & Herzegovina F3 (Kiseljak) Italy F13 (Padova) Germany F4 (Kaltenkirchen) Spain F17 (Bakio) 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) M25 Barnstaple M25 Trento M15 Antalya M15 Poitiers M25 Santa Margherita Di Pula M25 Santa Margherita Di Pula M15 Cancun M15 Cancun M25 Prijedor M25 Doboj M25 Kiseljak M25 Gyula M15 Tabarka M15 Setubal Israel F10 (Kiryat Shmona) M25 Bakio M15 Belgrade M25+H Ajaccio M25+H Kassel M25 Porto M15 Zlatibor M25 Santa Margherita Di Pula France F2 M25 Santa Margherita Di Pula M25 Santa Margherita Di Pula M25 Saint Dizier M25 Trento M15 Antalya M15 Antalya M15 Antalya Serbia F7 Portugal F10 (Torres Vedras) M15 Prijedor M25 Bakio M25 Antalya M25 Antalya M25 Antalya Czech Republic F1 (Prague) M25 Antalya Spain F15 Turkey F3 France F20 Ireland F2 (Dublin) France F21 (Forbach) Tunisia F33 Germany F15 M25 Monastir Turkey F36 (Antalya) Turkey F39 (Antalya) M25 Santa Margherita di Pula Turkey F40 (Antalya) M15 Dubrovnik M15 Veigy-Foncenex M15 Antalya M15 Toulouse M15 Porec M15 Opatija M25 Santa Margherita Di Pula M15 Cancun M15 Piombino M15 Antalya Georgia F1 (Telavi) M25 Antalya M15 Porec M15 Antalya Sarajevo Challenger M25 Santa Margherita di Pula M25 Zlatibor Banja Luka Challenger Astana Challenger Ortisei Challenger Pune Challenger Playford Challenger Canberra Challenger Drummondville Challenger Lille Challenger Nanchang Challenger Anning Challenger Milan Challenger Astana Challenger Cordenons Challenger Mallorca Challenger Orleans Challenger Milan Challenger Segovia Challenger Trieste Challenger Meerbusch Challenger Verona Challenger Bordeaux Challenger Prague 2 Challenger Salzburg Challenger Lisbon Challenger Bergamo Challenger St. Remy Challenger Taipei City Challenger Rome Challenger Zagreb Challenger Ilkley Challenger Brasov Challenger Granby Challenger Lexington Challenger Alicante Challenger Malaga Challenger Ismaning Challenger Rennes Challenger Orleans Challenger Canberra Challenger Noumea Challenger Roanne Challenger Guangzhou Challenger Nottingham 3 Challenger Pozoblanco Challenger Segovia Challenger Prague Challenger Vicenza Challenger Villena Challenger Perugia Challenger Olbia Challenger Sarajevo Challenger M25 Antalya Barcelona Challenger Las Vegas Challenger Verona Challenger Chicago Challenger San Marino Challenger Cordenons Challenger Parma Challenger Cary Challenger Nur-Sultan 4 Challenger Banja Luka Challenger Cordenons Challenger St. Tropez Challenger Cherbourg Challenger Zadar Challenger Villena Challenger Perugia Challenger Como Challenger Phoenix Challenger Zadar Challenger Winnipeg Challenger Lugano Challenger San Marino Challenger Pozoblanco Challenger Zug Challenger Nottingham 2 Challenger Porto Challenger Brest Challenger Perugia Challenger Valencia Challenger Segovia Challenger Banja Luka Challenger St. Tropez Challenger Manama Challenger Barletta Challenger Split Challenger Thionville Challenger Bordeaux Challenger Grodzisk Mazowiecki Challenger Banja Luka Challenger Verona Challenger St. Remy Challenger Open Parc - Lyon Antalya Open - Antalya Plava Laguna Croatia Open - Umag Belgrade 2 - Belgrade Qatar ExxonMobil Open - Doha Barcelona Open Banc Sabadell - Barcelona Iasi Challenger Open Sud de France - Montpellier Open 13 Provence - Marseille St. Remy Challenger Grand Prix Hassan II - Marrakech Barcelona Open Banc Sabadell - Barcelona Banja Luka Open - Banja Luka Bergamo Challenger St. Brieuc Challenger Moselle Open - Metz Bordeaux Challenger Sofia Open - Sofia Blois Challenger Lexington Challenger Istanbul Challenger Barcelona Open Banc Sabadell - Barcelona BMW Open - Munich Ho Chi Minh City Challenger EFG Swiss Open - Gstaad Glasgow Challenger Forli Challenger Iasi Challenger Nur-Sultan 3 Challenger St. Tropez Challenger Banja Luka Challenger Cassis Challenger Sanremo Challenger Barletta Challenger Split Challenger Troisdorf Challenger Pozoblanco Challenger Skopje Challenger San Marino Challenger Orleans Challenger Belgrade Open - Belgrade Karlsruhe Challenger Mouilleron-Le-Captif Challenger St. Tropez Challenger Ismaning Challenger Vilnus Challenger Brest Challenger Ortisei Challenger Las Franquesas del Valles Challenger Roanne Challenger San Marino Challenger Antalya Challenger Lugano Challenger Open 13 Provence - Marseille Braga Challenger Boss Open - Stuttgart Naples Challenger Lille Challenger Lyon Challenger Madrid Challenger Rome Challenger Sarajevo Challenger Split Challenger Turin Challenger Vicenza Challenger Surbiton Challenger Modena Challenger Lyon Challenger Budapest Challenger Nonthaburi 3 Challenger Maspalomas Challenger Lille Challenger Glasgow Challenger Cuernavaca Challenger Nottingham Challenger Gwangju Challenger Wuxi Challenger Zagreb Challenger Cherbourg Challenger Birmingham Challenger Blois Challenger Braunschweig Challenger Portoroz Challenger Ortisei Challenger Brescia Challenger Segovia Challenger Mouilleron-Le-Captif Challenger Bangalore Challenger Binghamton Challenger Cassis Challenger Florence Challenger Brest Challenger Charlottesville Challenger Mouilleron-Le-Captif Challenger Noumea Challenger Canberra Challenger Budapest Challenger St. Brieuc Challenger Puerto Vallarta Challenger Lyon Challenger Bratislava Challenger Segovia Challenger Mallorca Challenger Cassis Challenger Istanbul Challenger Nur-Sultan Challenger Ismaning Challenger Helsinki Challenger Bendigo Challenger Bangkok Challenger Cherbourg Challenger Bergamo Challenger Pau Challenger Potchefstroom Challenger Todi Challenger Prague II Challenger Cordenons Challenger Parma Challenger Iasi Challenger Split Challenger Lisbon Challenger Ismaning Challenger Hamburg Challenger Ortisei Challenger Maia Challenger Quimper Challenger Quimper 2 Challenger Potchefstroom 1 Challenger Nur-Sultan 1 Challenger Nur-Sultan 2 Challenger St. Petersburg 1 Challenger Biella 3 Challenger Lugano Challenger Zadar Challenger Split 1 Challenger Oeiras 2 Challenger Rome 1 Challenger Ostrava Challenger Oeiras 3 Challenger Biella 7 Challenger Lyon Challenger Perugia Challenger Istanbul 2 Challenger Ambato Challenger Biel Challenger Open Parc - Lyon Orleans Challenger Alicante Challenger Losinj Challenger Brest Challenger Bergamo Challenger Roanne Challenger Ortisei Challenger Qatar ExxonMobil Open - Doha Manama Challenger Antalya 3 Challenger Antalya 4 Challenger Forli 1 Challenger Forli 2 Challenger Forli 3 Challenger Open Occitanie - Montpellier Bengalaru 1 Challenger Bengalaru 2 Challenger Bendigo Challenger Forli 5 Challenger Phoenix Challenger Zadar Challenger Lugano Challenger Rome 1 Challenger Aix En Provence Challenger Mauthausen Challenger Zagreb Challenger Vicenza Challenger Forli 6 Challenger Poznan Challenger Perugia Challenger Lyon Challenger Ilkley Challenger Porto Challenger Trieste Challenger Segovia Challenger San Benedetto Challenger Como Challenger Cassis Challenger Rennes Challenger Hong Kong Tennis Open - Hong Kong Sibiu Challenger Maia Challenger Dubai Duty Free Tennis Championships - Dubai Noumea Challenger Quimper Challenger Koblenz Challenger Tel Aviv Watergen Open - Tel Aviv Open Sud de France - Montpellier Open 13 Provence - Marseille BNP Paribas Open - Indian Wells Miami Open - Miami Rolex Paris Masters - Paris Internazionali BNL d'Italia - Rome Tata Open Maharashtra - Pune Tennis Napoli Open - Naples cinch Championships - London Mutua Madrid Open - Madrid Miami Open - Miami Open Parc - Lyon French Open - Paris French Open - Paris U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne U.S. Open - New York French Open - Paris Wimbledon - London Internazionali BNL d'Italia - Rome Wimbledon - London Porto Challenger Davis Cup, World Group, QR, AUS-BIH 4-0 Davis Cup, Group I, 1R, PER-BIH 3-2 Davis Cup, Group II, 1R, BIH-LUX 4-1 Australian Open - Melbourne Davis Cup, Group II, 3R, BIH-LTU 2-3 French Open - Paris Davis Cup, Group II, 3R, LTU-BIH 0-5 Davis Cup, Group II, 1R, ZIM-BIH 1-4 All Lower level tournaments Davis Cup, Group I, 1R, BIH-MEX 3-1 Davis Cup, Group I, 1R, ECU-BIH 3-2 Orleans Challenger European Open - Antwerp Szekesfehervar Challenger Davis Cup, Group I, PO, BUL-BIH 1-3