Career 2025 2024 2023 2022 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012 2011 2010 2009 2008
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 Salzburg Challenger Pozoblanco Challenger Braunschweig Challenger Nordea Open - Bastad Wimbledon - London Segovia Challenger Porto Challenger Mallorca Challenger U.S. Open - New York Davis Cup, Group I, 1R, BIH-GER 0-4 Astana Open - Astana Orleans Challenger Mouilleron-Le-Captif Challenger Bratislava 2 Challenger Stockholm Open - Stockholm Moselle Open - Metz Helsinki Challenger Danderyd Challenger Australian Open - Melbourne Nonthaburi 1 Challenger Manama Challenger Ottignies-Louvain-la-Neuve Challenger Quimper Challenger Pau Challenger BNP Paribas Open - Indian Wells Lille Challenger Lugano Challenger Naples Challenger Barletta Challenger Ostrava Challenger Tunis Challenger Open Parc - Lyon Mutua Madrid Open - Madrid Wimbledon - London Split Challenger Zagreb Challenger Boss Open - Stuttgart Aix En Provence Challenger Bordeaux Challenger Internazionali BNL d'Italia - Rome Nottingham 2 Challenger Terra Wortmann Open - Halle Ilkley Challenger Karlsruhe Challenger Braunschweig Challenger U.S. Open - New York Istanbul Challenger Manacor Challenger Orleans Challenger Japan Open Tennis Championships - Tokyo Roanne Challenger Brest Challenger Shanghai Rolex Masters - Shanghai European Open - Antwerp Bratislava 2 Challenger Almaty Open - Almaty Moselle Open - Metz Lyon Challenger Banja Luka Challenger Mutua Madrid Open - Madrid Lille Challenger Cherbourg Challenger Cap Cana Challenger BNP Paribas Open - Indian Wells Quimper Challenger Rio Open - Rio de Janeiro Rovereto Challenger Rosario Challenger Pau Challenger Montemar Challenger Maia Challenger Canberra Challenger Australian Open - Melbourne Argentina Open - Buenos Aires Zadar Challenger Naples Challenger Tiriac Open - Bucharest French Open - Paris Wimbledon - London Monte-Carlo Rolex Masters - Monte-Carlo Bordeaux Challenger Boss Open - Stuttgart Nottingham 2 Challenger National Bank Open - Toronto Nordea Open - Bastad U.S. Open - New York Cincinnati Open - Cincinnati Genova Challenger St. Tropez Challenger Switzerland F3 Bosnia & Herzegovina F2 Croatia F8 France F14 Bosnia/Herzegovina F6 Bosnia/Herzegovina F1 Bosnia & Herzegovina F2 France F4 Czech Republic F1 France F8 France F9 Germany F9 Italy F18 Italy F19 Italy F20 Germany F12 Poland F5 Poland F6 France F14 France F16 France F17 Croatia F7 Croatia F8 Dominican Republic F1 Dominican Republic F2 Dominican Republic F3 USA F1 USA F2 Israel F3 Germany F4 Croatia F1 Croatia F2 France F4 France F5 Italy F3 Italy F6 France F7 Italy F7 Bosnia & Herzegovina F2 Bosnia & Herzegovina F3 Bosnia & Herzegovina F5 Netherlands F1 France F8 Serbia F1 Serbia F2 France F10 Serbia F3 Italy F18 Lithuania F1 Latvia F1 Serbia F7 Germany F12 Croatia F7 Croatia F8 Germany F13 France F14 Croatia F9 Croatia F10 Germany F16 Croatia F13 Croatia F14 Turkey F32 Turkey F33 China F1 China F2 Turkey F3 Turkey F4 Croatia F1 Italy F1 Italy F2 Greece F3 Bosnia & Herzegovina F1 Bosnia & Herzegovina F2 Bosnia & Herzegovina F3 Bosnia & Herzegovina F5 Germany F7 France F12 Italy F20 France F19 Israel F10 Croatia F11 Israel F11 Croatia F12 Turkey F2 France F2 Germany F4 Croatia F1 Croatia F2 USA F5 USA F6 Italy F1 Italy F5 Bulgaria F1 Bosnia & Herzegovina F4 Germany F7 Serbia F3 France F11 Croatia F12 France F16 France F20 Croatia F12 Italy F4 Sarajevo Challenger St. Brieuc Challenger Rennes Challenger Orleans Challenger Aachen Challenger Cherbourg Challenger Barletta Challenger St. Remy Challenger Quimper Challenger Cherbourg Challenger Sarajevo Challenger Rimouski Challenger Le Gosier Challenger Tallahassee Challenger Santos Challenger Bordeaux Challenger Nottingham Challenger Nottingham-2 Challenger Milan Challenger Arad Challenger Anning Challenger Beijing Challenger Como Challenger St. Remy Challenger Brasov Challenger Petange Challenger Banja Luka Challenger Rennes Challenger Ortisei Challenger Sarajevo Challenger Itajai Challenger Ostrava Challenger Napoli Challenger Rome Challenger Bordeaux Challenger Prostejov Challenger Furth Challenger Kosice Challenger San Benedetto Challenger Poznan Challenger Recanati Challenger Tampere Challenger Kazan Challenger Alphen Challenger St. Remy Challenger Orleans Challenger Mouilleron-Le-Captif Challenger Bratislava Challenger Ortisei Challenger Yokohama Challenger Toyota Challenger Bergamo Challenger Vercelli Challenger Tunis Challenger Ostrava Challenger Kosice Challenger Scheveningen Challenger San Benedetto Challenger Poznan Challenger Tampere Challenger Genova Challenger St. Remy Challenger Kenitra Challenger Geneva Challenger Bratislava Challenger Mouilleron-Le-Captif Challenger Helsinki Challenger Santo Domingo Challenger Morelos Challenger San Luis Potosi Challenger Mersin Challenger Bordeaux Challenger San Benedetto Challenger Mohammedia Challenger Casablanca Challenger Guayaquil Challenger Buenos Aires Challenger Bergamo Challenger Prostejov Challenger Alphen Challenger Mohammedia Challenger Canberra Challenger Blois Challenger Quimper Challenger Santo Domingo Challenger Tampere Challenger Orleans Challenger Rome Challenger Orleans Challenger Heilbronn Challenger Sao Paulo Challenger Wuhan Challenger San Marino Challenger Cordenons Challenger Lermontov Challenger Santos Challenger Ortisei Challenger Segovia Challenger Banja Luka Challenger Trnava Challenger Sophia Antipolis Challenger Arad Challenger Aptos Challenger Vancouver Challenger New Haven Challenger Seville Challenger Meknes Challenger Tashkent Challenger Bratislava Challenger Bendigo Challenger Andria Challenger Prague II Challenger Barcelona Challenger Lisbon Challenger Heilbronn Challenger Moscow Challenger Belgrade Challenger Rome 2 Challenger Oeiras 3 Challenger Nottingham 2 Challenger Salzburg-Anif Challenger Alphen Challenger Sao Paulo Challenger Tulln Challenger Orleans Challenger Mouilleron-Le-Captif Challenger Barcelona Challenger Lima Challenger Brest Challenger Bratislava Challenger Bendigo Challenger Wroclaw Challenger Cherbourg Challenger Irving Challenger Guadalajara Challenger Cherbourg Challenger Pau Challenger Lille Challenger Lugano Challenger St. Tropez Challenger Mauthausen Challenger Casablanca Challenger Budapest Challenger Surbiton Challenger Zug Challenger Santo Domingo Challenger Banja Luka Challenger Sibiu Challenger Lisbon Challenger Yokohama Challenger Matsuyama Challenger Kobe Challenger Noumea Challenger Oeiras 1 Challenger Oeiras 2 Challenger Quimper Challenger Vilnius Challenger Antalya Challenger Lugano Challenger Szekesfehervar Challenger St. Brieuc Challenger Zadar Challenger Ostrava Challenger Tunis Challenger Oeiras 4 Challenger Heilbronn Challenger Surbiton Challenger Bratislava 1 Challenger Poznan Challenger Aix En Provence Challenger Bordeaux Challenger Sibiu Challenger Granby Challenger Phoenix Challenger Trnava Challenger Orleans Challenger Perugia Challenger Samarkand Challenger BH Indoor Sarajevo - Sarajevo Prague Challenger Marbella Challenger Aix En Provence Challenger Nottingham 1 Challenger Braunschweig Challenger Trieste Challenger Meerbusch Challenger Sibiu Challenger Bergamo Challenger Helsinki Challenger Blumenau Challenger Quimper Challenger Forli 5 Challenger Biel Challenger Sanremo Challenger Bordeaux Challenger Ilkley Challenger Cordenons Challenger Meerbusch Challenger Orleans Challenger Quimper Challenger Prague 2 Challenger Como Challenger Istanbul Challenger Orleans Challenger Brest Challenger Cherbourg Challenger Bergamo Challenger Ismaning Challenger Valencia Challenger Canberra Challenger Eckental Challenger Irving Challenger Dallas Challenger Geneva Challenger Ortisei Challenger Guadalajara Challenger Cherbourg Challenger Braunschweig Challenger Bonn Challenger Santo Domingo Challenger Leon Challenger Mersin Challenger Kenitra Challenger Kosice Challenger Scheveningen Challenger Como Challenger Liberec Challenger San Benedetto Challenger Casablanca Challenger Open de Moselle - Metz Open 13 - Marseille Open Sud de France - Montpellier Open 13 - Marseille UNICEF Open - 's Hertogenbosch Studena Croatia Open - Umag Moselle Open - Metz Aircel Chennai Open - Chennai Apia International - Sydney Gerry Weber Open - Halle Mercedes Cup - Stuttgart Moselle Open - Metz Swiss Indoors Basel - Basel Open Sud de France - Montpellier Open 13 - Marseille Moselle Open - Metz Malaysian Open - Kuala Lumpur Rakuten Japan Open - Tokyo If Stockholm Open - Stockholm Swiss Indoors Basel - Basel PBZ Zagreb Indoors - Zagreb Open 13 - Marseille Geneva Open - Geneva Topshelf Open - 's-Hertogenbosch Winston-Salem Open - Winston-Salem Rakuten Japan Open - Tokyo Delray Beach Open - Delray Beach TEB BNP Paribas Istanbul Open - Istanbul European Open - Antwerp TEB BNP Paribas Istanbul Open - Istanbul Bet-at-home Open - Hamburg Abierto Mexicano - Los Cabos St. Petersburg Open - St. Petersburg Shenzhen Open - Shenzhen China Open - Beijing Kremlin Cup - Moscow Open Sud de France - Montpellier ABN AMRO World Tennis Tournament - Rotterdam Dubai Duty Free Tennis Championships - Dubai Citi Open - Washington Shenzhen Open - Shenzhen Rakuten Japan Open - Tokyo Kremlin Cup - Moscow Erste Bank Open - Vienna Open Sud de France - Montpellier ABN AMRO World Tennis Tournament - Rotterdam Open 13 Provence - Marseille Turkish Airlines Open Antalya - Antalya Nature Valley International - Eastbourne SkiStar Swedish Open - Bastad BB&T Atlanta Open - Atlanta Abierto Mexicano de Tenis Mifel - Los Cabos Winston-Salem Open - Winston-Salem Moselle Open - Metz St. Petersburg Open - St. Petersburg Zhuhai Open - Zhuhai China Open - Beijing Kremlin Cup - Moscow Erste Bank Open - Vienna Qatar ExxonMobil Open - Doha Open Sud de France - Montpellier New York Open - New York Delray Beach Open - Delray Beach Open 13 Provence - Marseille Abierto Mexicano Telcel - Acapulco Dubai Duty Free Tennis Championships - Dubai Erste Bank Open - Vienna bett1HULKS Indoors - Cologne bett1HULKS Championships - Cologne Astana Open - Nur-Sultan Great Ocean Road Open - Melbourne ABN AMRO World Tennis Tournament - Rotterdam Open 13 Provence - Marseille Abierto Mexicano Telcel - Acapulco Barcelona Open Banc Sabadell - Barcelona Millennium Estoril Open - Estoril Hamburg European Open - Hamburg Plava Laguna Croatia Open - Umag Winston-Salem Open - Winston-Salem Open Sud de France - Montpellier ABN AMRO World Tennis Tournament - Rotterdam Split Challenger Open 13 Provence - Marseille Grand Prix Hassan II - Marrakech Barcelona Open Banc Sabadell - Barcelona Serbia Open - Belgrade Millennium Estoril Open - Estoril BMW Open - Munich Libema Open - 's-Hertogenbosch SAP Open - San Jose Qatar ExxonMobil Open - Doha Millennium Estoril Open - Estoril Banja Luka Open - Banja Luka Libema Open - 's-Hertogenbosch Plava Laguna Croatia Open - Umag If Stockholm Open - Stockholm Brisbane International - Brisbane Erste Bank Open - Vienna BRD Nastase Tiriac Trophy - Bucharest Open 13 Provence - Marseille Open de Nice Cote d'Azur - Nice Gerry Weber Open - Halle Winston-Salem Open - Winston-Salem Kremlin Cup - Moscow Brisbane International - Brisbane Generali Open - Kitzbuhel Aircel Chennai Open - Chennai Hangzhou Open - Hangzhou Grand Prix Hassan II - Casablanca Open 13 Provence - Marseille TEB BNP Paribas Istanbul Open - Istanbul Vegeta Croatia Open - Umag Grand Prix Hassan II - Marrakech St. Remy Challenger Barcelona Open Banc Sabadell - Barcelona Hamburg Open - Hamburg Moselle Open - Metz Gonet Geneva Open - Geneva Internazionali BNL d'Italia - Rome EFG Swiss Open - Gstaad Brisbane International - Brisbane Qatar ExxonMobil Open - Doha Apia International - Sydney Garanti Koza Sofia Open - Sofia Memphis Open - Memphis Plava Laguna Croatia Open - Umag Abierto Mexicano Telcel - Acapulco BRD Nastase Tiriac Trophy - Bucharest Open de Nice Cote d'Azur - Nice Mercedes Cup - Stuttgart Aegon Nottingham Open - Nottingham Konzum Croatia Open - Umag Mons Challenger Winston-Salem Open - Winston-Salem Moselle Open - Metz Kremlin Cup - Moscow Erste Bank Open - Vienna Brisbane International - Brisbane Open Sud de France - Montpellier Garanti Koza Sofia Open - Sofia ABN AMRO World Tennis Tournament - Rotterdam Memphis Open - Memphis Delray Beach Open - Delray Beach Dubai Duty Free Tennis Championships - Dubai Hungarian Open - Budapest Open Parc - Lyon Mercedes Cup - Stuttgart AEGON Championships - London Hall of Fame Tennis Championships - Newport Konzum Croatia Open - Umag Winston-Salem Open - Winston-Salem Moselle Open - Metz If Stockholm Open - Stockholm Erste Bank Open - Vienna Brisbane International - Brisbane Open de Moselle - Metz Maharashtra Open - Pune Sydney International - Sydney Open 13 Provence - Marseille Gazprom Hungarian Open - Budapest TEB BNP Paribas Istanbul Open - Istanbul AEGON Championships - London Antalya Cup - Antalya Plava Laguna Croatia Open - Umag Leon Challenger Abierto Mexicano - Los Cabos Winston-Salem Open - Winston-Salem Moselle Open - Metz St. Petersburg Open - St. Petersburg Qatar ExxonMobil Open - Doha Rennes Challenger Grand Prix Hassan II - Marrakech Gazprom Hungarian Open - Budapest Geneva Open - Geneva Open Parc - Lyon Libema Open - 's-Hertogenbosch Noventi Open - Halle Generali Open - Kitzbuhel Antalya Open - Antalya Serbia Open - Belgrade Open Parc - Lyon St. Petersburg Open - St. Petersburg European Open - Antwerp Kremlin Cup - Moscow Anytech365 Andalucia Open - Marbella Barcelona Open BancSabadell - Barcelona Stockholm Open - Stockholm Firenze Open - Florence Open Sud de France - Montpellier Zagreb Challenger Qatar ExxonMobil Open - Doha Dubai Duty Free Tennis Championships - Dubai Barcelona Open Banc Sabadell - Barcelona Bucharest Open - Bucharest Belgrade Open - Belgrade Adelaide International - Adelaide Movistar Chile Open - Santiago Mallorca Championships - Mallorca Hangzhou Open - Hangzhou German Tennis Championships - Hamburg Dubai Duty Free Tennis Championships - Dubai Shanghai Rolex Masters - Shanghai Aircel Chennai Open - Chennai Bet-at-home Open - Hamburg PBZ Zagreb Indoors - Zagreb BNP Paribas Masters - Paris Sony Open Tennis - Miami Internazionali BNL d'Italia - Rome BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Miami Open - Miami Rogers Cup - Montreal BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Western & Southern Open - Cincinnati BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Rogers Cup - Montreal Shanghai Rolex Masters - Shanghai BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Rogers Cup - Toronto Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Internazionali BNL d'Italia - Rome Coupe Rogers - Montreal Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai BNP Paribas Masters - Paris Internazionali BNL d'Italia - Rome Western & Southern Open - New York Rolex Paris Masters - Paris Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Rolex Paris Masters - Paris Mutua Madrid Open - Madrid Miami Open - Miami Citi Open - Washington French Open - Paris 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 U.S. Open - New York Australian Open - Melbourne French Open - Paris U.S. Open - New York Australian Open Qualifying - Doha Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Australian Open - Melbourne BNP Paribas Open - Indian Wells French Open - Paris Wimbledon - London French Open - Paris Davis Cup, Europe/Africa Group II, 2R, EST-BIH 2-3 Davis Cup, Group II, 3R, DEN-BIH 3-2 Davis Cup, Group II, 2R, BLR-BIH 4-1 Davis Cup, Group II, 1R, BIH-LUX 4-1 Davis Cup, Group II, 2R, BIH-MDA 1-3 Davis Cup, Group II, 1R, BIH-GRE 3-1 Davis Cup, Group II, 2R, FIN-BIH 2-3 Davis Cup, Group II, 3R, BIH-LTU 2-3 Davis Cup, Group II, 2R, BIH-TUR 3-1 Davis Cup, Group II, 3R, LTU-BIH 0-5 Davis Cup, World Group, 1R, JPN-FRA 1-4 Davis Cup, Group I, 2R, BIH-NED 1-3 Davis Cup, Group I, 2R, SVK-BIH 2-3 Davis Cup, World Group, QR, AUS-BIH 4-0 Davis Cup, World Group I, PO, BIH-RSA 3-1 Davis Cup, Group I, 1R, PER-BIH 3-2 Davis Cup, Group I, 1R, BIH-MEX 3-1 Davis Cup, World Group, PO, SWE-BIH 3-1 Davis Cup, World Group I, 1R, TPE-BIH 3-2 Davis Cup, Group I, 1R, ECU-BIH 3-2 Davis Cup, Europe/Africa Group II, 3R, POR-BIH 3-2 Davis Cup, Group I, PO, BUL-BIH 1-3 Davis Cup, Group I, PO, TUN-BIH 1-3 Australian Open (juniors) French Open (juniors) Wimbledon (juniors) U.S. Open (juniors) Davis Cup, Group II, 1R, ZIM-BIH 1-4 French Open (juniors) U.S. Open (juniors) All Lower level tournaments Davis Cup, Group I, 1R, BIH-POL 5-0 Olympics - Rio de Janeiro Davis Cup, Group I, PO, UZB-BIH 1-3 Wimbledon (juniors)