Johnson played non-league football for
Bangor City and
Altrincham before being signed by
Football League side
Bury in November 1977. He spent six years at
Gigg Lane and then had a relatively short spell with
Rochdale before moving to
Wigan Athletic in February 1984. 13 months later Johnson joined
Bristol City for £40,000, and he scored six times in the final 10 games of the season to seal promotion from
Division Four. Johnson then spent two years with Scunthorpe until he joined Chester on a permanent basis ahead of the
1988–89 season. He played regularly alongside
Carl Dale in the Chester attack as they narrowly missed the
Third Division play–offs. During his spell at Chester, his all action playing style earned him the nickname 'Mean Machine'. After spending the summer months playing in
Scandinavia, Johnson joined
Rochdale for a third time to bring the curtain down on his league career. He later played for
Limerick, where he made a scoring
League of Ireland debut on 1 September 1990, and in October 1990 he made one league appearance for
Cork City. He also played for non-league teams
Northwich Victoria,
Radcliffe Borough,
Castleton Gabriels,
Caernarfon Town and
Haslingden, while working as a financial advisor. ==Honours==