GPU Economy

How GPU Economy collects prices

Every number on this site was read from a page or API the provider publishes, by an automated parser that runs every hour. Nothing is estimated, averaged in from third parties, converted between currencies, or filled in by hand. This page explains what that means in practice.

One unit: US dollars per GPU per hour

Providers quote in different shapes — per GPU, per 8-GPU node, per second, per instance with a bundled CPU. We store the quote exactly as listed, together with how many GPUs it covers, and the database derives the per-GPU-hour rate. Where a rate was divided, the page shows the original quote and the divisor next to it (for example, $49.24/node ÷ 8), so the normalization is auditable rather than silent. Per-second serverless rates are multiplied by 3,600.

What a figure covers: price scope

Providers sell different things under “per GPU-hour”. Every row carries a scope, shown as a tag next to the price wherever it is not a plain instance:

Medians and the Price Index include all scopes; the tag lets you discount a figure that is not like-for-like. The scope is also a field in prices.json.

Three price types, never mixed

Providers partition prices differently

The “region” column holds whatever the provider itself uses to split prices: a geography, a data center, or a tier such as RunPod's Secure and Community Cloud. Those are never averaged together. For marketplaces (Vast.ai) we record the floor — the cheapest verified, rentable, single-GPU offer — and label it as such.

What is deliberately not on the site

Freshness and history

Prices are re-read every hour and stored append-only, so every figure has a capture time and the history is never rewritten. The changelog lists every change between consecutive reads; the Price Index is a weekly series on top of the same data. Each page states when its data was last updated.

Sources, as of

18 of 27 listed providers are currently scraped, covering 13 GPU models.

ProviderSourceStatusNotes
Cudo Computepublic APIscraped hourlyPublic machine-types API. gpuPriceHr is the GPU component only - vCPU/RAM/storage billed separately, a runnable instance costs more.
GMI Cloudpricing page (HTML)scraped hourly
Nebiuspricing page (HTML)scraped hourly
RunPodpublic APIscraped hourly
Vast.aipublic APIscraped hourlyauction pricing, API only
DataCrunchpublic APIscraped hourly
Hyperstackpricing page (HTML)scraped hourly
Jarvislabspricing page (HTML)scraped hourly
Lambdapricing page (HTML)scraped hourlyPricing page lists per-GPU rates for 1x/2x/4x/8x configs (old per-node note is stale). 1-Click Cluster reserved rates are contact-sales, not scraped.
Modalpricing page (HTML)scraped hourlyper-second serverless
OVHcloudpublic APIscraped hourlyUS catalog only (USD). H100/A100 sold from FR regions in EUR - not scraped.
Together AIpricing page (HTML)scraped hourly
Vultrpublic APIscraped hourly
Amazon Web Servicespublic APIscraped hourlyEC2 on-demand, Linux, us-east-1 only; instance price stored per node with GPU count (p5 = 8x H100). Spot needs signed API calls - not recorded.
CoreWeavepricing page (HTML)scraped hourlyRate card priced per 8-GPU HGX node - parser stores per_node with gpu_count, DB derives per-GPU. GB200 and B300 on-demand are quote-only; B300 spot is published.
Google Cloudpublic APIscraped hourlyCloud Billing Catalog API (needs GCP_API_KEY). Plain per-GPU-hour SKUs in US regions, cheapest region kept; commitments/reserved/DWS skipped. GPU component only - A3/A2 VMs bill CPU and RAM separately. Some spot SKUs carry usageType OnDemand; type is decided from the description.
Microsoft Azurepublic APIscraped hourlyRetail Prices API, Linux VMs; cheapest region per SKU kept, region = armRegionName. ND/NC series priced per VM, stored per node with GPU count. Spot recorded; Low Priority skipped.
Oracle Cloud (OCI)public APIscraped hourlyPublic price list API, already per GPU per hour, single global list price. Cloud@Customer SKUs skipped.
Scalewaypricing page (HTML)not yetNOT SCRAPED: prices in EUR only (fr-par/pl-waw). A converted USD figure would not match the source page a reader follows - needs an FX policy decision first.
TensorDockpublic APInot yetNOT SCRAPED: marketplace API returns an empty hostnode list after the Voltage Park acquisition (checked Sep 2026). Re-check later.
Crusoepricing page (HTML)not yetBlackwell quote-only
Latitude.shpublic APInot yetbare metal
Massed Computepricing page (HTML)not yet
Paperspacepricing page (HTML)not yetmulti-GPU per-node - normalize
Saladpricing page (HTML)not yetconsumer GPUs only
Voltage Parkpricing page (HTML)not yet
SesterceJS-rendered pagenot yetneeds headless browser

Retail prices

Purchase prices come from marketplace listings with a stated condition (new, refurbished, used). The site shows the 30-day median per condition and links each listing; accessory listings and implausible prices are filtered out. Retail coverage is being built out.

Affiliate disclosure

Some provider links may become referral links. That never affects which prices are shown, how they are normalized, or how providers are ordered — every table is sorted by price.

Using the data

The Price Index is published under CC BY 4.0, withJSON and CSV downloads;prices.json carries every current quote with its source URL. Attribute as “GPU Economy” and link the page you used.

Data updated: