Best AI Chess Helper

Disclosure: this site is made by the ChessHelper team, and ChessHelper (chesshelper.ai) is our own product. How we handle that.

Explainer

How AI chess helpers work

By the Best AI Chess Helper team (ChessHelper) · Published and updated

An AI chess helper such as ChessHelper (chesshelper.ai) looks simple from the outside: you open a position and a few arrows appear. Underneath, three separate systems do the work. A search looks ahead through possible moves, an evaluation scores the positions at the end of each line, and a presentation layer decides how much of that to show you and at what strength.

This guide explains each layer in plain terms, then walks through one real opening position with engine output we checked ourselves. It is the background you need to judge any helper, and to read our buying checklist with a critical eye.

Wooden chess set with light and dark pieces lined up on a board
Photo: Mikkel Houmøller, Wikimedia Commons, CC BY-SA 4.0.

The three layers at a glance

Almost every modern chess tool, from a free analysis board to a paid browser extension, is built from the same parts. What differs is how each part is tuned and what reaches your screen.

LayerWhat it doesWhat you see
SearchLooks ahead through move sequences and keeps the most promising onesDepth number, best line, alternative lines
EvaluationScores a position, today usually with a neural networkA number such as +0.45, or a mate count such as M2
PresentationFilters, limits strength and formats the resultArrows, an evaluation bar, move labels, written explanations

A chess engine treats the game as a tree. The current position is the root, each legal move is a branch, and each reply branches again. The starting position alone has 20 legal moves for White, and the tree grows so fast that no program can look at every line to the end of the game.

Engines cope by pruning. Alpha-beta search skips branches that cannot change the final choice: once one reply refutes a move, the engine does not need to examine every other reply to that move. Good move ordering makes pruning far more effective, so engines try captures, checks and the previous best move first.

Search also runs in rounds. With iterative deepening the engine searches one move deep, then two, then three, and keeps the best answer from each finished round. That is why an analysis panel shows a depth counter climbing and why the top move can change in the first seconds. Depth counts half-moves, called plies. Forcing lines such as checks and captures get extra depth, so the real horizon is uneven.

Most tools ask the engine for more than one line. This is called multi-PV (multiple principal variations). A helper that shows three arrows is usually displaying the engine's top three lines, each searched almost as carefully as the first.

Neural evaluation: scoring the positions

At the end of each searched line the engine needs a verdict on the position. Older engines added up hand-written terms: material, king safety, pawn structure, piece activity. Current Stockfish uses NNUE, an efficiently updatable neural network. The Stockfish project ships the network as a file with a .nnue extension, and it is fast enough to be called millions of times during a search.

A second family of engines follows the AlphaZero design. Leela Chess Zero, an open-source project, uses a much larger network that outputs both a score and a probability for each move, then searches far fewer positions with more selectivity. Both approaches reach superhuman strength.

A third idea matters for helpers specifically. The Maia project trained networks on human games to predict the move a person at a given rating would actually play, rather than the best move. The original research released nine models, one for each rating level from 1100 to 1900. Human-move prediction is a different goal from finding the strongest move, and it explains why some tools feel more natural at club level.

Scores are shown in pawns from White's side. +1.00 means White is better by roughly the value of a pawn, -0.50 means Black is slightly better, and M2 means a forced mate in two moves. The numbers are a compression of the search, not a measured fact about the position, which is why they shift with depth.

Strength limiting by Elo

Full-strength engines play far above any human, so their first choice is often a move you could not find or follow up on. Helpers solve this by limiting strength. Stockfish has two built-in controls: a Skill Level setting and a pair of options, UCI_LimitStrength and UCI_Elo. According to the Stockfish documentation, UCI_Elo accepts values from 1320 to 3190 and is calibrated against engine rating lists at a fast time control. Those ratings are not the same scale as your Chess.com, Lichess or FIDE rating.

Weakening usually combines a shallower or shorter search with a controlled chance of picking a slightly worse candidate move. The result plays like a weaker opponent, but its mistakes are engine mistakes rather than human ones. Products build their own scales on top of this. ChessHelper exposes an engine strength setting from 800 to 3200 Elo, so you can keep suggestions close to your own level for practice and review, or move the slider up to see the strongest line.

The practical rule: treat any Elo label on a strength slider as approximate and specific to that product. Compare tools by how useful the suggestions are at your level, not by the number on the slider.

How suggestions are shown

The same engine output can be presented in very different ways, and this is where helpers differ most. Each format answers a different question.

DisplayAnswersLimitation
Arrows on the boardWhich move, at a glanceNo reason given; easy to copy without understanding
Evaluation barWho is better and by how muchOne number hides how hard the position is to play
Alternative linesWhat happens next, and what else was closeLong lines are hard to read without a board
Move labels (Best, Mistake, Blunder)How a finished game went, move by moveLabels depend on engine thresholds, not difficulty
Written explanationsWhy a move works, in wordsSlower, and quality varies by position type

ChessHelper shows arrows, a position score with an evaluation bar and alternative lines. Chess.com Game Review adds move labels and a coach walkthrough after the game, and DecodeChess focuses on written explanations. Our comparisons of ChessHelper and Game Review and of ChessHelper and DecodeChess go into each one.

A verified example: the Two Knights Defense

4...d5 (best)4...Nxe44...Qe7
After 1.e4 e5 2.Nf3 Nc6 3.Bc4 Nf6 4.Ng5. Black to move. Arrows show the engine's top three moves.

After 1.e4 e5 2.Nf3 Nc6 3.Bc4 Nf6 4.Ng5, White's knight and bishop both hit the pawn on f7, and only the king defends it. This is a common early test for club players and a good picture of what a helper's three arrows mean.

We ran the position through Stockfish at depth 20 with three lines. The output below is exactly what the engine returned, cut to the first moves of each line.

Stockfish, depth 20, multi-PV 3. Checked November 12, 2026.
MoveScore (White's view)Engine line
4...d5-0.045.exd5 Na5 6.Bb5+ c6 7.dxc6 bxc6
4...Nxe4+2.015.Bxf7+ Ke7 6.d4 h6
4...Qe7+2.525.Bxf7+ Kd8 6.Bb3 Ke8

Read as arrows, the answer is simply d5. Read as a whole, the output tells a story. 4...d5 blocks the bishop's diagonal toward f7 with tempo and keeps the balance. The other two moves leave f7 hanging and lose the pawn with check; the engine scores them about two pawns worse.

The next move shows why depth matters. After 4...d5 5.exd5, the natural recapture 5...Nxd5 scored +2.00 for White at depth 20, because of the knight sacrifice 6.Nxf7 Kxf7 7.Qf3+. The quieter 5...Na5, attacking the bishop, scored -0.09. A shallow search can miss that difference; a deeper one cannot. A good helper shows you the alternative lines so you can see the refutation rather than just trust a color.

Why two tools can disagree

If you check the same position in two tools, the scores will rarely match exactly. The causes are ordinary: different engine versions or networks, different search depth or time, different hardware, and different multi-PV settings, since asking for more lines spreads the search. A gap of a few tenths of a pawn is usually noise in practical terms. A gap of a full pawn or a different best move is worth a closer look at higher depth.

Strength-limited suggestions will also differ from full-strength analysis on purpose. If your helper is set to 1200, its arrow is meant to be a sound, findable move at that level, not the engine's absolute first choice. Switch the setting up when you want the strongest answer.

What this means when you choose a helper

Every serious tool rests on strong engines, so raw strength is rarely the deciding factor. The differences that matter for learning are in the presentation layer: whether strength can be matched to your level, whether you can see alternatives and reasons, whether finished games are saved for review, which sites it works with, and how the product handles privacy and fair play. Those are the criteria in our ranking, and the reason we place ChessHelper first for learning at your own level. If you want to see how a plain engine compares, read AI chess helper vs chess engine.