H100$6.39/hr 1.2% 7d
A100 80GB$2.45/hr 0.5% 7d
H200$10.29/hr 0.8% 7d
L40S$1.28/hr 0.3% 7d
T4$0.24/hr 0.6% 7d
L4$0.45/hr 1.1% 7d
H100$6.39/hr 1.2% 7d
A100 80GB$2.45/hr 0.5% 7d
H200$10.29/hr 0.8% 7d
L40S$1.28/hr 0.3% 7d
T4$0.24/hr 0.6% 7d
L4$0.45/hr 1.1% 7d
Weekly Pulse
Methodology

Signwl GPU Price Index

Version1.0Last revised2026-05-25Effective from2026-01-08

This document specifies the methodology, data inputs, and maintenance rules for the Signwl GPU Price Index (SGPI). It is the canonical reference for analysts and downstream redistributors. Material methodology changes are tracked in the change log in §11.

1. Overview

The Signwl GPU Price Index (SGPI) is a daily reference series for the cost of cloud GPU compute. It is intended as a citable benchmark for analysts, investors, journalists, and academic researchers who need a single, transparent indicator of how GPU compute is priced across the major public cloud providers.

The SGPI is published in two distinct forms, each addressing a different question:

  • SGPI Level — an observation-weighted average price in USD per hour. Answers: “what does GPU compute cost today?”
  • SGPI Index — a chain-linked, base-100 index. Answers: “how have GPU compute prices moved on a like-for-like basis?”

The two series can and do diverge. The Level is sensitive to changes in the mix of GPUs being observed — when cheaper accelerators enter the basket or are sampled more thoroughly, the Level falls even if no specific GPU got cheaper. The Index, by construction, isolates pure price movement and is therefore the more appropriate series for time-series analysis and citation.

2. Cite this index

Recommended citation

Signwl. (2026). Signwl GPU Price Index (SGPI) [Data set]. Version 1.0. Zenodo. https://doi.org/10.5281/zenodo.20389052

Concept DOI (all versions)
10.5281/zenodo.20389052
Always resolves to the latest version.
Versioned DOI (v1.0)
10.5281/zenodo.20389053
Pinned to this specific v1.0 snapshot.

For most citations, use the concept DOI above so readers always land on the most recent version. Cite the versioned DOI when you need to pin to this specific snapshot — for example, when reproducing an analysis based on the data as it existed at deposit time. Always cite the methodology version: the published index values may be revised under the policy in §8; the methodology version controls the formula and rules used to produce them.

3. Data sources & scope

The SGPI is computed from Signwl’s consolidated cloud pricing dataset, which aggregates published pricing from the four major public cloud providers (AWS, Google Cloud, Microsoft Azure, Oracle Cloud Infrastructure) and is refreshed daily.

Each underlying record is a (provider, region, accelerator model, pricing tier, date) tuple with a corresponding $/hour price. Records are aggregated upstream of the SGPI into median daily prices per (accelerator, tier) pair, accompanied by the count of underlying observations contributing to that median. The SGPI reads from the resulting ticker_history series.

3.1 Accelerator scope

In scope: all GPUs (NVIDIA and AMD) offered as compute instances by tracked providers.

Out of scope: TPUs (Google), Trainium and Inferentia (AWS), FPGAs, and any other non-GPU accelerator. These are excluded to keep the index a clean read on GPU compute pricing specifically; a separate accelerator-broad index may be published in future.

3.2 Pricing tier scope

Four tiers are in scope and blended at the basket-item level: SPOT, ON_DEMAND, RESERVED_1YR, RESERVED_3YR. Savings Plans, custom enterprise discounts, and committed-use discounts are out of scope as their prices are not publicly observable.

4. Basket and weights

The unit of analysis is a basket item: a single (accelerator model, pricing tier) pair. Examples include (H100, SPOT) and (A100_80GB, ON_DEMAND). With 23 GPUs in scope and four pricing tiers, the basket can contain up to 92 items; in practice not all combinations exist (some GPUs are not sold reserved, for instance), so the live basket typically contains 60-80 items.

For each item on each day, a representative price is derived by averaging the underlying observations weighted by their observation count. This gives one price per item per day, which is the value used in both the Level and Index calculations.

Important — weights are coverage, not consumption

SGPI weights are observation counts — the number of underlying price records contributing to each item-day. This is a coverage and liquidity proxy. It is not a consumption quantity, a market share, or an expenditure weight. The SGPI therefore measures the price movement of the observable cloud GPU pricing universe, weighted by how thoroughly each item is sampled. It does not, and does not claim to, weight items by actual consumption or revenue.

This distinction matters for downstream interpretation. Superlative price indices in the strict economic sense (Fisher, Törnqvist) require quantity-share weights and are therefore not used here — the rigour those formulas claim depends on a weight semantics the SGPI does not provide.

5. The Level series (sgpi)

The SGPI Level on day t, denoted Lt, is the observation-weighted average of basket-item prices on that day:

Lt = Σi ∈ Bt ( wi,t · Pi,t )  /  Σi ∈ Bt wi,t

where Bt is the set of basket items present on day t, Pi,t is the price of item i on day t, and wi,t is its observation count.

The Level is reported to four decimal places in USD per hour. It is the simpler of the two series to interpret — a single $/hour figure for the price of GPU compute today — but it is also more sensitive to changes in basket composition. A clean read on price movement should use the Index series instead.

6. The Index series (sgpi_index)

The SGPI Index is a chain-linked series with a base value of 100 on 2026-02-01. Its daily movement is computed as the weighted geometric mean of price relatives across the basket items present on both adjacent days.

The daily chain ratio is:

Rt = exp( Σi ∈ Ct si,t · ln( Pi,t / Pi,t-1 ) )

where Ct = Bt-1Bt is the set of items present on both days, and si,t = wi,t / Σj ∈ Ct wj,t is the normalised current-day weight.

The index value is then propagated by simple chaining:

It = It-1 · Rt,     I2026-02-01 = 100

Index values for dates prior to the base date are derived by working backwards from the base value through the same chain ratios.

Why geometric, not arithmetic? A weighted geometric mean is symmetric: a 50% rise followed by a 50% fall returns the index to par, while the equivalent arithmetic mean would drift upward purely from the asymmetry. It is also more robust to outliers — a single item briefly spiking on thin coverage contributes its logarithm rather than its level, dampening the effect. The U.S. Bureau of Labor Statistics adopted a geometric formulation for CPI lowest-level aggregation in 1999 for these same reasons.

Why not Fisher or Törnqvist? Those “superlative” indices are designed to correct for consumer substitution behaviour using base-period and current-period quantity-share weights. The SGPI’s weights are coverage proxies, not quantity shares, so the substitution correction has nothing to correct. Using a superlative index here would imply a rigour the input data does not support. See §4.

7. Worked example

To make the formula concrete, consider a simplified three-item basket for two adjacent days. The actual production basket contains 60-80 items; the structure is identical.

ItemPt-1PtwtPt / Pt-1
H100 · SPOT$4.20$4.308,0001.0238
A100_80GB · ON_DEMAND$2.10$2.055,0000.9762
T4 · SPOT$0.35$0.352,5001.0000

Total current-day weight: Σ w = 8,000 + 5,000 + 2,500 = 15,500

Normalised weights:

sH100 = 8,000 / 15,500 = 0.5161
sA100 = 5,000 / 15,500 = 0.3226
sT4 = 2,500 / 15,500 = 0.1613

Chain ratio (log-sum then exponentiate):

ln(Rt) = 0.5161 · ln(1.0238) + 0.3226 · ln(0.9762) + 0.1613 · ln(1.0000)
        = 0.5161 · 0.02353 + 0.3226 · (−0.02410) + 0
        = 0.01214 − 0.00777
        = 0.00437
Rt = exp(0.00437) ≈ 1.00438

If the previous day’s index value was 99.00, today’s value is:

It = 99.00 × 1.00438 ≈ 99.43

In words: the deeply-weighted H100 rose 2.4% and the moderately-weighted A100 fell 2.4%; the geometric weighted average tilts slightly positive because of the larger H100 weight, lifting the index from 99.00 to 99.43.

8. Maintenance & revisions

8.1 Item entry and exit

Items enter and exit the basket organically. When a new accelerator is launched and begins appearing in the underlying pricing dataset, it joins the basket on the first day it has a valid observation. It contributes to a chain ratio from its second day onwards (a ratio requires prices on two adjacent days). When an accelerator is withdrawn and stops appearing, it simply drops out of subsequent chain ratios without breaking the series — this is the core benefit of chain-linking.

No minimum-observation thresholds are currently applied for inclusion; this may be revisited if items with very thin coverage are observed to introduce noise. Any change to inclusion rules would be a methodology revision (see §9) and recorded in the change log.

8.2 Gaps and imputation

The current series has 100% coverage across all calendar days from 2026-01-08 onwards (no missing days). Should a day be missing in future — for example, due to upstream pipeline failure — the chain ratio for the next available day is computed against the most recent prior day with data, treating the gap as if it were a single day. No interpolation or carry-forward is performed; values are simply absent from the series for the missing date.

8.3 Revisions

Historical values may change when underlying source data is restated by an upstream provider (a relatively rare but possible event — for instance, when a cloud provider corrects a published price). In such cases, all affected historical values are recomputed and the affected date range is recorded in the change log with a brief description of the cause. Citation users should consider always citing both the methodology version and the date of data access.

9. Versioning

Methodology versions follow a simple MAJOR.MINOR scheme:

  • MAJOR — changes to the index formula, the weighting scheme, the base value, or the unit of analysis (basket item definition). Major changes restart the chain-linked series at the new base.
  • MINOR — clarifications, additions to scope, or non-substantive changes (e.g., adding a new pricing tier to the basket without changing the formula). Minor changes do not restart the series.

The current version is 1.0, effective 2026-01-08. Historical methodology documents will be preserved at versioned URLs once a v2.0 is issued.

10. Distribution & contact

The SGPI is freely available without registration. Distribution channels:

  • Live pagesignwl.com/indices/sgpi
  • JSON APIGET https://signwl.com/api/sgpi (latest values) and GET https://signwl.com/api/sgpi/history (full series). No authentication required. Rate-limited at the network level only.
  • Permanent archive — Zenodo deposit at doi.org/10.5281/zenodo.20389052. Each major-version methodology snapshot is deposited as a new version with its own versioned DOI; the link above is the concept DOI that always resolves to the latest. Provides a permanent identifier independent of signwl.com URL stability.

Methodology questions, data restatement reports, or licensing enquiries should be directed to sarah@signwl.com.

11. Change log

Initial public methodology release. The SGPI is published as two series: an observation-weighted price level (USD per hour) and a chain-linked base-100 index (base 2026-02-01 = 100, weighted geometric mean of daily price relatives). Replaces the prior pre-publication form, which included separate “training” (SGPI-T) and “inference” (SGPI-I) sub-indices — both retired in this release in favour of a single, simpler, more rigorously specified series. Deposited to Zenodo under concept DOI 10.5281/zenodo.20389052.