Campbell joined the army as an ensign of the 37th Regiment of Foot on 25 June 1771 and was appointed lieutenant in the 7th Fusiliers on 9 May 1774, serving in Quebec, where he was taken prisoner in the Siege of Fort St. Jean in 1775. On his release he continued his American war service in the 71st Regiment of Foot (Fraser's Highlanders), being appointed a captain in December 1775, and a major of the 74th Regiment of Foot (Argyleshire Highlanders) in December 1777.