Even better is if you can plan your infrastructure on AWS around using spot instances. They can be really cheap (we're talking a 5x times cheaper then on-demand and 3-4x than reserved). If your instances are used in a stateless fashion with all persistent state saved externally (DB, S3, etc) then you can do some pretty cheap scaling with spot instances.
One setup I've played with is a core set of non-spot instances phalanxed by a number of spot instances (at a couple different price points) for stateless web traffic. As long as the spot price stays below your bid you have significantly more instances available (which should give your users better response times). When the spot price rises your spot instances die and things slow down, but your app would still be alive thanks to the non spot instances. Again it takes quite a bit more engineering to get a setup like this but this is the kind of thing you need to do to take advantage of elastic computing.