Xapo to Xapo and Coinbase to Coinbase is totally free, because their transactions are off-chain, totally on their site. Another reason why you technically shouldn't trust them. You don't have access to your own private keys, and your bitcoins aren't even in the same wallet most of the time. They are just numbers that their server moves around, like credit. You don't have a specific wallet assigned to you. It's ugly.
The problem with super high fees nowadays I'd getting worse and worse. Its understandable that Coinbase and Xapo have to stop paying fees because they're getting horrendously expensive.
I am quite sure that Coinbase to any other wallet is free too. I have used Coinbase and it has paid the transaction fees for all my transactions other than the ones that I have physically added a fee to improve the transaction times.
Moreover, another problem with using a 'wallet which is free for transactions' is that the confirmation times can vary incredibly. It can increase incredulously. I would not suggest you use such a wallet. If you are using a wallet, like Coinbase, make sure to add an appropriate transaction fee.