As with the flip over taking an emergency quota of Syrian refugees, which had the support of every parliamentary party, Key lagged behind public opinion but eventually caught up. If he had dug in on that issue and not moved when he did, he would have been vilified.
Keeping Red Peak off the ballot paper is hardly in the same league as an emergency intake of refugees in terms of potent issues.
The reason for National changing its mind was not down to fear of a public backlash or the merits of putting a popular flag on the ballot, but a realisation that the political benefits outweighed the reputational damage over another about-turn.
An approach from the Green Party's chief of staff, Andrew Campbell, to National Party chief of staff Wayne Eagleson on Tuesday presented an irresistible political opportunity for National.
It would give a win to the Green Party which would upset Labour no end. That was reason enough for National. But it would also add some much needed vitality to Key's flagging referendum process.
Key offered Labour the same win last week in getting Red Peak on the ballot paper after a 50,000-signature petition was presented to MPs including Labour's Jacinda Ardern. But Labour stymied it by setting conditions National could never be expected to agree to. It wanted the referendum question changed and potentially the process to change by including a yes/no vote along with the five flags in the first referendum.
While Labour was hung up on process, the Greens went with simplicity. It became clear to National in talks this week, that the Greens did not want a change in the process but just wanted the simple addition of another flag.
So the deal was hatched: when Gareth Hughes' bid to introduce a bill failed, with New Zealand First's objection, National would take the bill itself.
Labour has been the loser so far. It has opposed the flag referendum despite having policy to do the same, has been interminably outraged by a process that isn't outrageous, and despite the leader liking Red Peak, refused to help it on to the ballot. The Greens did that.
And, on cue, Labour was very, very upset about the Greens dealing with National.