Cresciuto nelle giovanili dell’Inter, in carriera ha indossato le maglie di Foggia, Cremonese, Grosseto, Catanzaro, Teramo, Lanciano, Cesena, Ternana, Novara, Chievo Verona e Cosenza.
In totale tra i professionisti ha collezionato 330 presenze, divise tra serie B, serie C, Coppa Italia, Coppa di C, playoff di serie B, playout di serie B e playoff di serie C.