Nel 2016, ancora in maglia Lotto, vince l'ultima, impegnativa, tappa della Parigi-Nizza battendo in volata Alberto Contador e Richie Porte e poi si piazza decimo all'Amstel Gold Race. Successivamente partecipa al Giro d'Italia imponendosi nella tappa con arrivo in salita a Roccaraso: nell'occasione va in fuga e poi contiene agevolmente la reazione dei migliori della classifica[1]. A luglio vince la quinta tappa del Tour de Pologne a Zakopane, sotto un diluvio di pioggia battente, con ben 3'48" sul secondo classificato, Davide Formolo. Si aggiudica quindi sia la classifica finale che quella di miglior scalatore della corsa polacca[2].
Inizia molto bene il 2017 vincendo due prove consecutive della Challenge de Mallorca: la prima, il Trofeo Serra de Tramuntana, per distacco, la seconda, il Trofeo Andratx, battendo in una volata a tre Alejandro Valverde e Tiesj Benoot. Successivamente corre la Vuelta a Andalucia, e dopo un settimo posto a cronometro entra nella fuga vincente dell'ultima tappa vincendo poi la volata a sei sul traguardo di Coín. Dopo le corse spagnole conclude terzo nella Strade Bianche e quarto alla Freccia del Brabante. Dopo essersi ritirato al Tour de France vince una tappa e si classifica secondo al BinckBank Tour alle spalle di Tom Dumoulin. Nel finale di stagione si impone per distacco al Grand Prix de Wallonie e poi vince una tappa e la classifica finale del Tour of Guangxi[3][4], riuscendo così a conquistare una breve gara a tappe di World Tour per il quarto anno consecutivo.