Carriera Passa professionista nel 2012 con la Caja Rural, mostrando subito buone doti per le brevi corse a tappe: si piazza quarto alla Vuelta Castilla y Leon, secondo alla Vuelta Asturias Julio Alvarez Mendo e quinto al Giro del Portogallo dove conquista anche la classifica di miglior giovane. Viene così notato dal Team NetApp, che lo ingaggia per il biennio 2013/2014, stagioni nelle quali non va al di là di un decimo posto finale al Giro di California; partecipa anche al suo primo grande giro, la Vuelta a España 2013, ritirandosi nel corso della tredicesima tappa.
Si accasa quindi presso la Etixx-Quick Step. Nel 2015 debutta al Giro d'Italia; riesce a entrare nella fuga giusta alla 18ª tappa, che si conclude a Verbania dopo la scalata al monte Ologno, ma non riesce a tenere il ritmo di Philippe Gilbert, vincitore di giornata, e si piazza sesto a 1'01". Nel 2016 ottiene la prima vittoria da professionista: si impone infatti nella settima tappa della Vuelta a Espana, che si conclude in salita sull'Alto del Naranco, staccando i compagni di fuga e conquistando la maglia di capoclassifica. Nella tappa successiva, che si conclude ai Lagos de Covadonga, non riesce a tenere il ritmo di Nairo Quintana e cede il primato. Nelle tappe successive si classifica sempre a ridosso dei migliori e pertanto conclude al settimo posto della classifica finale, a 11'18" da Quintana.
Nel 2017 vince l'ultima tappa della Parigi-Nizza in una volata a due su Alberto Contador. Il successo priva, di fatto, Contador degli abbuoni che gli avrebbero permesso di vincere la classifica finale della corsa francese. Partecipa poi alla Vuelta al País Vasco dove vince la terza tappa, collinare, che si conclude a San Sebastián: nell'occasione scatta sull'ultimo gran premio e riesce a mantenere 3" di vantaggio sul gruppo dei migliori, regolato da Michał Kwiatkowski; conquista così anche la maglia di leader, che tiene per due giorni. Disputa la Vuelta a España con ambizioni di classifica. Dopo essere arrivato secondo alle spalle di Vincenzo Nibali sul traguardo della terza frazione ed aver sfiorato la maglia di leader grazie agli abbuoni perde progressivamente terreno dai migliori. Al via della penultima tappa si trova così undicesimo in classifica. Attacca nel corso della discesa che precede l'Angliru ma, a causa di una caduta, è costretto a ritirarsi dalla gara.
Nel 2018 si impone nella cronometro individuale della Vuelta a Andalucía e, come l'anno precedente, nell'ultima tappa della Parigi-Nizza. Chiude la prima parte di stagione aiutando il capitano Chris Froome a vincere il Giro d'Italia. Prende il via della Vuelta e España come co-capitano, assieme a Michał Kwiatkowski, della propria squadra.
Palmarès 2016 (Etixx-Quick Step, una vittoria) 9ª tappa Vuelta a España (Cistierna > Oviedo/Alto del Naranco)
2017 (Quick-Step Floors, due vittorie) 8ª tappa Parigi-Nizza (Nizza > Nizza) 3ª tappa Vuelta al País Vasco (Vitoria-Gasteiz > San Sebastián)
2018 (Team Sky, due vittorie) 5ª tappa Vuelta a Andalucía (Barbate > Barbate, cronometro) 8ª tappa Parigi-Nizza (Nizza > Nizza)
2024 (Q36.5 Pro Cycling Team, una vittoria) Campionati spagnoli, Prova a cronometro
Altri successi 2012 (Caja Rural) Classifica giovani Volta a Portugal
2020 (UAE Team Emirates) Classifica montagna Critérium du Dauphiné
Piazzamenti Grandi Giri
Giro d'Italia 2015: 34º 2016: non partito (16ª tappa) 2018: 56º 2022: ritirato (20ª tappa) 2026: 14º
Tour de France 2014: ritirato (12ª tappa) 2020: 72º 2023: ritirato (12ª tappa)
Vuelta a España 2013: ritirato (13ª tappa) 2015: non partito (6ª tappa) 2016: 7º 2017: ritirato (20ª tappa) 2018: 15º 2019: 66º 2020: 7º 2021: 7º 2022: 20º 2023: non partito (16ª tappa) 2025: 102º 2026: 105º
Classiche monumento
Milano-Sanremo 2014: ritirato
Liegi-Bastogne-Liegi 2014: 51º 2016: 58º 2017: 60º 2019: 67º 2021: ritirato 2022: 97º 2023: ritirato 2025: 86º
Giro di Lombardia 2014: 65º 2016: 61º 2018: 63º 2022: ritirato 2023: ritirato
Competizioni mondiali Campionati del mondo Doha 2016 - In linea Elite: ritirato Bergen 2017 - In linea Elite: 70º Innsbruck 2018 - In linea Elite: 44º Imola 2020 - In linea Elite: ritirato Zurigo 2024 - Cronometro Elite: 25º Zurigo 2024 - Staffetta mista: 9º
Competizioni continentali Campionati europei Plumelec 2016 - In linea Elite: 34º Trento 2021 - In linea Elite: ritirato
Note
Altri progetti
Collegamenti esterni