The fee is 1% using a bank account. I just set up an account with Breadwallet and bought $20 of bitcoin as a test. Funded from my savings account so it will take about a week to go through. Charged me $20.21. I could have used a credit card but didn't want to, not sure what the fee would have been doing that.
Fees with a credit or debit card tend to be super high, even if you verify your identity. Coinbase's fees are around 4%.
These embedded services are always going to be more expensive than normal exchanges just for the convenience - companies feel that they can get away with it because people can't be bothered going to a real exchange.
Just like with the Blockchain.info buying feature, people shouldn't be using it for anything more than a test.