instancefinder
InstanceFinder / Data & API

Open dataset & API

Everything the site renders is a free, public dataset: normalized specifications and pricing for every AWS, Azure, GCP, and OCI compute instance type, at stable URLs, rebuilt daily. No key, no sign-up, no rate limit — it's static files on a CDN.

There's no query API — because there's no server. The whole catalogue is small enough to fetch and filter client-side (that's exactly what /find does). Grab the files below and do the same, or load them into your notebook / warehouse.

Endpoints

Replace {provider} with aws, azure, gcp, oci, linode, or digitalocean, and {region} with a region id from that provider's manifest. All files are served gzip (Content-Encoding: gzip); browsers and most HTTP clients inflate transparently.

PathFormatWhat
/data/{provider}/specs.jsonJSONRegion-independent normalized specs (one array of instance types), including the new generation-lineage and GPU-interconnect fields.
/data/{provider}/instances.csvCSVThe same specs, flattened to CSV.
/data/{provider}/instances.parquetParquetThe same specs as Apache Parquet (Snappy). Ideal for pandas / DuckDB / Spark.
/data/{provider}/pricing/{region}.jsonJSONPer-region price map: {type: {platform: {od, spot, cmt1y, cmt3y}}}. One file per region.
/data/{provider}/manifest.jsonJSONRegion list, platforms (OS), and priceModels (on-demand / spot / committed) index. Small, low-cache.
/data/{provider}/dataset.jsonJSONVersioned descriptor of this provider's files (schemaVersion, counts, license).
/data/{provider}/refrates.jsonJSONEgress + block-storage list-price reference.
/data/{provider}/flex.jsonJSONFlexible/custom-shape bounds (GCP custom, OCI Flex) for synthesizing made-to-fit configs.

Pricing models

Each price cell may carry up to four models. Coverage varies by vendor (see each manifest.json → priceModels):

KeyMeaning
odOn-demand / pay-as-you-go (the canonical, comparable basis). Always present.
spotSpot / preemptible. AWS = cheapest-AZ current price; Azure/GCP = spot SKU; OCI = 50%-of-on-demand preemptible.
cmt1y / cmt3y1- and 3-year committed hourly-equivalent. AWS = Reserved (Std, No Upfront); Azure = Reservation amortized; GCP = resource CUD. OCI has no per-shape commitment, so these are absent.

Quick start

## everything cheaper than $0.50/hr on-demand, us-east-1, with DuckDB
import duckdb
specs = duckdb.sql("SELECT * FROM 'https://instancefinder.com/data/aws/instances.parquet'")

## or just the JSON, anywhere
curl -s https://instancefinder.com/data/oci/specs.json | jq '.[0]'
curl -s https://instancefinder.com/data/aws/pricing/us-east-1.json | jq '.["m7i.large"]'

The Content-Encoding: gzip header means curl may need --compressed; browsers and pandas/DuckDB handle it automatically.

License & terms

Public reference data compiled from each vendor's own public APIs and price lists. Provided as-is, with no warranty — verify against the vendor before relying on any number. Attribution appreciated (link back to instancefinder.com). Not affiliated with, or endorsed by, AWS, Microsoft, Google, Oracle, Akamai, or DigitalOcean; all trademarks belong to their owners.