In addition to providing the flexibility to easily choose the number, the size and the configuration of the compute instances you need for your application, Amazon EC2 provides customers three different purchasing models that give you the flexibility to optimize your costs. On-Demand Instances allow you to pay a fixed rate by the hour with no commitment; with Reserved Instances you pay a low, one-time fee and in turn receive a significant discount on the hourly charge for that instance; and Spot Instances enable you to bid whatever price you want for instance capacity, providing for even greater savings if your applications have flexible start and end times.
On-Demand Instances let you pay for compute capacity by the hour with no long-term commitments or upfront payments. You can increase or decrease your compute capacity depending on the demands of your application and only pay the specified hourly rate for the instances you use. Amazon EC2 always strives to have enough On-Demand capacity available to meet your needs, but during periods of very high demand, it is possible that you might not be able to launch specific On-Demand instance types in specific Availability Zones for short periods of time.
On-Demand Instances are recommended for:
- Users that want the low cost and flexibility of Amazon EC2 without any up-front payment or long-term commitment
- Applications with short term, spiky, or unpredictable workloads that cannot be interrupted
- Applications being developed or tested on Amazon EC2 for the first time
Reserved Instances let you make a low, one-time, upfront payment for an instance, reserve it for a one or three year term, and pay a significantly lower hourly rate for that instance. You are assured that your Reserved Instance will always be available for the operating system (e.g. Linux/UNIX or Windows) and Availability Zone in which you purchased it. For applications that have steady state needs, Reserved Instances can provide savings of up to 71% compared to using On-Demand Instances. Functionally, Reserved Instances and On-Demand Instances perform identically. See "How to Purchase Reserved Instances" for more information.
Reserved Instances are recommended for:
- Applications with steady state or predictable usage
- Applications that require reserved capacity, including disaster recovery
- Users able to make upfront payments to reduce their total computing costs even further
If your needs change, you can request to move your Reserved Instance to another Availability Zone within the same region, change its Network Platform, or, for Linux/UNIX RIs, modify the instance type of your reservation to another type in the same instance family at no additional cost. You can also sell your Reserved Instances if you have a US bank account.
Spot Instances provide the ability for customers to purchase compute capacity with no upfront commitment and at hourly rates usually lower than the On-Demand rate. Spot Instances allow you to specify the maximum hourly price that you are willing to pay to run a particular instance type. Amazon EC2 sets a Spot Price for each instance type in each Availability Zone, which is the price all customers will pay to run a Spot Instance for that given period. The Spot Price fluctuates based on supply and demand for instances, but customers will never pay more than the maximum price they have specified. If the Spot Price moves higher than a customer’s maximum price, the customer’s instance will be shut down by Amazon EC2. Other than those differences, Spot Instances perform exactly the same as On-Demand or Reserved Instances. See here for more details on Spot Instances.
Spot Instances are recommended for:
- Applications that have flexible start and end times
- Applications that are only feasible at very low compute prices
- Users with urgent computing needs for large amounts of additional capacity