Our numbers, explained
Different questions need different measurements, so several rates appear across this site. Each one is defined here in one line, with the same definition used everywhere it appears. All of them come from the same public, Bitcoin-anchored ledger, misses included.
Area Skill Score (ASS): 0.5 is no skill. The operator number: given how much ground we hold under alarm, do we catch more earthquakes than alarming that same fraction at random would? Our forecasts sit slightly below 0.5, that is slightly below chance. The current score is in the table below. This is the number that cannot be gamed by widening: alarm everything and it converges to 0.5 by construction. We publish it because anyone can compute it from this ledger, and a scoreboard that made them do that work would deserve the suspicion.
Brier Skill Score (BSS): 0 is no skill. The pricing number: are our stated probabilities better than quoting the long-run base rate? Every figure is out-of-sample, from an expanding-window walk-forward. After per-model recalibration, most models are positive on an n-weighted mean of per-model out-of-sample BSS (Aug 2026; the live figure and per-model breakdown are on /track-record). Recalibration is monotone, so it improves BSS and leaves ASS unchanged. The two answer different questions, and only reporting both is honest.
Coverage of M6.0+ quakes (last 30 days): of every M6.0-or-larger earthquake on Earth in the last 30 days (USGS catalog), how many were preceded by a logged forecast that later matched. The live count is on /marcador and /track-record. Coverage says how much of the world's significant activity we had a call on. It is not a skill claim, because wide standing coverage of active belts makes matching easier.
When-issued rate (30 days, M4.0+ floors): of the forecasts we issued with a magnitude floor, how many verified with an event at least that large in the named place and window. The live figure is on /track-record. It is not a skill claim. It conditions on a forecast having been issued and says nothing about how much ground was under alarm to get it. That is what the Area Skill Score above measures, and it is the stricter test. A comparison this paragraph used to cite, against a simple model built from past rates, has been withdrawn: the two numbers were not measured on the same forecasts.
Forecast match rate (14-day, settled 30-day, all-time): the share of earthquake forecasts that had a matched event in their window, on fully settled windows. Every forecast is counted, none is removed, and the numbers are final once the window closes. The live figures are on /track-record. This is coverage, not skill: a wide regional window catches common quakes, and the Area Skill Score above is the skill number. Different time ranges answer two questions: how is it going lately, and how has it always gone.
Full-magnitude rate (companion): the strict version of the seismic hit rate. A forecast counts only if a matched event reached the full predicted magnitude floor. Standard accounting also credits events up to 0.5 magnitude below the floor as partial matches (about 1 in 5 recent matched earthquake forecasts were credited that way, 90-day audit, Aug 2026). Both numbers come from the same live API, published side by side; neither replaces the other.
Contamination-excluded rate (companion): the seismic hit rate recomputed with every forecast whose inputs were later proven fabricated removed from both the numerator and the denominator. Those forecasts are annotated, never deleted: the ledger and its hash chain stay byte-identical, and both numbers are published side by side.
Lead time (for example, 10.5 days ahead): the gap between when the forecast was logged (provable via its Bitcoin-anchored hash) and when the earthquake happened.