These two services behave so differently, it's hard to do a real cost breakdown. It depends on your app. Here are some issues with comparisons between EY and Heroku (I'm leaving Joyent out because I have no experience with them):<p>1. There's no reason to believe that 6 mongrels on an EY small EC2 instance == 6 thins on whatever EC2 size Heroku is using. They need to be benchmarked.<p>2. DB Performance needs to be benchmarked. EY uses MySQL, Heroku uses Postgres or Amazon RDS (MySQL). I've heard that their postgres db is substantially faster than RDS.<p>3. Heroku gives you varnish, and it doesn't cost you any dynos. If you can use cache control headers, varnish is your friend. On EY you'll likely use Rack::Cache, which is fine, but it hits a mongrel. Heroku also does gzip and SSL before it hits your server, also saving you cycles.<p>4. App server redundancy with EY is expensive since you need a whole other small EC2 instance, with Heroku all your dynos are spread out.<p>5. If you want instant database failover (using MySQL replication), this is a extremely easy on EY, with Heroku it takes more work, you have to launch your own RDS instances. Of course, a small RDS instance is only $80/mo, beating EY and Heroku's DB offerings on price. RDS will have replication soon, probably at a lower price than EY. Of course, neither EY and Heroku haven't to my knowledge announced plans to drop their prices in November when amazon drops their EC2 prices by 15%. This would make both more competitive vs RDS.<p>6. EY likely has a better economy of scale, a 5ECU EY instance ($197 vs $125 for a 1ECU small) is probably more cost effective for CPU heavy requests than Heroku Dynos.<p>7. EY support ain't free. Keep in mind that EY support and monitoring are only there if you pay major extra $ on top of your infrastructure. It can easily nearly double your costs depending on your plan.<p>The cost of either one really will vary depending on which features you use heavily.