The GPU compute price index.

Hourly USD rental rates for the GPUs the AI economy runs on — measured across independent venues, aggregated and manipulation-resistant, then printed on-chain every ten minutes. Free to read, free to verify. No key.

spec v0.1.0 cadence 10 min settlement 72 h TWAP governance timelocked
IndexLast print24hSources Grade Coverage 24hStatus
loading live data…

Coverage counts ten-minute prints published against prints expected over the trailing day. A missing print is never interpolated: when the pipeline cannot compute an honest value, the slot stays empty. Settlement grade needs enough independent sources — below that, an index publishes for display only.

§1

The index

Each index observes public rental markets and reduces them to one number per tier, every ten minutes, under the following clauses. Parameters marked [param] are governed behind a timelock — 48 hours on this deployment, so a change is visible for two days before it is live.

§1.1

Observation

Listed prices are drawn from each venue's public API.

§1.2

Normalization

Observations are reduced to a versioned hardware specification — for the flagship, H100 SXM 80 GB, on-demand, cluster-capable. Other form factors are scaled to that specification and compared in USD per GPU-hour.

§1.3

Aggregation

Qualified observations from independent venues are combined into a single tier index. Many observations; one mark.

§1.4

Publication

Each value is posted on-chain, where anyone can read the mark, its timestamp and its age. Settlement never reads a single print: it takes a 72-hour TWAP of the published series.

§1.5

Freeze, don't fabricate

A tier that lacks sufficient independent coverage goes STALE — visibly, on-chain. It is never estimated or interpolated. A missing print means we did not have an honest number, and the record keeps the hole. Every other clause depends on this one.

Coverage and carry rules exist and are enforced per source, so one flaky API cannot flap a whole tier STALE; what is never carried is the published number itself. Per-tier status — including whether a tier clears the bar to settle a contract — is published on this page and on /v1/indexes.

§2

Sources

Independent venues with machine-readable public pricing. Live counts update on the sheet above; this ledger records which venues carry which silicon.

VenueKindCarries
Vast.ailisted offersH100 · 4090 · 5090 · A100
RunPodlisted pricesH100 · H200 · A100 · L40S · B200
Akashlisted price statsH100 · A100
io.netlisted tier pricesH100 · H200 · A100
Cudo Computelisted machine pricesH100 · A100 · L40S
Vultrcloud plan sheetL40S
DataCrunchinstance price sheetB200 · H200 · H100 · A100 · L40S
Clore.aiP2P marketplace asks5090 · 4090
Shadeformmulti-cloud price sheetB200 · 5090
OCIpublic price listB200 · H200

A venue is admitted when it publishes machine-readable pricing, survives the consensus band against the existing panel, and is independent of existing sources. One broker (Shadeform) is admitted, for supply no direct adapter reaches; every cloud we already poll ourselves is stripped from its rows before they enter the panel, so no operator is counted twice. Non-USD venues wait for FX normalization.

§3

The API

No key, no auth, CORS enabled. Please cache for sixty seconds; if you build something real on this data, tell us — the index is the product.

# the whole index family, one call $ curl https://tesselex.xyz/v1/indexes # default window: 7 days of 10-minute prints, every index $ curl https://tesselex.xyz/v1/index/history # the venue's solvency identity, recomputed from public state $ curl https://tesselex.xyz/v1/solvency
GET /v1/indexes
Every index with its latest mark (markUsd), staleness flag, source count and 24-hour statistics. The composite and the H200−H100 basis spread ride along.
GET /v1/index/history
Default window is the last seven days of prints per index; retention is deeper and reachable with ?since= / ?until= (unix seconds), ?index=, ?limit=, and ?interval=1d for daily closes (last print per index per UTC day). The response carries a meta block stating the interval, the retention and the default window, so a consumer never has to infer what it received — {ts, index, usd, sources} — timestamps on exact ten-minute boundaries, one print per boundary, gaps preserved honestly.
GET /v1/solvency
The clearing identity, live: pool = Σcollateral − Σbasis, Σequity = pool, residuals in wei — they must be zero. Verify it from your own machine.
GET /v1/trades · /v1/products
The public trade tape (house accounts disclosed) and the listed instrument set with open interest.