Kolarstwo zaczął uprawiać w 1977 w LZS Piast Śrem. W 1982 występował w zespole LZS Wielkopolska, w latach 1983–1984 w Gwardii Katowice, w latach 1984–1989 w Orlętach Gorzów. W peletonie amatorskim zdobył drużynowo srebrny medal na igrzyskach olimpijskich w Seulu (1988 – razem z Joachimem Halupczokiem, Markiem Leśniewskim i Andrzejem Sypytkowskim) i mistrzostwach świata w Chambéry (1989) w drużynowym wyścigu szosowym na 100 km (w tym samym składzie). Ponadto reprezentował Polskę w indywidualnym wyścigu szosowym na mistrzostwach świata, zajmując 60. miejsce na MŚ w Giavera del Montello (1985), 72. na MŚ w Villach (1987) i 45. na MŚ w Chambéry (1989) oraz w wyścigu drużynowym, zajmując piąte miejsce na MŚ 1985 i siódme na MŚ 1987. Był trzykrotnym mistrzem Polski w jeździe indywidualnej na czas (1986, 1987, 1988) oraz mistrzem Polski w jeździe parami (1985 – z Lechem Piaseckim). Pięciokrotnie sięgał po wicemistrzostwo Polski (1985 w jeździe indywidualnej na czas, 1987 – w jeździe parami z Romanem Jaskułą, 1989 – w jeździe parami z Robertem Chełstowskim, 1983 i 1984 w wyścigu drużynowym na 100 km). Trzykrotnie sięgał po brązowy medal mistrzostw Polski (1989 – w jeździe indywidualnej na czas, 1984 – w jeździe parami z Dariuszem Zakrzewskim, 1988 – w – w jeździe parami z Robertem Chełstowskim).