last refresh Nov 12, 2026, 06:37 AM UTC
Methodology
How WhichVM collects cloud VM specs and prices every day, how it normalises five providers into one schema, how equivalents and cheapest regions are computed, and the limits of the data.
Sources
public, unauthenticated price lists and APIs only
Amazon EC21415 instance types · 36 regions · fetched Nov 12, 2026, 06:37 AM UTC
- https://b0.p.awsstatic.com/locations/1.0/aws/current/locations.json
- https://b0.p.awsstatic.com/pricing/2.0/meteredUnitMaps/ec2/USD/current/ec2-ondemand-without-sec-sel/…
- https://b0.p.awsstatic.com/pricing/2.0/meteredUnitMaps/ec2/USD/current/previousgen-ondemand/…
- https://b0.p.awsstatic.com/pricing/2.0/meteredUnitMaps/ec2/USD/current/ec2-reservedinstance/…
- https://website.spot.ec2.aws.a2z.com/spot.js
- https://spot-bid-advisor.s3.amazonaws.com/spot-advisor-data.json
- https://pricing.us-east-1.amazonaws.com/offers/v1.0/aws/AmazonEC2/20261110173852/us-east-1/index.csv
on-demand published: 2026-11-10T17:38:52Z · price list: 20261110173852
Azure Virtual Machines1431 VM sizes · 63 regions · fetched Nov 12, 2026, 06:22 AM UTC
Compute Engine547 machine types · 43 regions · fetched Nov 12, 2026, 06:19 AM UTC
Akamai Cloud Compute75 plans · 33 regions · fetched Nov 12, 2026, 06:22 AM UTC
Vultr Cloud Compute135 plans · 36 regions · fetched Nov 12, 2026, 06:20 AM UTC
Google Cloud machine types and prices come from the open dataset published by gcloud-compute.com (Cyclenerd/google-cloud-compute-machine-types, Apache License 2.0), which is itself generated from the Compute Engine API and Google's price list.
Refresh schedule
A scheduled job runs every day: it downloads each source, validates every record against one schema, and refuses to publish a provider whose catalogue suddenly shrinks (a typical sign of an upstream outage) so a bad day upstream never empties the site. Valid data is committed and the static site is rebuilt and redeployed. Spot prices change during the day, so treat them as indicative.
What the numbers mean
- All prices are list prices in US dollars per hour, before tax, credits, free tiers and negotiated discounts. Monthly = hourly × 730.
- Akamai and Vultr cap monthly bills; their monthly figures use the cap.
- On-demand prices are for Linux unless stated. Windows, RHEL and SLES prices include the provider's licence fee.
- 1- and 3-year commitments are the provider's no-upfront rate: AWS Standard Reserved Instances, Azure Reserved VM Instances and Google Cloud resource-based committed use discounts. AWS partial and all upfront options and Azure savings plans are shown where offered.
- Storage, data transfer, IP addresses and other licences are billed separately and are not included.
- vCPU is the provider's vCPU (usually one hardware thread). Memory is in GiB. Local storage is the provider's stated size.
- Burstable means the CPU is shared or credit-based (AWS T, Azure B, GCP shared-core, Akamai Shared, Vultr regular plans).
Equivalents across clouds
Instances are matched by shape, not by name. The distance between two instances adds log-ratio differences in vCPU (weight 2.5) and memory (weight 2), so doubling counts the same at any size; accelerators must be of the same kind, with a penalty for a different model or count; different CPU architecture (+1.5), burstable vs dedicated CPU (+1.2), class (+0.5), previous generation (+0.8) and missing local storage (+0.4) add penalties. The closest current-generation instance on each other cloud is shown, ties broken by price. Performance per vCPU differs between processor generations, so benchmark before committing to a large migration.
Cheapest region
For each instance and pricing model the cheapest region is the minimum hourly price across the regions the provider sells it in. The finder does the same within the continent you choose. Government regions (AWS GovCloud, Azure Government) are excluded from cheapest-region results because they need separate accounts.
Open data
Everything on the site is also published as JSON, free to use with attribution:
- https://whichvm.com/data/search.json · every instance, one line each
- https://whichvm.com/data/aws/instances.json · prices: /data/aws/prices/{region}.json
- https://whichvm.com/data/azure/instances.json · prices: /data/azure/prices/{region}.json
- https://whichvm.com/data/gcp/instances.json · prices: /data/gcp/prices/{region}.json
- https://whichvm.com/data/akamai/instances.json · prices: /data/akamai/prices/{region}.json
- https://whichvm.com/data/vultr/instances.json · prices: /data/vultr/prices/{region}.json
- https://whichvm.com/llms.txt and /llms-full.txt for AI assistants
Limitations
- Azure's public price feed has no network bandwidth figures, and processor models are only shown where Microsoft documents them.
- AWS Mac instances are sold only as dedicated hosts and are not included; AWS local zones and Wavelength zones are not included.
- A size listed in a region may still be temporarily unavailable there (capacity), especially GPUs.
- Specs and prices are reproduced as published by each provider; always confirm on the provider's own pricing page before you buy.