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