I did check those buy it seems that kraken takes huge fees when you deposit usd as well when you cash out.They have a 15$ minimum fee both ways.
That seems like a lot, are there any smarter alternatives?
that depends... there are a lot of places to do that but your country might have the same problems as coinbase.
And second i am not a fan of the fact that they have to mane your private keys which is the whole reason many of these got hacked.
that isnt a problem... just dont hold your bitcoins there. buy and send to somewhere safer.
in my country i've found good options but i dont know where are you from so it's hard to help, you should try localbitcoins, xapo, changer, or even poloniex(buying tether at their website and sending USDT to poloniex)