As Lord Dalmeny he was a prominent cricketer. He played two first-class matches for Middlesex in 1902. He served as captain of Surrey from 1905 to 1907. He played in 102 first-class matches in all, scoring 3551 runs at an average of 22.47, including two centuries. His highest score was 138 against Leicestershire in 1905, when he added 260 for the sixth wicket in 130 minutes with J. N. Crawford.Wisden 1975, p. 1082. He was a hitter of notable powerWisden 1906, p. 136. and though never consistent he could on occasions "knock the best bowling all over the field", as when he hit 58 against Nottinghamshire on a difficult wicket at The Oval in 1905. Against Essex in 1906 he scored 52 in 37 minutes in the first innings and 58 not out in 45 minutes in the second.Cricket, 22 August 1907, p. 362.
