Formé par le Cesena Calcio, il fait ses débuts dans le championnat de Serie C 1963-1964, ne jouant qu'un seul match. Il est ensuite acheté par le club de la Juventus, avec qui il reste tout d'abord pendant trois saisons le gardien de but de l'équipe des jeunes, avant de faire ses grands débuts en première division lors de la saison 1967-1968, le contre Bologne (score final 0-0). Il dispute ensuite en tant que titulaire le match de la semaine suivante, un derby della Mole contre le Torino, perdu par les bianconeri 2-1, avant d'ensuite retourner sur le banc à la place de Roberto Anzolin.
En 1968, il rejoint la Lazio, en Serie B, mais ne parvient pas à se faire une place de titulaire, jouant seulement 9 matchs lors du championnat victorieux de Serie B 1968-1969. Il retourne à la Juventus pour une saison avant de retourner en Serie C, à Piacenza[1]. Il y joue deux saisons en tant que titulaire. En 1972 il quitte Piacenza[2] pour partir finir sa carrière à Asti puis enfin à Riccione.