Over the past few years I’ve done a few posts highlighting the differences between various virtual hosting services, including Slicehost (which we use today and are happy with) and Amazon EC2 (which we’ve used on behalf of consulting clients and also like quite a bit). But as more virtual hosting products with different price points come to market, it’s getting more difficult to know where the value is. So every so often I go through list prices for various services to see who’s most competitive.
As I’ve noted in these posts before, Amazon EC2 has gotten much more competitive on price for medium-sized servers. They have no true low-end offering; they’ve ceded that to providers like Slicehost and Rackspace (which are now the same company). Last week Slicehost added new intermediate-sized virtual servers with more granular pricing (such as 384MB and 768MB). But as you can see in the chart below, they’re still not competitive with other hosting providers; even the corresponding Rackspace offering is about half the price at the smallest size available, and the value gap becomes more pronounced as the virtual machines get bigger:
(You can click on the chart to see it full size.)
You can make value comparisons between similar products on this chart by comparing points that are proximate. For example, if you’re thinking of getting a 512MB Slicehost virtual machine, it may be more cost-effective to go with a 720MB Linode machine (to get more than 50% additional RAM for an additional $1/month) or the 512MB Rackspace VPS (to save $20 a month).
It’s hard to fathom why Rackspace and Slicehost have such different price points since they’re the same company now. I’m sure there must be some kind of genius marketing strategy at work here, or maybe they just thought that nobody would ever plot this out. There’s also the inertia factor (it’s not worth it to us to migrate several web apps off of a $38/month Slicehost machine just to save $5/month on hosting). Anyway, at $21.90/month, the 512MB Rackspace Cloud virtual server seems like a spectacular deal, even though you only get 20GB of storage with that (same as the corresponding Slicehost product).
But once you get to the point where you need a decent amount of RAM (1.7GB or more), the Amazon EC2 offering becomes very competitive, even if you use an on-demand instance. If you pay for a year up front with a reserved instance, EC2 is an even better value. However, this chart doesn’t factor in the cost of storage and I/O, which for Amazon EC2 machines is metered and billed separately and will be different depending on what you’re doing.
In this comparison, I’ve added Linode pricing for the first time. I’ve never used these guys myself but their offering seems to be comparable to what Slicehost and Rackspace Cloud do, and I know people who swear by them.
Of course, this graph doesn’t compare other factors such as local storage and CPU because I wanted to keep the graph reasonably simple. I typically go with RAM as a basis for comparison because it’s the biggest differentiator in terms of performance for most web-hosting scenarios. CPU comparisons for virtual hosting are also challenging because nobody but Amazon EC2 gives you a firm guarantee as to what kind of processing power you’re paying for (which, to me, is scandalous — the VPS hosting industry needs some standard performance benchmarks, pronto). Suffice it to say that if your application is CPU-bound, you should be looking at some of the high-CPU EC2 machines (which aren’t represented on this chart).
I should also repeat the apples-to-oranges disclaimer: EC2 has capabilities and features that the competitors listed here don’t have, such as the ability to create machine images that you can spin up programmatically. Amazon also has a commodity load-balancing service (which is very reasonably priced, only $0.008 per hour) which we’re planning to use on a client implementation soon. Also, Rackspace charges separately for bandwidth, as EC2 does.
At the same time, the other providers have features and services that Amazon doesn’t have, such as included durable storage, free online support (the main reason why we stick with Slicehost for the low-end stuff) and free DNS hosting (which we used to pay for separately; now it seems as if everybody in the world except Amazon provides this).