How the calculator's numbers are sourced, computed and checked
Everything on these pages is a public AWS list price, fetched by a script every night, run through the formulas below, and checked before it is published. This page is the audit trail.
1. Sources
| Number | Source | How |
|---|---|---|
| On-demand and reserved (RI) rates | AWS Price List API (pricing:GetProducts) | Linux / Windows / RHEL / SUSE, shared and dedicated tenancy, "Used" capacity, no pre-installed software; RDS by engine and deployment, ElastiCache by engine, OpenSearch and Redshift as sold. |
| Savings Plan rates | AWS Savings Plans offer file for the region (AWSComputeSavingsPlan) | The discounted hourly rate AWS publishes per instance SKU, for Compute and EC2 Instance Savings Plans, 1 and 3 years, no / partial / all upfront. |
| Spot | ec2:DescribeSpotPriceHistory | Seven days per availability zone; we publish the time-weighted median (p50), the minimum and the maximum. |
| Specs | ec2:DescribeInstanceTypes | vCPU, memory, processor, network, EBS, storage, GPU and the "current generation" flag exactly as EC2 reports them. Non-EC2 services use the Price List attributes. |
| Currency | European Central Bank | ECB euro foreign exchange reference rates of 2026-11-06, re-based to USD (1 USD = 93.922526 INR, 0.895656 EUR). Never a hard-coded rate. |
2. Formulas
Effective hourly rate of a reserved instance
AWS quotes an RI as an upfront amount plus an hourly amount. We show one number per option: hourly + upfront ÷ (years × 8,760 h). That is the same convention the AWS Pricing Calculator uses for "effective hourly".
Monthly cost and break-even
A month is 730 hours (8,760 ÷ 12). On-demand and spot are charged for the hours you run: rate × hours × quantity. A reserved instance or Savings Plan is charged for every hour of the term whether you use it or not: rate × 730 × quantity. That is why a commitment only wins above a certain number of hours per month: break-even hours = commitment rate × 730 ÷ on-demand rate. The calculator's "best option" is simply the option with the lowest monthly cost at the hours you entered, with spot shown separately because it can be interrupted.
Usage patterns
24×7 = 730 h. Business hours = 10 h × 22 working days = 220 h. Nightly batch = 4 h × 30 nights = 120 h. Any other number can be typed in.
Newer generations and Graviton
For a given type we list every type with the same family letter and the same size in a newer generation (m5.large → m6i.large, m7g.large …), its on-demand price, the price difference, and vCPU per dollar as a floor on the performance gain. A Graviton candidate is flagged when it means moving from x86 to arm64, because that needs arm64 builds.
Cheapest regions
The same type's on-demand rate in every region that sells it, with the monthly difference at 730 h. Instance price is only part of a bill: data transfer, latency and residency rules can outweigh it.
3. Checks before publishing
- Structural: every type has a type name, family, vCPU and memory; every price is a positive number; every region file carries its build time and source list.
- Consistency: a 3-year rate is never above the 1-year rate of the same option; all-upfront ≤ partial-upfront ≤ no-upfront; an EC2 Instance Savings Plan is never dearer than the Compute Savings Plan of the same term; no commitment is dearer than on-demand; spot is never above on-demand.
- Freshness: a region file that fails to build keeps its previous version rather than publishing a partial one, and the index records each file's build time. The "Catalog updated" stamp on every page is that time.
- Spot checks against AWS: a script re-fetches a sample of types straight from the Price List API, the Savings Plans offer file and the spot history and compares them with the published catalog to six decimals. It is run after every change to the catalog code.
4. What is not in these numbers
- Tax, EBS volumes, snapshots, data transfer, load balancers, licences bought separately, support plans, private pricing and Enterprise Discount Programs.
- Regions your account has not opted into are still priced from the Price List, but their spot prices and specs may be missing.
- Reserved rates are for the region-scoped, size-flexible offering AWS lists; zonal capacity reservations are not modelled.
- The catalog is refreshed once a day; AWS can change a price between refreshes.
1,414 EC2 instance types across 34 regions at the last build. Prices are the property of Amazon Web Services; this calculator is not affiliated with AWS. Spotted a number that looks wrong? Tell us with the page link and we will check it against the source.