On the evaluation date, a published forecast is compared against the threshold stored with it and settled. There are three outcomes and a fourth state that is not an outcome, and the difference between them is where most published accuracy claims quietly fall apart.
The four states
- Hit. The observed series met the threshold inside the window.
- Miss. It did not. This is a failure, it is counted as one, and it gets a page like any other.
- Unresolvable. The window passed and the evidence needed to settle the call never arrived, usually because attribution coverage stayed below the floor. It is never counted as a hit and never counted as a miss.
- Running. Issued, inside its window, not yet settled. Not a result at all.
Why the accuracy rate has a specific denominator
The headline rate on the track record is hits divided by hits plus misses. Running calls and unresolvable ones are reported separately and are in neither half of that fraction.
This is worth stating precisely because the obvious implementation is wrong in a way that is hard to see. Treating the outcome as a boolean puts every unsettled call in the denominator as a failure, so an engine that has just published ten fresh forecasts appears to have got ten things wrong.
Treating unresolvable as a hit does the reverse and is worse, because it converts an absence of evidence into evidence. Both mistakes are common, so the arithmetic on the record page is pinned by automated checks that fail if either one comes back.
Calibration, which is the harder claim
A hit rate says how often the engine was right. Calibration says whether its confidence means anything: of the calls published at around eighty percent, did about eighty percent land? A forecaster can have a good hit rate and be badly calibrated, and the fix for overconfidence is to recalibrate rather than to reword the page. The curve is published in buckets alongside the rate.
What gets indexed, and what does not
A settled call is published for anyone holding the link, but it is only submitted to search engines once it clears an evidence bar: a minimum number of distinct signal types behind it, a minimum stretch of observation between the call and its evaluation, and a minimum number of points on the series.
That bar is there for two reasons and only one of them is about quality. Publishing thin pages at scale is the most reliable way to get an entire domain classified as spam, which would take the good record pages down with the weak ones. Keeping the weak ones readable but unindexed costs nothing and protects the archive.
Where to look next
The signal sources explains where the readings come from and what happens when one of them starts lying.
