Corse per la Ganna, la Legnano, l'Atala, l'Aiglon-Dunlop, la Mifa Olympic e l'Alcyon. Corse in Italia, Germania e Francia, distinguendosi soprattutto nelle corse a tappe. Partecipò a sette edizioni del Giro d'Italia tra il 1919 e il 1928, vincendo quattro tappe e concludendo quattro volte sul podio. Partecipò anche a tre edizioni del Tour de France tra il 1924 e il 1926, vincendo due tappe e concludendo due volte al terzo e una volta al quarto posto.