I don’t have a lot of data on cost, but there is a threshold for when it’s worth handing over the infrastructure to a cloud provider. This is speaking strictly to the cost of running cloud instances in dollars spent, and nothing else, but I have heard from a few people that realized a physical server in a co-lo facility was more cost effective than the charge per time used in a cloud instance.
There are also cases inverse of that, and some cases where building cloud infrastructure internally seems to be the way to go. Large cable TV providers are doing a lot of internal cloud work. They know when peak demand for various television and other media is, and can fire up a bunch of virtual servers to handle the load, and then remove them from the host and spin up other servers to do different tasks in the downtime.