DiamondOps
Back to News
Feature· 5 min read

We Checked Diamond Radar's Prices Against What Cards Actually Sold For

Diamond Radar tells you what a card should be worth. We spent this release checking that number against what cards actually sold for — and fixing it where it was wrong.

The number on most cards wasn't a prediction

When Diamond Radar doesn't predict an upgrade for a card — about 87% of the cards we price — it was showing the median price of other cards at that rating, under a label that said "predicted".

That answers a question nobody asked: "what does an average 78 cost?" It was also worse than a number already on the card — its own buy-now price.

Those cards now show their own price, and each card tells you which kind of number you're looking at: a real forecast, or a fair-value anchor. If we haven't predicted a move, we say so instead of dressing up a stranger's price as a prediction.

A stub price in July doesn't mean what it meant in March

We tracked 680 Live Series cards whose rating never changed all season. If stub prices were stable, so were theirs:

  • 85–87 rated cards fell to 0.61× — roughly 8,500 stubs in March, 3,700 in July
  • Cards under 65 rose to 1.60×

The top deflates as better cards arrive; the bottom inflates as stubs pile up. It's compression, not inflation — which is why there's no single "market is down X%" correction to apply, and why we didn't invent one.

The prediction itself was never affected: it compares a card to its peers on the same day, so the seasonal drift cancels out. What was wrong is that we showed you the raw number as though it were durable.

Predicted price now comes with a percent change alongside it. If you're comparing anything over time — a card you noted last month, a board you saved — use the percentage. The raw stub figure decays under you, and at different rates depending on the tier.

Published boards also record the price level they were published at. A board from six weeks ago quoting a diamond price is roughly 40% off in real terms, and nothing on it used to say so.

Prices that ran backwards

At the bottom of the ladder, cards trade at a handful of whole-stub values. Take a "median" from three listings parked on the quick-sell floor and it's a coin flip between 6 and 8 stubs.

The result: 293 cases where we priced a card cheaper at a higher rating. A 52 worth less than a 49, on paper.

Prices now only rise as rating rises, within a position and a rarity tier — and never across a tier boundary, because that boundary is a real price cliff, not a rounding artifact.

We applied this only where we measured the problem. Above 65 the pricing was already accurate, and when we first "fixed" it there we made it worse — pushing prices 8–19% above what cards actually sold for. Real sale data caught that, and we pulled it back.

Comparing against cards that can actually upgrade

Only Live Series cards ever receive OVR upgrades. The price comparison was including every other series — cards that can never do the thing we were predicting. It's Live Series only now, so an upgrade is priced against the cards it could actually become.

The Radar stopped vanishing

If you ever opened a card and found the Radar panel simply gone, this was why: while the nightly scoring run worked through the catalog, the card list and the card page disagreed about which run to read. For about 50 seconds, the list showed a partial set and card pages reported "not scored" for everything not yet processed.

Both now read the last completed run. And it wasn't only a 3am problem — it happened on every manual rescore too.

We grade ourselves on price now, not just on calls

We already publish our hit rate on upgrade calls. Price was the gap.

Across three scoring windows we had a complete record of what every price actually did — and we had never recorded what we predicted. Nothing could be scored against anything.

That's fixed. From the next roster update, every prediction is frozen when a window is approved, real prices are captured at 24 hours, 48 hours, 7 days and 14 days, and results are broken out by rating band. Three alternative pricing methods run quietly alongside the live one, so the next time we change how prices are calculated, the change has to win on real outcomes before it ships.

That last part is the actual point of this release. The correction we had to pull back is exactly what happens without it.

The track record shows how we're wrong, not just how often

The public accuracy page goes deeper this release:

  • Where the misses go — predicted upgrades that never came, versus real upgrades we missed, split into near-misses, weak reads, and ones we had no signal on at all
  • How close we get on size — not just whether a rating moved, but whether we called how far
  • Hit rate by confidence band, across the whole season rather than one window at a time

Every number ships with its sample size. If a slice only has a handful of predictions behind it, you'll see that instead of a meaningless 100%.

Why this release looks like this

Nearly everything above started as us measuring our own numbers and not liking the answer. The price predictions lost to a simple "the price won't change" baseline. The 87% figure was a surprise. The backwards prices had been shipping for months.

We'd rather find those ourselves and tell you. The grading we've added means the next one gets caught by data instead of by us happening to notice.