È originario di Santarcangelo di Romagna, in provincia di Rimini.[1] Nel 2007 giunge quinto nel campionato italiano minimoto Junior A. Nel 2009 corre nel campionato HIRP. Nel 2010 vince il campionato italiano MiniGP 50 cc su una Honda NSF 100; nel 2011 vince lo stesso titolo nella categoria 70 cm³ con una metrakit. Nel 2012 passa alla Red Bull Rookies Cup, finendo tredicesimo; nella stessa categoria giunge terzo nel 2013 e nel 2014.[2] Nel 2013 inoltre, partecipa al campionato Italiano Moto3 chiudendo sesto in classifica, mentre nel 2014, prende parte al solo Gran Premio di Misano nel CIV Moto3, in qualità di wild card senza punti, ottenendo pole position e vittoria in gara2.[3]
Nel 2015 esordisce nella classe Moto3 del motomondiale, alla guida della Mahindra MGP3O del San Carlo Team Italia; il compagno di squadra è Matteo Ferrari. In quattro occasioni riesce ad andare a punti, ottenendone 10 in totale. Chiude la sua stagione d'esordio al ventisettesimo posto in classifica finale. Nel 2016 corre i GP d'Austria e di Gran Bretagna in qualità di wildcard con il team Mahindra Racing. Chiude la stagione al ventinovesimo posto con tredici punti ottenuti. Nel 2017 passa in Moto2 alla guida di una Kalex dello SKY Racing Team VR46; il compagno di squadra è il connazionale Francesco Bagnaia. Ottien come miglior risultato un settimo posto in Gran Bretagna e termina la stagione al 25º posto con 14 punti. Nel 2018 passa a guidare la Suter MMX2 del team Forward Racing, con compagno di squadra Eric Granado. In questa stagione è costretto a saltare il Gran Premio d'Australia a causa di una contusione al polso destro rimediata nelle qualifiche del GP.
Il 9 settembre 2018, durante lo svolgimento del Gran Premio di San Marino e della Riviera di Rimini della classe Moto 2, sul circuito Marco Simoncelli di Misano Adriatico è protagonista insieme con Romano Fenati di una bagarre molto accesa che porta Fenati a schiacciare deliberatamente la leva del freno di Manzi lungo un rettilineo mentre i piloti viaggiavano a circa 220 km/h. Il gesto costa a Fenati l'esposizione della bandiera nera e la squalifica per i due successivi GP. Il Gran Premio di Manzi si conclude invece con una caduta dopo alcune curve (indipendentemente dalla manovra scorretta di Fenati). Ottiene come miglior risultato un decimo posto in Francia e conclude la stagione al 24º posto con 8 punti. In questa stagione è costretto a saltare i Gran Premi di Malesia e Comunità Valenciana a causa di un infortunio rimediato durante le prove del precedente Gran Premio d'Australia. Il suo posto in squadra, in Malesia, viene preso da Rafid Topan Sucipto.[4]
Nel 2019 rimane nello stesso team, alla guida di una MV Agusta F2 e con compagno di squadra Dominique Aegerter.[5] Ottiene come miglior risultato un quarto posto in Comunità Valenciana e chiude la stagione al 19º posto con 39 punti. In questa stagione è costretto a saltare il Gran Premio delle Americhe a causa di una frattura dello scafoide. Il suo posto in squadra, in questo frangente, viene preso da Gabriele Ruiu.[6]
Nel 2020 rimane nello stesso team, con compagno di squadra Simone Corsi. Ottiene una pole position in Comunità Valenciana e chiude la stagione al ventiduesimo posto.[7][8] Nel 2021 passa alla guida della Kalex del team Flexbox HP40; il compagno di squadra è Héctor Garzó. Ottiene come miglior risultato un sesto posto nel Gran Premio dell'Emilia Romagna e chiude la stagione al diciannovesimo posto con 36 punti.[9] In questa stessa stagione prende parte anche ad una prova del campionato mondiale Supersport, sostituendo l'infortunato Andy Verdoïa in sella ad una Yamaha YZF-R6 del team GMT94 in occasione del Gran Premio di Jerez, conquistando sette punti con cui chiude trentaduesimo.[10]
Nel 2022 è pilota titolare nel mondiale Supersport, gareggia con il team Dynavolt in sella ad una Triumph Street Triple RS, il compagno di squadra è Hannes Soomer.[11] In occasione del Gran Premio di Spagna è chiamato a sostituire Keminth Kubo nello Yamaha VR46 Master Camp in Moto2.[12] Conclude la gara al tredicesimo posto. Disputa nella stessa veste anche il Gran Premio successivo terminando decimo; questi punti gli consentono di classificarsi al ventitreesimo posto.[13] A fine luglio, nel Gran Premio di Most ottiene un secondo posto in gara1 (miglior piazzamento in gara di Triumph)[14] ed un terzo posto in gara2 (con il giro più veloce). Ottiene la prima vittoria in questa categoria al Gran Premio del Portogallo (primo successo anche per il costruttore),[15] Con cinque piazzamenti a podio totali, chiude il campionato al sesto posto.[16]