on Technology

Converting Amazon EC2 On Demand Instance to Reserved Instance

If you've created an Amazon EC2 On Demand instance and you later realize you'll be running the server indefinitely, you can convert the instance to a Reserved Instance to save some money.

However, there really isn't anything to "convert"; your existing On Demand instance stays running and you simply purchase a Reserved Instance inside the same Zone (this part is important, see below). It's entirely a billing thing and Amazon handles this seamlessly.

[...] the conversion of an on-demand instance to a reserved instance is purely a billing issue. Simply buy a reserved instance, and the instances will be billed as reserved instance. No changes need to be made to your AutoScaling group.

Please note that reserved instances currently need to be purchased for a specific AZ. In order to get the benefit of reserved instance pricing, your AutoScaling group should be configured to launch instances in those AZs.

For example, if you only buy a reserved instance in us-east-1a, you should setup your AutoScaling group to launch instances in us-east-1a. If your AutoScaling group is configured to launch instances in us-east-1a and us-east-1b, and AutoScaling launches an instance in us-east-1b, it will be billed as an on-demand instance unless you also buy a reserved instance in us-east-1b. (source)

Write a Comment



  1. What if I have two instances within the same AZ and I want only 1 of them to move from On-demand to Reserved? Which instance will be affected?

    • Think of a Reserved Instance more like a voucher discount code you use at a checkout. If you have a number of items in your trolley worth $40 and a discount voucher for $10 then you end up paying $30. But you don’t ask the question, and the shop can’t accurately answer “Which item in my trolley was this voucher applied to?”

  2. Great article!
    So, if i have 15 ON DEMAND t2.micro instances and i proceed to buy 1 t2.micro reserved instance for 1 year, automatically i’ll pay 14 ON DEMAND instances and 1 reserved, without modify any instance or configuration? that’s right? what instance will be “elected” to be the reserved instance?