Start with the hardware and the terms
A useful comparison starts before the arithmetic. H100 PCIe and H100 SXM are different configurations. An hourly price for one GPU and the per-GPU share of an eight-GPU server describe different commitments. Mixing them can produce a number that no customer can actually use.
Our initial baskets fix the exact model, memory class, one GPU per instance, on-demand billing and USD currency. Listings must be reported available by a provider with live stock tracking, classified as secure, and recently observed. Spot, reserved and peer-to-peer offers are excluded. The methodology documents the remaining differences, including region, CPU, RAM and additional charges.
One provider contributes one floor
A raw average across all listings gives more influence to providers with more regions, sizes or duplicate offers. GPUIndexes first selects one floor for each provider: its lowest qualifying quote across the observed eligible configurations.
The median is the middle provider floor, or the average of the two middle floors when the count is even. This limits the influence of unusually high or low quotes without inventing an arbitrary price cutoff. The following is an illustrative calculation, not a market observation.
| Provider | Eligible prices in this example | Contribution |
|---|---|---|
| A | $2, $2.50, $3 per hour | $2 |
| B | $4 per hour | $4 |
| C | $8, $9 per hour | $8 |
What the reference tells you
The illustrative provider floors are $2, $4 and $8, so the reference is $4 per GPU-hour. That is neither the minimum price nor the average completed transaction. It describes the middle of the provider floors in the observed basket.
Because available providers can enter or leave the basket, a reference may move even when the remaining providers do not change their own prices. Always read the coverage count alongside the price. It is a market observation with a changing sample, not a constant-provider transaction index.
Coverage and missing observations matter
We require three distinct provider entries before publishing a reference. A smaller sample is shown as limited coverage, with the source quotes still available for inspection. An absent price is null, not zero.
The historical record begins when an observation is actually saved. We do not backfill the series from older mixed catalog data, interpolate missing days, or manufacture a seven-day change before a matching prior observation exists. Each archived record carries a capture timestamp and methodology version.