I was happy with Azure but just got a bill with “other” charges for $1k on what is a basic VM used solely as a db replica.
I’m pretty happy with azure. I’ve not used GCP but vs AWS I find permission management a lot nicer. I have yet to have a billing surprise that didn’t come down to me not reading closely enough.
What I don’t like is they sometimes lock private links (aka the ability to not have a service publically routable, only accessible on a vnet) behind premium SKUs, looking at you service bus.
I've been aware of some enterprise projects that are running on Azure, where from the description of how their architecture worked, I couldn't understand how they weren't drowning in network cost. It makes a bit more sense now if I know that Azure weren't charging people for some types of network bandwidth.