Calculating the real costs of cloud computing

The focus on per-hour fees hides other critical cost components, and the lowest hourly costs can actually cost you more in total

I was pleased to see that my friend Dion Hinchcliffe has been doing some more deep analysis, including shedding some light on the costs of cloud computing and looking at the top cloud computing providers. He came to the following conclusions:

  1. is the lowest-cost cloud computing option overall, at least for production applications that need more than 6.5 CPU hours per day. Otherwise, Google App Engine is technically cheaper because it's free up to this usage level.
  2. Windows costs at least 20 percent more to run in the cloud.
  3. Subscriptions will be one of the lock-in models for cloud computing. Prepay for your cloud to get the most value, but you'll be committed to providers.
  4. Better elasticity does not confer major price advantages.
  5. You can't pay more for better uptime, and existing SLAs are not sufficient for important business systems.

[ Stay up on the cloud with InfoWorld's Cloud Computing Report newsletter. | Confused by the cloud hype? Read InfoWorld's "What cloud computing really means" and watch our cloud computing InfoClipz. ]

The fact of the matter is that cloud pricing is all over the place as contenders look to gain market share now and hold onto market share later. Indeed, as Dion pointed out, many are using cell-phone-plan-like subscription models to attract and lock in customers. I suspect you'll have the same trouble getting out of those contracts as you do with cell phone plans, so be careful.

More important, although the per-hour costs are indeed important, you also need to consider the hidden costs of cloud computing that go beyond what you'll be paying per hour.

The fact is that the true value of a cloud computing offering is directly related to the system's ability to meet the needs of architects, developers, and most importantly the end-user. An inexpensive cloud computing provider has no value at all if your developers are struggling to get the code dropped and the application debugged, or if the users are suffering system latency or failures on a regular basis. As Dion points out, you can't pay for better uptime, and the current use of SLAs is not going to cut it for mission-critical enterprise systems.

Thus, the key word here is "value." In the world of cloud computing, value has far more dimensions than just the per-hour cost of a cloud computing provider. Indeed, you could pay 20 times more per hour for a particular provider and get a better deal than with a cheaper competitor once you factor in the efficiencies the "costlier" provider brings to your enterprise.

The challenge is how to understand your own requirements and match those up with a cloud computing provider, if indeed using cloud is the right answer. You need to test at many levels -- including application development, deployment, database, and operational -- before signing on the dotted line. At the end of the day, the cost per hour is only part of the cloud computing cost equation you need to solve.