Deployment That Just Works
blog.heroku.com
blog.heroku.com
For example, Heroku I'm sure will offer monitoring, backups, high-availability setup for webheads and databases, etc. That has added value to it and with EC2 you'd have to have several boxes to achieve that.
Plus, one thing that is oft-overlooked is burstability. With Heroku, you might have a pool that averages out to the capacity of 1 EC2 instance, but bursts higher. That's important. That means that you don't have to plan for peak capacity as much since their system will auto-adapt to handle it.
You could make a similar setup, but it wouldn't be cheap as you'd need multiple EC2 instances to handle what Heroku is giving you in terms of high-availability. Heroku isn't for everyone and it'll probably be a premium, but when you're a business that wants to stay up (vs. something where it doesn't matter if your reliability is a little lower) it's probably going to be a nice service.
It costs a lot of money to move from 99.5% to 99.9% or 99.99%. At 99.5%, you can just run one box and fire up a new instance when you realize that it went down. To get to 4 nines, you need monitoring, hot failovers, etc.