Il débute en tant que cadet l'athlétisme en été 2004 sur la distance de 300 m, en battant le record d'Italie cadets en 35 s 39 et en devenant champion d'Italie cadets à Abano la même année. Il descend du 400 m au 200 m par la suite pour enfin disputer les Championnats du monde junior 2008 à Bydgoszcz où il est demi-finaliste en 21 s 67 et participe aux séries du relais 4 × 100 m. En 2011, il devient champion d'Europe espoirs dudit relais à Ostrava. En 2012, il est sélectionné pour les Championnats d'Europe à Helsinki où il arrive 4e en demi-finale en 21 s 07, avec un vent défavorable de 1,7 m/s. Qualifié dans l'équipe de relais italienne le pour participer aux Jeux olympiques de Londres (comme remplaçant), il voit son statut changer à la suite de sa troisième place sur 200 m, derrière Andrew Howe, lors des Championnats d'Italie à Bressanone le : il se retrouve à être titularisé comme 3erelayeur pour le meeting Herculis de Monaco (dernier test avant les Jeux) et donc pour les Jeux de Londres. Il est le champion d'Italie 2012 du relais 4 × 100 m, en 39 s 48 (Club sportif de l'Aeronautica militare, équipe composée également de Tumi, de Riparelli et d'A. Berdini dont il était le 3erelayeur). Le , lors du meeting Herculis, pour sa première course dans l'équipe italienne séniors, il contribue à la 5eplace en 38 s 76 de l'Italie (meilleur temps de la saison), juste derrière la France.
Il améliore ce temps lors des Jeux olympiques de Londres en 38 s 58.
Il remporte le titre du relais 4 × 100 m lors des Jeux méditerranéens 2013 à Mersin en 39 s 06, avec Jacques Riparelli, Simone Collio et Michael Tumi.
Le , il court en 20 s 64 à Santhià en début de saison. Dans sa ville natale, il remporte le titre italien du 200 m en 21 s 00, vent défavorable, le . Le , il porte son record sur 200 m à 20 s 50 à Savone ce qui représente le minima exact pour les Jeux olympiques de Rio, puis à Rieti, lors des championnats nationaux où il termine deuxième derrière Eseosa Desalu, il améliore son temps en 20 s 44.