Gordon was born in Forres on 24 June 1747, the sixth son of William Gordon, merchant.[1]
He trained as a minister at Marischal College, Aberdeen, graduating MA in 1765, was licensed by the Presbytery of Forres on 19 July 1768 and was ordained at Drainie on 28 September 1768.[1]
He served as minister of the parish of Drainie near Lossiemouth on the north Scottish coast from 1768.[1][2] His parish included the (then) fishing village of Lossiemouth.[3] The church dated from 1666.[4]
He was elected Moderator in 1815 replacing David Ritchie and succeeded in 1816 by John Cook. At this time Gordon had been minister of Drainie for at least 45 years.[5] He was made a DD by King's College, Aberdeen on 17 May 1815, the day before his appointment as Moderator.[1]
He was translated to St Giles Church in Elgin on 5 September 1815,[6] remaining in post until his death at Burghead on 29 June 1824.[1]