Answers are grounded in this paper and cite their sources.
A chess engine tells you how much a move lost. It does not tell you what the move was trying to do, or what kind of mistake it was. I built a classifier that puts a name on each serious threat (20 types), each real mistake (21 kinds in seven families) and on whether a player punished the opponent's mistake, and ran it on 16,678 rated Lichess games in blitz, rapid and classical, one game per player in each cell, across fourteen 100-point bands from 1000 to 2300+. The names were checked in two ways. In the two recorded review rounds, 88 % of labels and then 19 of 19 labels on fresh games were correct or acceptable. On games the model never saw, the type of threat predicts whether the defender's next move is a real mistake, beyond how hard the position is (AUC 0.647 to 0.675). The most serious third of threats is missed 29 % of the time and the least serious third 12 %, for small and big threats alike. Across the ladder, players set the same kinds of threats at every level, but the opponent misses them less and less: 36 % at the bottom and 9 % at the top in classical. Per move, stronger players set slightly fewer threats. Beginners mostly give up material; at the top more of the mistakes are allowing a tactic, and a slip that allows a tactic is the hardest one to punish at 4 of 5 levels. Between equal players the winner sets only slightly more threats than the loser. The numbers behind the paper are open at https://labs.foreseener.com/chess/ and the classifier runs in the Foreseener Feed at https://foreseener.com/. The records are available on research request.
No takes yet. Share an insight, caveat, or question.
Athipan Thiyada Sridharan (2026) studied this question.
Synapse has enriched 5 closely related papers on similar clinical questions. Consider them for comparative context: