The first constituency to change hands in Tayside and Fife was one expected throughout the campaign to be settled by the narrowest of margins.
However, the 10pm exit poll predicting a comfortable SNP win proved much closer to the truth for the Ochil and South Perthshire battle between the Nationalists and Conservatives.
Tory MP Luke Graham lost his seat after two years, as the SNP landslide swallowed the seat spanning Clackmannanshire and half of Perth and Kinross.
The surge in SNP support across the country saw John Nicolson pick up 7,000 more votes than the previous SNP candidate, Tasmina Ahmed Sheikh in 2017.
The former East Dunbartonshire MP cruised to victory by taking the Conservatives’ 3,300 majority and adding a further thousand votes.
The exit poll had suggested Mr Nicolson had an 88% chance of winning the seat.
Accidentally mistaking the Ochils for East Dunbartonshire – his former seat – was quickly forgiven by voters who got behind his messages of halting Brexit and stopping Boris Johnson.
Mr Nicolson said: “We want MPs who will go down to Westminster and stand up for Scotland, not to represent Westminster in Scotland.
“I have only one intention when I go down to Westminster and that is to fight for this constituency and to fight for Scotland every single day.
“Boris Johnson is ghastly enough now. Can you imagine what he will be like with this huge majority?
“Thanks to my team who have worked tirelessly over the past two and a half years. ”