Sad to say if you bought with banks/credit/debit cards that is always the case aside from fees you are buying those coins at highest possible price, that is not a volatility issue, that is always the case if you are buying with credit cards. If you are not convince try other platform like binance. I have notice it on variuos platforms, like binance, Trustwallet, Blockchain wallet, etc. they are all the same, maybe that is their way so they could earn more from us.
EDIT: Just test binance now, their rate is more cr*zy look at that difference.
Card payments are seen as more convenient by many people that just don't know any better. And in some instances like for example in America, even domestic bank transfers can take long and often are quite expensive. So it can be convenient to pay a small levy and just get coins if you need them fast.
But for the merchant completing a large volume of card transactions, it is often that they face card fraud. So this is what makes cards really expensive for crypto, along with the bank fees of course. It's not always a good comparison.
Coinbase wallet also takes bank deposits, like a normal exchange. This should make buying with bank funds cheaper, but they apply the same fees.