I understand the fee is a bit low but 12 sat/b fee should have by all indicators been confirmed by now.
Any idea why it takes longer than that?
The same as always... You got caught out by a massive spike in price followed by a massive spike in Bitcoin transactions... followed by a massive spike in fees as everyone man and his brother attempts to cash in on the pump:
Your transaction is still ~18 blocks from the top of the pile... and that is assuming that ZERO more transactions are added. I'd predict your waiting time is going to be several more hours at a minimum.
For the record, bitcoinfees.earn.com is a terrible predictor... you're better off using:
https://jochen-hoenicke.de/queue/#0,24hor
https://btc.com/stats/unconfirmed-txBut you should note that unless you put in the "next block" value for the fee, it's quite possible you can get caught out by a massive spike while you're waiting for your "within an hour" fee transaction to confirm
Also, using RBF is a great idea, as you can bump your fee as required if you need faster confirmations when this sort of thing happens.