Index / Method
How the index is computed
Version 0. Deliberately simple, fully public, and wrong in ways we can name. Every number on the site traces back to a price with a source link.
Prices
A price (we also call it a print) is one observed number: a sold listing, a shelf price, a tracker’s average, or later a transfer inside the network. Each carries a kind (sold, retail, ask, transfer), a scope, a condition, a currency, a date and a public URL. They come from the automated feeds on the Sources page and from operator uploads; nothing goes in without a URL.
Scope matters. sku means a price for the exact part number. class means a tracker average for that class of part, such as “lowest 32GB DDR5-6000 kit”. Class prices keep a part from going dark, but the index prefers exact-part prices whenever it has at least two.
The reference price
For each part, take every sold, retail and transfer price from the last 7 days and report the median. Fewer than two: widen to 30 days. None: fall back to asking prices and say so. Still none: show the last known price and mark it stale. Medians rather than averages, so one mispriced listing can’t move a part.
Public pages show the index as it stood 24 hours ago, with every window measured from that point. The /live endpoint sees everything and is metered with x402.
Confidence
Solid: three or more exact-part prices in the last 7 days. Thin: fewer prices, or class averages only. Stale: the newest price is more than 60 days old, and the part is left out of the headline prices. Most parts are thin today; that is a statement about our feeds, not about the market.
The 30-day change
Today’s median against the median of an earlier window that does not overlap it: days 23 to 45 ago for a 7-day median, days 31 to 75 ago for a 30-day median. Like for like: if today’s median uses exact-part prices, the earlier window may only use exact-part prices too. When there is no fair comparison the change is blank. We never print a made-up +0%.
Headline prices
DDR5 32GB, DDR5 64GB, DDR4 32GB, used RTX 4090, and the DDR5 to DDR4 per-GB ratio are each the median of the qualifying parts’ reference prices, not of raw prices. A headline 30-day change needs at least two parts behind it.
Daily series and exit signals
Every night at 00:15 UTC each part’s index is saved into a daily series. The exit signals read that series: 7- and 30-day momentum, consecutive down weeks, and five computed checks from the sealed-RAM exit checklist. Four more checks need outside data (contract price guidance, hyperscaler capex, retailer purchase limits, spot DRAM) and are listed as manual.
Every check has three states: fired, clear, or no data. No data means the input is missing (too few prices, or a series too short to measure), and it is never shown as clear. One part with two prices is not a market.
Custody fee tiers
A Keeper is paid to hold, and holding something volatile is more work: more frequent proof of holding, a bigger stake at risk, more disputes. So the custody fee scales with each part’s 30-day price range, measured from outside prices only, never from transfers inside the network, so the network can’t inflate its own fees.
| Tier | 30-day range | Fee | Per item per month | Proof of holding |
|---|---|---|---|---|
| T1 | 0% to 15% | 1× | $1.50 | every 30 days |
| T2 | 15% to 30% | 1.5× | $2.25 | every 14 days |
| T3 | 30% and up | 2.5× | $3.75 | every 7 days |
Base fee $1.50 per item per month, capped at 3×. Parts with fewer than three prices in 30 days default to T1.
Price types
Reference: what this site publishes. It sets no collateral and settles nothing. Executable: a price someone actually committed to in a transfer, only ever shown as such. Replacement: what it would cost to buy the same sealed item today, which is what a Keeper’s bond is sized against.
What version 1 fixes
Per-source weighting (sold over retail over asking), outlier trimming (drop prices more than two median absolute deviations out), new and used split apart, more exact-part feeds, and yen prices folded into the headline figures. All of it is listed because none of it is done.