EC2 Reserved Instances: are they a good deal?

Amazon today announced a plan that makes EC2 boxes a bit cheaper to rent for customers who use the box 24/7. It’s called a “Reserved Instance”, and it basically means you pay a certain amount up front in exchange for a large discount for either one or three years.

Is this a good deal
? As always, it depends. Let’s assume that you actually use a certain base number of servers from amazon 24/7 (like we do at slideshare). Ignoring bandwidth costs, a small instance costs $.10/hr * 24 hrs *365 days = 876$/year (or 73$/month).
With the one-year plan you’d pay 325$ up front, and ($.03/hr *24 hrs * 365 days), which ads up to 325 + 263 = $587, or a 32% savings. Your monthly cost ends up at 49$/ month.
Things get better on the three year plan. Here you pay $500 in exchange for the right to the .03/hr pricing for three years. Your total cost ends up being $500+ ($.03/hr *24 hrs * 365 days * 3 years), which is $1289 for three years, a 52% savings. Your monthly cost comes down to $35 / month.
So this seems like a good deal, but there’s some caveats. You have to pick what size instance you are going to prepay for: if you prepay for a small and it turns out you need a medium, there is no recourse. Also, you are having to pay money up front, which is definitely a negative (one of the great properties of AWS is the “pay by the drink” model which lets you pay for services AFTER you use them rather than before. This is obviously great for your cash-flow). Finally, reserved instances are not available for Windows servers yet, only for Linux ones.
A 52% discount is nothing to sneeze at, so if you’re sure you’re going to be using a particular machine type 24/7, it makes sense to take advantage of this program. A smart way to do it might be to move one machine over, and then pay for subsequent reserved instances over time with the savings. This way you can avoid committing too much money up front (which is never a good idea, especially in a recession).