Nato a Sampierdarena, iniziò a giocare nel club ligure La Dominante. Dopo un primo ingaggio nella Sestrese, esordì in Serie A con il Brescia il 2 febbraio 1930 contro la Cremonese. Tornò nel 1930 alla Sestrese, dove sarebbe rimasto una stagione prima di venire ingaggiato per un biennio al Padova, dove conquistò la promozione in Serie A. Nel 1933 è al Genova 1893 dove ebbe carriera breve, prendendo solo temporaneamente il posto di Manlio Bacigalupo.
Nel suo curriculum ci sono anche la Fiorentina, dove incassa 23 reti in 30 partite, e la Juventus, alla quale arrivò quando il Quinquennio dei bianconeri era terminato e non fu sempre il titolare indiscusso; l'allenatore Pozzo lo chiama in Nazionale durante questo periodo. Con la Juventus vinse la Coppa Italia 1937-1938. Al termine della sua avventura in bianconero passò all'Albenga e nel Liguria, girando un po' tutto il calcio ligure tra le due guerre.
Nazionale
Vanta sei convocazioni e una gara disputata in Nazionale, il 25 ottobre 1936 contro la Svizzera (4-2) e una in Nazionale B, giocata anche contro la Svizzera (5-0) il 2 aprile 1933.[2]
Allenatore
Diventò in seguito allenatore, guidando tra le altre anche il Cuneo,[3] la Sampdoria in Serie A e la Sambenedettese in Serie B. All'estero, allenò per due anni (1958-1959 e 1959-1960) il Lourenço Marques (Mozambico, allora colonia portoghese), dove scoprì il giovane Eusébio. Malgrado i tentativi, non riuscì a portarlo in club italiani a causa del blocco all'ingaggio di giocatori stranieri imposto dalla Federazione.
Statistiche
Cronologia presenze e reti in nazionale
Cronologia completa delle presenze e delle reti in nazionale ― Italia