Nato a Treviglio in provincia di Bergamo il 23 settembre 1991, la sua carriera è iniziata nel settore giovanile dell’Inter, dove si laurea, nel 2006, campione dei Giovanissimi nazionali. Nella stagione 2008-2009 ha vestito la maglia della Triestina, nei due campionati successivi quella del Monza e nel 2011 viene mandato in prestito al Lecco, guadagnandosi anche due convocazioni con la Nazionale Under 20. Dal 2013, per tre anni, gioca per il Suduva (squadra lituana) disputando anche un preliminare di Europa League. In Lituania colleziona 104 presenze e 12 gol.
Nel febbraio 2016 si sposta in Estonia, vestendo la maglia del Nõmme Kalju con la quale ha raggiunto il terzo turno preliminare di Europa League della stagione 2016-2017. Poi ancora Italia dove ha vestito la casacca di Gozzano e Gubbio ed ancora un’avventura all’estero con gli estoni del Levadia, fino al ritorno in Italia con la maglia del Sant’Angelo di Lodi, prima stagione in D dopo 16 anni tra i professionisti.
Il suo numero di maglia è 5.