Knockout bracket
Round of 16
Quarterfinal
Early rounds
Round of 32 12 matches
| Winner | Loser | Set 1 | Set 2 | Set 3 |
|---|---|---|---|---|
| Marc Andrea Huesler | Geoffrey Blancaneaux | 6-4 | 6-4 | · |
| Kamil Majchrzak | Ricardas Berankis | 7-5 | 6-2 | · |
| Oscar Otte | Dragos Nicolae Madaras | 6-3 | 6-2 | · |
| Alexandar Lazarov | Jiri Lehecka | 7-5 | 6-3 | · |
| Ugo Humbert | Dimitar Kuzmanov | 7-64 | 6-4 | · |
| Jan Lennard Struff | Dusan Lajovic | 4-6 | 6-3 | 6-2 |
| Holger Rune | Tim Van Rijthoven | 7-62 | 7-66 | · |
| Lorenzo Sonego | Bernabe Zapata Miralles | 6-3 | 6-4 | · |
| Ilya Ivashka | Mikael Ymer | 7-68 | 4-6 | 7-5 |
| Fernando Verdasco | Nikoloz Basilashvili | 7-61 | 7-5 | · |
| Aleksandar Vukic | Fabio Fognini | 7-611 | 7-5 | · |
| Nuno Borges | Mirza Basic | 3-6 | 6-3 | 6-2 |
Players
| Player | Country | Reached | |
|---|---|---|---|
| Marc Andrea Huesler | SUI | Winner | |
| Holger Rune | DEN | Final | |
| Jannik Sinner | ITA | Semifinal | |
| Lorenzo Musetti | ITA | Semifinal | |
| Aleksandar Vukic | AUS | Quarterfinal | |
| Ilya Ivashka | BLR | Quarterfinal | |
| Jan Lennard Struff | GER | Quarterfinal | |
| Kamil Majchrzak | POL | Quarterfinal | |
| AL | Alexandar Lazarov | BUL | Round of 16 |
| Fernando Verdasco | ESP | Round of 16 | |
| Grigor Dimitrov | BUL | Round of 16 | |
| Lorenzo Sonego | ITA | Round of 16 | |
| Nuno Borges | POR | Round of 16 | |
| Oscar Otte | GER | Round of 16 | |
| Pablo Carreno Busta | ESP | Round of 16 | |
| Ugo Humbert | FRA | Round of 16 | |
| Bernabe Zapata Miralles | ESP | Round of 32 | |
| Dimitar Kuzmanov | BUL | Round of 32 | |
| Dragos Nicolae Madaras | SWE | Round of 32 | |
| Dusan Lajovic | SRB | Round of 32 | |
| Fabio Fognini | ITA | Round of 32 | |
| Geoffrey Blancaneaux | FRA | Round of 32 | |
| Jiri Lehecka | CZE | Round of 32 | |
| Mikael Ymer | SWE | Round of 32 | |
| Mirza Basic | BIH | Round of 32 | |
| Nikoloz Basilashvili | GEO | Round of 32 | |
| Ricardas Berankis | LTU | Round of 32 | |
| TR | Tim Van Rijthoven | NED | Round of 32 |