Cresciuto nelle file di Marsala e Napoli, nella stagione 1986-1987 ha militato nelle file del Venezia, collezionando 2 presenze. Nella stagione successiva si è trasferito al Trapani. Dopo una prima stagione nelle file dei granata in cui ha collezionato 8 presenze in campionato, nel 1988 è passato al Partinicaudace, club militante in Interregionale. Impiegato come titolare, ha totalizzato 33 presenze e 5 reti in neroverde. Rientrato al Trapani nel 1989, vi ha militato per tre stagioni, totalizzando 11 reti in 75 presenze. Nel 1992 è passato al Foggia, in Serie A. Il debutto in massima serie è avvenuto il 27 settembre 1992, in Foggia-Udinese (1-0)[1]. Ha messo a segno la sua prima rete in Serie A il 18 aprile 1993, in Pescara-Foggia (2-4)[2], siglando il gol del momentaneo 0-2 al minuto 28 del primo tempo. Ha militato nelle file del Foggia per quattro stagioni, totalizzando 9 reti in 88 presenze in campionato. Nel 1996 è passato alla Reggiana. Ha militato nelle file della Reggiana per due stagioni, intervallate da un breve prestito alla Reggina nel 1996, totalizzando 11 presenze. Nel 1998 è passato al Ravenna, con cui ha concluso la propria carriera da calciatore nel 1999.
Nel 2002 ha fondato a Marsala la scuola calcio ASD Dribbling[3]. Nella stagione 2007-2008 ha allenato il Marsala[4]. Nelle successive due stagioni ha allenato la formazione Under-19 del Trapani[4]. Nell'agosto 2011 è tornato ad allenare il Marsala[4]. Nell'aprile 2012 ha rassegnato le proprie dimissioni[5][6]. Il 4 giugno 2012 è diventato allenatore del Mazara[7]. Il 1º novembre 2012 ha rassegnato le proprie dimissioni[8]. Nell'agosto 2017 è diventato responsabile del settore giovanile del Marsala[9]. L'11 settembre 2017 è entrato nello staff tecnico del Marsala[10] con il ruolo di direttore tecnico, mantenendo anche il ruolo di responsabile del settore giovanile. Ha mantenuto entrambi gli incarichi fino al termine della stagione.