O’Neill signed for Celtic in 1959, aged 18, and made his debut in the 1961 Scottish Cup Final replay against Dunfermline. Although O’Neill did not play in Celtic’s victory in the 1967 European Cup Final, he was an important member of the first team squad, making 32 appearances in the 1966–67 season. O’Neill made many of those appearances during the first few months of the season, as Jim Craig had temporarily dropped out of the team due to his dentistry studies.
At the time of O’Neill’s death, Craig remarked that O’Neill was a defensive-minded full-back, who rarely made forays into the opposition’s half of the field. This style of play was in keeping with the traditional function of the position, but full-backs were being expected to attack more by the mid-1960s. Indeed, fellow full-back Tommy Gemmell scored the equalising goal in the European Cup Final victory.
O’Neill made a total of 86 appearances for Celtic, 55 of those in Scottish Football League matches. O’Neill represented the Scottish League once, in 1968. He left Celtic in 1969 for Carlisle United, but was forced to retire just two years later due to an ankle injury.