Carriera Passato professionista nel 2006 con la Chocolade Jacques-Topsport Vlaanderen, con la maglia della squadra fiamminga si aggiudica la classifica scalatori al Tour Down Under 2007 e si piazza secondo nella quindicesima tappa del Giro d'Italia 2009, quella con arrivo a Faenza. Nel 2012, dopo una stagione al Cervélo TestTeam e due al Team Sky, si trasferisce alla Omega Pharma-Quickstep, ma nei quattro anni alla corte di Patrick Lefevere non ottiene successi.
Nel 2015 passa alla sudafricana MTN-Qhubeka, e nel 2016 si classifica secondo nella tappa del Mont Ventoux al Tour de France; l'anno dopo ottiene quindi i primi successi da professionista, vincendo una tappa e la classifica finale del Tour de Yorkshire. Si ritira dall'attività al termine della stagione 2020.
Palmarès 2017 (Team Dimension Data, due vittorie) 3ª tappa Tour de Yorkshire (Bradford > Fox Valley) Classifica generale Tour de Yorkshire
Altri successi 2007 (Chocolade Jacques-Topsport Vlaanderen) Classifica scalatori Tour Down Under
2012 (Omega Pharma-Quickstep) 2ª tappa, 2ª semitappa Tour de l'Ain (Saint-Vulbas, cronosquadre)
Piazzamenti Grandi Giri
Giro d'Italia 2009: 33º 2012: 47º 2013: 77º 2014: 31º
Tour de France 2010: 107º 2015: 13º 2016: 42º 2017: 19º 2018: non partito (16ª tappa) 2019: 77º
Vuelta a España 2012: 24º 2013: 31º 2017: non partito (12ª tappa)
Classiche monumento
Milano-Sanremo 2015: ritirato 2016: ritirato
Liegi-Bastogne-Liegi 2006: 91º 2007: 96º 2008: 65º 2009: ritirato 2012: 67º 2014: ritirato 2016: 99º 2017: 50º 2018: 34º 2019: ritirato
Giro di Lombardia 2009: ritirato 2010: 24º 2012: ritirato 2013: ritirato 2016: ritirato 2017: ritirato 2018: ritirato 2019: 85º
Competizioni mondiali
Campionati del mondo Verona 2004 - In linea Under-23: 24º Toscana 2013 - In linea Elite: 29º Innsbruck 2018 - In linea Elite: ritirato
Giochi olimpici Rio de Janeiro 2016 - In linea: 22º
Altri progetti
Collegamenti esterni