I was discussing just this with my friend yesterday. AWS remains many multiples more expensive than managing their own hardware; additionally their main office's internet connection remains less than perfect (which is a whole other wildcard.)
The question is, what happens when the cloud is cheaper than doing it yourself?
However, running on the cloud also requires cloud-specific adaptation and engineering, it's not free.
The cost comparison is usually skewed in the cloud's favor because people tend to compare "server-quality" local hardware with cheaper-than-basic-PC level hardware in the cloud. The real win here is that you don't need super fancy hardware to run fairly reliably. It's not just the hardware costs, it's that when you run "unusual" hardware, you're going to have to do more administration/training. Beyond that, the cloud's advantages are trickier.
I think commoditization of computing - which is what the cloud is all about - is a valuable trend. But the benefits of specific clouds are often vastly oversold, suggesting that it's somehow magic pixie dust that avoids all sysadmin duties; or that it's the only or best way to limit those costs. Also, there's this idea that you really, really need multiple redundant servers for ever menial website out there, because that three-hour outage of your cats pics is going to be terrible. And that presumption makes the cloud more attractive, since presumably outages there simply mean you spin up a new instance (even though that is also not always so simple).
One of my duties as an IT manager in a big enterprise a few years back was running an install group. 7-10 FTEs, two trucks and lots of budget for rental vehicles and expenses. Most of their job was installing servers in the field and arguing with landlords about specific requirements we had (ie, 30 amp electric service, a/c in the closet, certain types of locks, etc)
Today? The office's admin calls whomever the preferred telco partners are and gathers quotes for internet service. That group is gone.
Also, never underestimate the cost of bureaucratic waste. In the place I work in now, I can probably jot down 6-10 names whose main work functions could be replaced by pull down menus on a webpage. When you outsource parts of your business, those functions tend to go away.
In larger companies most hardware is run at about 10% capacity for about 10 hours of the day. Worse are data centers which cost 100s of millions to make and sit unused.
I've done some analysis for a large company that spends about 500 million a year on IT infrastructure. Biggest expense? People, second network, after that trails mainframe and Microsoft OS licensing as well as Oracle. Server hardware cost everyone loves to talk about but actually was quite low.
Things like AWS cut network, people and can commoditize vendors such as Oracle and MSFT. Biggest savings is on not wasting time on racking hardware.
The cloud already is cheaper. Just for some reason your belief system only recognizes AWS and ignores Digital Ocean, Linode, Rackspace, Joyent, and about a thousand other smaller companies.
The question is, what happens when the cloud is cheaper than doing it yourself?