ChessGrader / Guides / Centipawn loss explained
Centipawn loss explained
A centipawn is 1/100 of a pawn of engine evaluation. Centipawn loss is how much evaluation your move gave up compared to the engine's best move, and ACPL — average centipawn loss — averages that over a whole game.
That's the whole definition. Everything else — accuracy scores, move grades, "estimated game rating" — is built on top of this one number. Here's how it works, what a good ACPL looks like at each rating, and where the metric breaks down.
A worked example
Say the engine evaluates your position at +1.50 — you're better by the equivalent of one and a half pawns, which is 150 centipawns. The engine's best move keeps it at +1.50. You play something else, and the engine now says your position is worth +0.90.
| Evaluation | In centipawns | |
|---|---|---|
| Best move available | +1.50 | 150 |
| Your move | +0.90 | 90 |
| Centipawn loss | 60 |
You lost 60 centipawns — a bit over half a pawn of advantage. Do that on every move and the engine keeps a running tab. Sum the losses, divide by the number of moves, and you have your average centipawn loss (ACPL) for the game. Playing the engine's best move costs 0. There is no negative centipawn loss — you can't beat the engine's top line by its own accounting.
Good ACPL by rating
These are rough ranges from public community data, for rapid-to-classical games. Treat them as honest approximations, not lab results. Fast time controls push everyone's ACPL up.
| Level | Typical ACPL |
|---|---|
| Beginner (under 1000) | 70–120+ |
| Club player (1000–1600) | ~40–70 |
| Expert (1600–2000+) | ~25–40 |
| GM (classical) | often under 20 |
This relationship is stable enough that ChessGrader uses it for its estimated game rating — a log fit of ACPL against community rating data, rounded to the nearest 25. It's explicitly a vibe, not a measurement: one game is a tiny sample, and time control changes everything.
Why centipawns get converted to win probability
Raw centipawns have a problem: the same loss matters wildly different amounts depending on the position. Dropping 100 centipawns in an equal game (0.00 → −1.00) turns a draw into a losing position — a real disaster. Dropping 100 centipawns when you're up +9.00 changes nothing; you're still completely winning.
So modern grading converts evaluations to win probability first, using a logistic curve — ChessGrader uses 50 + 50·(2/(1+e^(−0.00368208·cp)) − 1), the same family Lichess uses. The curve is steep near 0.00 and flat at the extremes, which encodes exactly the intuition above: centipawns are precious in balanced positions and nearly free in decided ones. Move grades like Inaccuracy, Mistake, and Blunder are then defined as win-probability drops (10%, 20%, 30%), not raw centipawn drops. The full formula and thresholds are on the methodology page.
ACPL vs accuracy: two views of the same data
ACPL and accuracy are computed from the same per-move losses — they're two summaries of one dataset.
- ACPL is a plain average, in centipawns. Lower is better. It's simple and comparable across games, but a single huge blunder in an otherwise clean game gets diluted.
- Accuracy runs each loss through an exponential curve and combines them with a volatility-weighted average and a harmonic mean, producing a 0–100% score where one catastrophe still leaves a mark.
If you want one number to track over time, ACPL is arguably the better one — it's less flattering and less noisy. Accuracy is the friendlier headline.
Limitations
Centipawn loss is the best simple metric we have, and it still has blind spots:
- It depends on the engine and depth. A deeper search can change the evaluation of both the best move and yours, so the same game produces different ACPL on different sites. ChessGrader uses a fixed 100,000-node search per move so its numbers are at least consistent with themselves.
- It doesn't know why you lost the centipawns. A principled positional decision the engine dislikes and a hung knight can cost the same 300 centipawns.
- It rewards easy games. Forced sequences and one-sided positions produce low ACPL regardless of skill — the same inflation problem accuracy has.
- Mates break the scale. "Mate in 3" isn't a centipawn number, so forced mates need special handling — ChessGrader's rules for that are part of its move classification system.
Frequently asked questions
What does centipawn loss mean in chess?
A centipawn is 1/100 of a pawn of engine evaluation. Centipawn loss is the difference between the engine's evaluation after its best move and after the move you actually played. If the best move kept you at +1.50 and your move left you at +0.90, you lost 60 centipawns.
What is a good average centipawn loss (ACPL)?
Roughly: beginners often average 70-120+ centipawns per move, club players around 40-70, experts around 25-40, and grandmasters often under 20 in classical games. These are approximations from community data, and faster time controls push everyone higher.
Is lower centipawn loss always better?
Lower means you matched the engine more closely, which is generally good. But ACPL is inflated downward by easy games — forced sequences and won positions produce low loss automatically. A low ACPL in a sharp, balanced game means much more than the same number in a one-sided one.
Why do different sites report different centipawn loss for the same game?
Because they run different engines, versions, search depths, and settings. A deeper search can change the evaluation of both the best move and yours. Differences of a few centipawns per move are normal and expected.
What is the difference between centipawn loss and accuracy?
They are computed from the same per-move data. ACPL is the plain average of your centipawn losses, while accuracy converts each loss through an exponential curve into a 0-100% score and combines them so that one big blunder is not averaged away. Same underlying measurements, two summaries.
Can centipawn loss be negative?
No. Centipawn loss measures how far your move fell short of the engine's best line, so the minimum is zero — achieved by playing the engine's top move. If your move looks better than the engine's first suggestion at a deeper search, that is a depth disagreement, not a negative loss.
How is centipawn loss handled when there is a forced mate?
Forced mates do not have a meaningful centipawn value, so grading systems handle them with special rules. In ChessGrader, taking a longer route to a forced mate is never punished, and losing a forced mate while still winning is graded a Miss rather than a maximum-loss blunder.