John Hayes (born 6 August 1939) is a former Australian rules footballer who played with Fitzroy in the Victorian Football League (VFL).
A defender, Hayes came to Fitzroy from Warracknabeal. Hayes captained Fitzroy for most of the 1966 VFL season, replacing Ralph Rogerson, who retired five rounds into the year.
On 6 July 1963, playing as first rover, he was a member of the young and inexperienced Fitzroy team that comprehensively and unexpectedly defeated Geelong, 9.13 (67) to 3.13 (31) in the 1963 Miracle Match.
He then moved to Yarrawonga, a club which he would captain-coach.