ChessCheatScan

How ChessCheatScan scores a chess game

ChessCheatScan guide · Updated

ChessCheatScan compares completed games with Stockfish and summarizes engine-like play for each player. The suspicion score is a statistical formula, not a trained cheating-detection model.

What goes into a report

The server parses a standard-chess PGN and analyzes each position with Stockfish. It requests up to five candidate moves, depending on how many legal moves exist. When the played move is outside those candidates, it evaluates that move separately. Search depth is configurable, so engine results are estimates at the configured search settings.

  • Top-choice agreement: how often scored moves match the engine's first choice.
  • Top-three agreement: how often the played move is among the first three choices.
  • Centipawn loss: the evaluation lost relative to the engine's preferred move.
  • Critical positions: positions where the first choice is at least 50 centipawns better than the second choice.
  • Mistake rate: the share of scored moves losing more than 100 centipawns.

How the score is calculated

The first four moves by each player and positions with only one legal move are excluded from the scoring sample. Top-choice agreement, centipawn loss, mistake rate, and critical-position agreement are compared with formula-based expectations adjusted for rating. If a rating is missing, the baseline uses 1500.

The formula combines those deviations, applies a logistic transformation, and maps the output to a score from 1 to 99. The report labels scores below 30 Low, 30–49 Moderate, 50–69 Elevated, and 70 or higher High. No score is produced when there are no scored moves. Top-three agreement is displayed as context, not a separate weighted input to the suspicion formula.

What the number does not mean

A score of 80 does not mean an 80% chance of cheating. The baselines are modeling assumptions, not a published calibration against a representative, independently labeled dataset of honest and assisted games. We do not claim a verified detection accuracy, false-positive rate, or ability to establish that a player cheated.

Short samples, forcing positions, strong preparation, unusual ratings, and engine search limits can affect the result. Selective assistance can also escape a single-game analysis. The tool has no access to private platform evidence such as account behavior or device information.

What batch scanning adds

Pro batches analyze up to 20 recent games separately and save the results in your game list. They make comparing reports easier; they do not compute a combined account-level probability or a fair-play verdict.

About the project

ChessCheatScan is an independent tool and is not affiliated with Chess.com, Lichess, or the Stockfish project. The engine is Stockfish. Questions or a report that looks wrong? Contact support@chesscheatscan.com with the scan link and what you noticed.

Reports are accessible to anyone with their link. Read our Privacy policy before sharing one. If you suspect a fair-play violation, use the chess platform's reporting process.

Take a closer look at your game

Find a finished game by username, paste a PGN, or use a game link. Two free scans per week; no account required.

Analyze a game