Career 2023 2022 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012 2010 2009 2008
All Surfaces Clay Grass Hard I.hard
All Rounds Final 1/2 1/4 First Second Third Fourth Qualifying q-First q-Second Pre-q Rubber 1 Rubber 2 Rubber 3 Rubber 4 Rubber 5 Robin Bronze N/A ER Q4 CR QF Q5 N/A
All Tournaments Open Parc - Lyon M25 Most French Open - Paris Bordeaux Challenger Troisdorf Challenger Wimbledon - London Viking International - Eastbourne Phoenix Challenger BNP Paribas Open - Indian Wells Miami Open - Miami Mauthausen Challenger Alphen Challenger Gerry Weber Open - Halle Topshelf Open - 's-Hertogenbosch SkiStar Swedish Open - Bastad Credit Agricole Suisse Open - Gstaad Bet-at-home Cup - Kitzbuhel U.S. Open (juniors) Moselle Open - Metz If Stockholm Open - Stockholm Alphen Challenger Mons Challenger Rennes Challenger Australian Open (juniors) BMW Open - Munich French Open (juniors) Wimbledon (juniors) U.S. Open (juniors) If Stockholm Open - Stockholm Heilbronn Challenger Furth Challenger Bratislava Challenger Davis Cup, Group I, PO, DEN-SWE 2-3 Brescia Challenger If Stockholm Open - Stockholm Wroclaw Challenger Germany F2 Germany F3 Jonkoping Challenger Greece F6 Blois Challenger Milan Challenger Marburg Challenger Sweden F3 Turkey F21 Turkey F22 Como Challenger Rome Challenger Germany F8 Belgium F8 Belgium F9 Netherlands F5 Belgium F12 Belgium F13 Mohammedia Challenger Davis Cup, Group I, PO, SWE-NED 0-5 Sweden F4 Sweden F5 Eckental Challenger Germany F14 France F23 Miami Open - Miami Barcelona Open BancSabadell - Barcelona SkiStar Swedish Open - Bastad If Stockholm Open - Stockholm Noumea Challenger Canberra Challenger Budapest Challenger Bergamo Challenger Wroclaw Challenger Chengdu Open - Chengdu Germany F2 (Kaarst) Germany F3 (Nussloch) France F4 (Lille) France F5 (Toulouse) France F6 (Poitiers) Barletta Challenger Aix En Provence Challenger Bordeaux Challenger Mestre Challenger Prostejov Challenger Lyon Challenger Lisbon Challenger Blois Challenger Qatar F1 (Doha) Qatar F2 (Doha) Qatar F3 (Doha) Israel F4 (Ramat Gan) Israel F5 (Akko) Israel F6 (Akko) Marburg Challenger Recanati Challenger Bastad Challenger Biella Challenger Cordenons Challenger Como Challenger Belgium F2 (Arlon) Germany F8 (Kassel) Belgium F6 (Duinbergen) Belgium F8 (Eupen) Poland F9 (Bydgoszcz) Alphen Challenger Monterrey Challenger Ismaning Challenger Charlottesville Challenger Knoxville Challenger Champaign Challenger Poland F10 (Poznan) Davis Cup, Group II, 3R, SWE-LTU 5-0 Sweden F4 (Falun) USA F39 (Waco) Garanti Koza Sofia Open - Sofia Miami Open - Miami French Open - Paris Wimbledon - London SkiStar Swedish Open - Bastad U.S. Open - New York Moselle Open - Metz Intrum Stockholm Open - Stockholm Bangkok Challenger Bangkok Challenger Koblenz Challenger Rennes Challenger Cherbourg Challenger Bergamo Challenger USA F40 (Tallahassee) Davis Cup, Group I, 1R, UKR-SWE 2-3 Zhuhai Challenger Shenzhen Challenger Mexico City Challenger Guadalajara Challenger Leon Challenger Ostrava Challenger Canada F2 (Sherbrooke) USA F7 (Bakersfield) Davis Cup, Group I, 2R, SWE-POR 3-2 Aix En Provence Challenger Bordeaux Challenger Heilbronn Challenger Mestre Challenger Vicenza Challenger Surbiton Challenger Nottingham Challenger Lyon Challenger Ilkley Challenger Blois Challenger Milan Challenger Marburg Challenger Braunschweig Challenger Bastad Challenger Scheveningen Challenger Prague Challenger Sopot Challenger Pullach Challenger Mallorca Challenger Chicago Challenger Cassis Challenger Cary Challenger Ortisei Challenger Brest Challenger Charlottesville Challenger Eckental Challenger Mouilleron-Le-Captif Challenger Knoxville Challenger Champaign Challenger Australian Open - Melbourne Open 13 Provence - Marseille Miami Open - Miami French Open - Paris Noventi Open - Halle Wimbledon - London SkiStar Swedish Open - Bastad U.S. Open - New York Intrum Stockholm Open - Stockholm BNP Paribas Masters - Paris Next Gen ATP Finals - Milan Noumea Challenger Playford Challenger Koblenz Challenger Rennes Challenger Quimper Challenger Cherbourg Challenger Pau Challenger Yokohama Challenger Davis Cup, World Group, QR, COL-SWE 4-0 Zhuhai Challenger Phoenix Challenger Shenzhen Challenger Barletta Challenger Murcia Challenger Sarasota Challenger Tallahassee Challenger Francavilla Challenger Bordeaux Challenger Savannah Challenger Heilbronn Challenger Vicenza Challenger Poznan Challenger Nottingham Challenger Ilkley Challenger Recanati Challenger Braunschweig Challenger Amersfoort Challenger Prague Challenger Tampere Challenger Sopot Challenger Augsburg Challenger Cassis Challenger Orleans Challenger Davis Cup, Group I, 1R, SWE-ISR 3-1 Mouilleron-Le-Captif Challenger Qatar ExxonMobil Open - Doha ASB Classic - Auckland Australian Open - Melbourne Open Sud de France - Montpellier Open 13 Provence - Marseille Dubai Duty Free Tennis Championships - Dubai Internazionali BNL d'Italia - Rome French Open - Paris Western & Southern Open - New York U.S. Open - New York Rennes Challenger Quimper Challenger Cherbourg Challenger Koblenz Challenger Pau Challenger Nur-Sultan Challenger Davis Cup, World Group, QR, SWE-CHI 3-1 Prague Challenger Trieste Challenger Ostrava Challenger Hamburg European Open - Hamburg Australian Open Qualifying - Doha Murray River Open - Melbourne Australian Open - Melbourne Open Sud de France - Montpellier Miami Open - Miami Barcelona Open Banc Sabadell - Barcelona Open Parc - Lyon French Open - Paris Nature Valley International - Eastbourne Wimbledon - London Nordea Open - Bastad Swiss Open - Gstaad Generali Open - Kitzbuhel Winston-Salem Open - Winston-Salem U.S. Open - New York Moselle Open - Metz St. Petersburg Open - St. Petersburg Sofia Open - Sofia Kremlin Cup - Moscow Rolex Paris Masters - Paris Lille Challenger Oeiras 1 Challenger Oeiras 2 Challenger Split 2 Challenger Emilia-Romagna Open - Parma Belgrade 2 - Belgrade Ostrava Challenger Heilbronn Challenger Oeiras 3 Challenger Bratislava Challenger Nottingham 2 Challenger Forli Challenger Braunschweig Challenger Amersfoort Challenger Tampere Challenger Poznan Challenger Meerbusch Challenger Tulln Challenger Rennes Challenger Biel Challenger Mouilleron-Le-Captif Challenger Ismaning Challenger Roanne Challenger Helsinki Challenger Davis Cup, Finals, Group B Adelaide International 1 - Adelaide Australian Open - Melbourne Open Sud de France - Montpellier ABN AMRO World Tennis Tournament - Rotterdam Open 13 Provence - Marseille BNP Paribas Open - Indian Wells Miami Open - Miami Grand Prix Hassan II - Marrakech Monte-Carlo Rolex Masters - Monte-Carlo Serbia Open - Belgrade Open Parc - Lyon French Open - Paris Mercedes Cup - Stuttgart Noventi Open - Halle Davis Cup, Finals, QF, RUS-SWE 2-0 Quimper Challenger Forli 5 Challenger Phoenix Challenger Lugano Challenger Turin Challenger Swiss Open - Gstaad Plava Laguna Croatia Open - Umag Citi Open - Washington Winston-Salem Open - Winston-Salem U.S. Open - New York Moselle Open - Metz Sofia Open - Sofia Stockholm Open - Stockholm Rolex Paris Masters - Paris Madrid Challenger Prague 1 Challenger Ostrava Challenger Mauthausen Challenger Surbiton Challenger Luedenscheid Challenger Braunschweig Challenger Salzburg Challenger Amersfoort Challenger Tampere Challenger Zug Challenger Meerbusch Challenger Vancouver Challenger Firenze Open - Florence Davis Cup, Group A, Bologna Ismaning Challenger Hamburg Challenger Adelaide International 1 - Adelaide Adelaide International 2 - Adelaide Australian Open - Melbourne Open Sud de France - Montpellier ABN AMRO World Tennis Tournament - Rotterdam Open 13 Provence - Marseille Dubai Duty Free Tennis Championships - Dubai Nonthaburi 1 Challenger Nonthaburi 2 Challenger Nonthaburi 3 Challenger Ottignies-Louvain-la-Neuve Challenger Vilnius Challenger Cherbourg Challenger Rome Challenger Waco Challenger Davis Cup, World Group, PO, SWE-BIH 3-1 Dusseldorf Open Challenger - Dusseldorf Latvia F1 Aachen Challenger Latvia F1 Netherlands F5 Vietnam F4 Kuwait F1 India F1 India F2 India F3 Egypt F3 Egypt F4 Germany F5 Belgium F8 Germany F14 Netherlands F5 Germany F16 France F15 Qatar F3 Qatar F4 Qatar F5 Germany F2 Italy F2 Italy F3 Great Britain F8 Turkey F11 Turkey F12 Turkey F14 Sweden F2 Turkey F15 Sweden F3 Turkey F16 Tunisia F2 Tunisia F3 Belgium F4 Germany F6 Belgium F7 Belgium F10 Belgium F11 Netherlands F6 France F18 Sweden F4 Germany F17 Egypt F33 Turkey F9 Switzerland F1 Turkey F10 Great Britain F4 Great Britain F5 Greece F2 Greece F3 Sweden F1 Sweden F2 Sweden F3 Belgium F1 Croatia F13 Belgium F5 Belgium F7 Canada F8 France F19 Sweden F4 Sweden F5 France F20 Germany F15 Germany F16 Germany F17 Great Britain F11 Czech Republic F7 Czech Republic F8 Qatar F5 Qatar F6