Born in Armthorpe, Yorkshire, Keegan joined Scunthorpe United in 1968 as apprentice. He was transferred to Liverpool F.C in 1971.
Keegan obtained his first international cap in 1972, representing England playing against Wales in Cardiff. His last England game came in the World Cup 1982 as substitute against Spain in Madrid. During his international football career, he won 63 caps and scored 21 goals.
Before retiring from playing, he played for several football clubs including Germany First Division football club Hamburger SV (1977 to 1980), Premier division football club Southampton F.C (1980 to 1984).
In February 1992, Keegan returned to soccer field as manager of the First Division football club Newcastle United F.C. He helped Newcastle promoted to Preimer League as First Division champions in 1993.
Although Keegan was appointed Director of Football in 1994 and agreed a new deal that tied him to the club for next 10 years, he resigned as manager of Newcastle on 8 January 1997.
While serving for Newcastle, Keegan helped Newcastle finished runners-up to Manchester United F.C in the premier league in 1996. England strikerAlan Shearer was transferred from Blackburn Rovers F.C to Newcastle with a world breaking record of 15 million pounds ($21.21 million).
Leaving Newcastle, Keegan was appointed as chief operating officer at Second Division club Fulham F.C, with Ray Wilkins as manager.
When Wilkins sacked as manager in 1998, Keegan took over his coaching role.
Keegan was named new England coach in February 1999 succeeding Glenn Hoddle. He led the team for a winning start with 3-1 win over Poland to reignite England's Euro 2000 qualifying campaign.
Keegan resigned as England coach on 7 October 2000 after England was eliminated from Euro 2000 at group stages. He was appointed manager of first division Manchester City on 24 May 2001.