Macpherson was born in Blairgowrie, Perth and Kinross, Scotland. He studied at Summer Fields School, a preparatory school near Oxford. He later studied at Wellington College in Crowthorne and Trinity College, Oxford.