Cloud GPU Price Index — specification
Version 1.3, October 1, 2026. This page states the rules the Cloud GPU Price Index is computed by, in the order a reader who wants to rely on it needs them. Every rule here is the rule the published number already follows: the sentences are generated from the same definitions as the computation, so they cannot say one thing while the index does another. Changes to these rules are versioned here and dated in the method changelog; a published final week is never recomputed under a later rule.
Contents: 1 What it measures · 2 Computation (2a every hour, 2b the month) · 3 Sources · 4 Calendar · 5 Withheld weeks · 6 History · 7 Governance · 8 What is not defined · 9 Use · versions
1. What it measures
The index is the median publicly listed on-demand rental price of one NVIDIA H100 SXM GPU-hour, in US dollars, across the cloud providers GPU Economy reads. It is computed at every hourly scrape and published three ways: the hourly series (2a), a weekly value - the last hourly point of each calendar week, Monday to Sunday, UTC - and a monthly average over a panel fixed before the month (2b). It measures rate cards: what a provider publishes as its price. It does not measure availability, transacted prices, negotiated prices or capacity.
A second series, the base-100 index, measures change: Chain-linked index, base week = 100: each week's link is the geometric mean of week-over-week price ratios over the (provider, region) pairs quoted in both weeks; the index is the cumulative product. A provider or region joining or leaving contributes no ratio and cannot move it. The base week is the week of September 7, 2026.
2. Computation
Median of the latest publicly listed on-demand H100 SXM rate of each (provider, region) pair, so a provider listing several regions enters once per region; node-priced offers divided by GPU count; spot and reserved excluded; marketplace floors (Vast.ai, price_scope=marketplace_floor) excluded; quotes listed in any currency other than USD excluded; a week is published only when at least 8 providers contributed.
One quote per (provider, region): the newest listed rate of each pair in the week. A provider that lists several regions enters the median once per region. weighting_check recomputes the same quotes as the median of each provider's own median: a check on what that rule costs, not a second index. A quote count counts rate cards, not GPUs available to book.
Community-cloud and serverless list prices do enter the index (today RunPod Community Cloud and Modal): each is a fixed hourly rate the provider publishes for one H100, not a marketplace floor. The card median elsewhere on the site leaves community capacity out, because it ranks rate cards you can hold; the index measures listed prices. Leaving the one community quote out would have moved each published week by about $0.025.
The median is the plain statistical median of the included quotes (the middle value, or the mean of the two middle values), rounded half up to the cent for publication; the base-100 series is published to one decimal. Both are reproducible from the receipt of the week with one command: /price-index/reproduce.
2a. The same index at every scrape
At every hourly scrape: the median of the newest USD on-demand H100 SXM listed rate of each (provider, region), read within the 48 hours before that scrape, marketplace floors excluded; published when at least 8 providers entered, withheld (no value) otherwise. The same rule as the weekly index, applied at each scrape instead of at the end of the week. Since October 1, 2026 each point is computed by the database the moment its scrape is stored and written together with its constituents (every quote, its read time, source URL and row); a point is never rewritten afterwards, and a later scrape cannot change an earlier one. A week's value is its last point rounded to the cent: the 48-hour window of the last scrape of a week lies inside that week, so the two series agree by construction (checked in both series: the week of September 21, 2026 had 26 quotes from 24 providers and closed at $3.7025, published as $3.70). Points before October 1 were backfilled on that day from the stored reads by the same function. File: price-index-hourly.csv; receipts: /price-index/hourly/YYYY-Www.csv. The average of these points over a month, over a panel fixed before the month begins, is section 2b.
2b. The monthly average and its fixed panel
The arithmetic mean over a calendar month (UTC) of the hourly index, each hour taken as the median of the month’s fixed panel at that scrape (hours with fewer than 8 panel providers left out); published when such hours cover at least 75% of the month, frozen at the first scrape of the next month and never recomputed.
A month’s panel is every (provider, region) present in at least 90% of the published hourly points of the 14 days before the 24th of the previous month, 00:00 UTC, decided by the database at the first scrape after that instant and never changed; a provider that qualifies later enters the next month.
Why an average over a panel: the weekly value is the last hourly point of its week, and one rate card changed late on a Sunday moves it; in the week of September 21, 2026 the hourly points ranged $3.69 to $3.97 and averaged $3.90 while the week closed at $3.70, because providers joined the open index that week. An average over every hour of a month cannot be moved by one late change, and a panel fixed before the month begins cannot be moved by who joins. Both the panel and the month are computed by the database from the stored hourly points, by the rules above, with no discretion; the panel of each month and every hourly receipt are published. September 2026 predates the panel rule and is averaged over every hourly point (panel open); October 2026 is the first month with a fixed panel (17 pairs, 15 providers, decided by the rule as of September 24). File: price-index-monthly.csv.
3. Sources and inclusion
- Sources. Each provider's own public pricing page or public API, read every hour at about 37 minutes past by GPU Economy's parser (the source registry names each page and what is read from it). No provider supplies a figure to us directly; no figure is entered by hand.
- A quote enters a week when its provider and region listed an on-demand H100 SXM rate during that week and the rate was read again within 48 hours of the week's last scrape. A rate the parser stopped confirming is out.
- Excluded by rule, and listed in the receipt as
included=falsewith the rule that applied:not_confirmed_48h: not read again within 48 hours of the newest scrape (for a closed week: of that week's last scrape)marketplace_floor: a marketplace floor (Vast.ai): it moves with supply and is not a listed rate cardeur_listing: listed in a currency other than USD: a converted figure would move with the exchange rate
- Panel. The hourly and weekly index have no fixed panel: every provider the parser reads that meets the rules is in (the monthly average has one, decided by rule before the month: 2b). Providers join when their page is read and leave when it stops being confirmed; the base-100 series is chain-linked over pairs present in both weeks precisely so that joining and leaving cannot move it. The composition of every week is in its receipt.
- Placement cannot be bought. No provider pays to be in the index or to be ranked; a referral arrangement with a provider, or a fee it pays on a reserved-quote request passed on through /reserved (since October 1, 2026), changes nothing here (link policy).
4. Calendar and publication
- Week. Monday 00:00 to Sunday 24:00 UTC. The current week (October 5, 2026) is provisional: recomputed on every hourly read, it settles when the week closes.
- Final value. The value for a closed week is final from the first build after the week's last scrape, normally within two hours of Monday 00:00 UTC. A final week is never recomputed, not for a late-read source, a corrected quote or a later change of rule. The newest final week is the week of September 28, 2026.
- Where. /price-index (the page), price-index.json and price-index.csv (the series), receipts at
/price-index/receipts/YYYY-Www.csv(one CSV per week with every quote, its source URL and read time; how to use them), and the archived copies at Zenodo (DOI 10.5281/zenodo.22706541) and Hugging Face. - Monthly. The figure for a period is the monthly average (2b), frozen at the first scrape of the next month; from October 2026, the first month with a fixed panel, the month's review on /market states it first. The review of a month on /market is a separate document: it takes the month's last weekly point as the month's end - a week that may run into the next month and still be provisional when the review is frozen, which the review then says - and is frozen as first published and never recomputed either.
5. When a week is withheld
A week is published only when at least 8 providers contributed a confirmed quote. Below that the week has no value: the page, the files and the receipt say withheld and why, and the base-100 series skips the week (the next link is computed against the last published week). No value is estimated, carried forward or interpolated. No week has been withheld since the series began on September 7, 2026.
Other events and what they do: a provider's page unreadable for a week — its quote drops out, the week is computed without it; the parser not running — quotes age past 48 hours and drop out, and past 7 days they are marked stopped on the site; the site not building — the previous build stays live with its Data updated time, and the receipts already written are unaffected. Every such event is visible in the receipt and in the changelog; none is corrected retroactively.
6. History and provenance
The series starts with the week of September 7, 2026, the first week published. Every weekly value is computed from reads made in that same week - the newest read of each provider and region, counted only if it was confirmed within 48 hours of the week's last scrape - and published with its receipt, the list of those quotes. No value was entered by hand, reconstructed after the fact or carried over from an earlier week. Closed months are published as they were first published and never recomputed.
price-index-history.csv is a separate series under its own name, rebuilt after the fact from a public price catalog, whose repository is named at https://gpueconomy.com/methodology#second-hand-history, for the weeks before September 2026. It is second-hand, and it is never merged into or back-filled with this one. The series starts on September 7, 2026; 4 final weeks and 5 receipts exist as of this build.
7. Governance and changes
- Publisher. GPU Economy. It sells no GPU capacity, issues and settles no contract on the index, holds no position in any market it measures and owns no provider in the panel (stated and dated).
- Rule changes are announced in the method changelog with a version number and a date, apply from the first provisional week after the change, and never to a final week. A change to the definition of the published figure carries
definitionChanged: truein the changelog. - Audit. A daily audit opens the source pages of ten live quotes and compares figure and label (methodology); its ledger is public in the repository. Anyone can recompute any week from its receipt.
- Data quality. Outliers and drops are flagged by rule, never removed by hand from a published week; a quote read wrongly is corrected for later weeks only.
8. What is not defined
Built to be cited; the free files may also be settled on (section 9). What a settlement reference needs and this specification does not provide, stated so that nobody assumes it (the value over a period itself is defined since version 1.2, section 2b): a fallback value for a withheld month or week; a fixed calculation time with a tolerance (today: the first build after the week's last scrape); a dispute procedure; an independent calculation agent; a notice period for rule changes (today: dated in the changelog, with no minimum lead); and an obligation to continue publishing. Each of these is a term of the licence described on /data, agreed per licensee, not a promise of the free data.
9. Use
The series and its receipts are free under CC BY 4.0 for any use, settling an instrument on them included: cite "GPU Economy" and the period and its vintage. A settlement licence adds what a free file cannot bind us to - the terms in section 8, the right to name the index as the reference with our agreement, signed and pushed values, custom indices: /data#settlement. Without one, the terms on /data apply: the figures are offered as they are, without warranty, and we are not a party to anything built on them.
Versions
| Version | Date | What changed |
|---|---|---|
| 1.0 | October 1, 2026 | First published: the weekly median, calendar, sources, receipts, withheld weeks, governance. |
| 1.1 | October 1, 2026 | The hourly series (2a): the index at every scrape, written once with its quotes. |
| 1.2 | October 1, 2026 | The monthly average and its fixed panel (2b). |
| 1.3 | October 1, 2026 | Wording only: sections 1, 3, 4 and 8 now agree with 2a and 2b (computed hourly; the monthly average has a fixed panel; the /market review is a separate document; the files may be settled on). Contents and this table added. No rule changed. |
Data updated: