Gibb was educated at St Edward's School, Oxford, and Emmanuel College, Cambridge. He played first-class cricket for Cambridge University from 1935 to 1938. He was initially chosen as a batsman in his first year, 1935, and also started playing for Yorkshire. He scored 157 not out, his first first-class century and ultimately his second highest score in first-class cricket, in his first innings for Yorkshire in 1935, and toured in Jamaica in 1935–36 as captain of the Yorkshire team. Gibb kept wicket occasionally in his second year at Cambridge, 1936, deputising when Billy Griffith was unavailable. Gibb was controversially selected as Cambridge wicket-keeper in his third year at Cambridge, 1937, ahead of Griffith, and toured in India in 1937–38, scoring his third first-class century for Lord Tennyson's Team at Ahmedabad. He achieved his only double century in first-class cricket when he reached 204 for Cambridge University against Free Foresters in 1938, his first of four first-class centuries that year. In July 1938, the England wicket-keeper, Les Ames was injured, and Gibb was chosen to keep wicket for England in the third Ashes match against Australia at Old Trafford, ahead of candidates including Yorkshire's usual and well-regarded wicket-keeper, Arthur Wood. The Third Test was abandoned without a ball being bowled due to rain. Fred Price kept wicket in the Fourth Test at Headingley later in July, when Gibb was himself injured. Gibb remained out of the England team when Wood made his Test debut in the Fifth Test. Nevertheless, Gibb was chosen to tour South Africa in 1938–39 as Ames' deputy, although he played in all five Tests as a batsman, opening the batting in all five matches with Len Hutton. Gibb made his Test debut against South Africa in the First Test, at Johannesburg on 24 December 1938, scoring 93 and 106 He scored a second Test century in the Fifth Test, at Durban, in England's second innings in the timeless Test that was abandoned as a draw after 10 days of play. During World War II Gibb was a Royal Air Force pilot on Catalina and Sunderlandflying boats. He did not play again for England until the first series of England matches after the end of the war in 1946, at home against India. Gibb was selected as wicket-keeper in the first two Tests, but was replaced in the Third Test at The Oval by Godfrey Evans, making his Test debut. Gibb scored his second first-class century for Yorkshire in 1946, against Warwickshire. That winter, he kept wicket for England in the First Test at Brisbane on the MCC tour of Australia in 1946–47, but he was replaced again by Evans for the Second Test at Sydney. Thereafter, Evans remained a fixture in the side until 1959, and Gibb did not play for England again. In his eight Tests, he had scored three fifties and two centuries. Gibb did not play first-class cricket for four seasons, from 1947 to 1950, but joined Essex in 1951, becoming the first cricket blue to turn professional. This caused Marylebone Cricket Club to suspend his membership. However, he scored four first-class centuries in his first season for Essex. He remained with Essex for six years, to 1956, making 1,000 runs four times. He toured in India with a Commonwealth team in 1953–54, scoring a century at Jorhat. Gibb was an umpire in first-class cricket from 1957 to 1966, later becoming a bus driver in Guildford, Surrey, where he died suddenly in December 1977. His obituary appeared in the 1979 edition of Wisden.