Who would have thought that the party of Gordon Brown could win back the seat vacated by Michael Martin, who resigned in June in the wake of the MPs expenses scandal.
That, though, is just what has happened. Jim Murphy, the Scottish secretary, says: "This is a humiliation for David Cameron; his face was on every Tory leaflet. They obviously thought he was an electoral asset." The Guardian says that the Tories' lacklustre result will damage their efforts to build up momentum for the general election.
The British National party came in fourth, just behind the Conservatives, despite losing its deposit. The Conservatives got 1,075 (5.2%) of the vote, the BNP 1,013 (4.9%). A close-run thing.
And another straw in the wind is the turnout. Among the 62,475 voters, it was only 33 percent, the lowest ever in a Scottish by-election. Low turnout and minority parties getting good (for them) votes - an dangerous mix. The Tories have not got the general election in the bag.
This could change, of course. General election dynamics are usually different from by-elections, but if I was Cameron, I'd be worried.