Skip to content

Analysis Board

The Analysis Board is your workspace for studying chess. Open any position, run engines, annotate ideas, and generate reports that break down every move of a game.

You don’t need a game in progress to use the Analysis Board. Open it up, set a position, and explore lines freely. Move pieces around, try variations, go back and forth — there’s no commitment. It’s a scratchpad for chess ideas.

Run one or more chess engines simultaneously to evaluate positions. Each engine provides:

  • Evaluation score — How much one side is winning (in centipawns or mate-in-N)
  • Best move — The engine’s top recommendation
  • Principal variation — The expected continuation from the current position

Enable MultiPV to see more than just the top move. The engine will output several candidate moves ranked by evaluation, so you can compare alternatives and understand why one move is better than another. Configure MultiPV in your engine settings (see Configure Engines).

The visual evaluation bar on the side of the board shows who’s winning at a glance. White advantage pushes the bar up, Black advantage pushes it down. It updates in real time as the engine calculates.

The copy icon (two overlapping squares) in each engine’s header copies all current analysis lines to your clipboard, formatted with scores, moves, engine name, and depth:

Dragon 3.1 by Komodo Chess 64-bit Depth 22
+0.62: 1. e4 e5 2. Nf3 Nc6 3. Bb5 Nf6 4. O-O Nxe4 5. Re1 Nd6 6. Nxe5 Nxe5
+0.49: 1. d4 d5 2. c4 dxc4 3. e3 e6 4. Bxc4 Nf6 5. Nf3 a6 6. O-O c5

A green checkmark confirms the copy succeeded.

Each engine line has a small tree icon on the right. Clicking it inserts the full engine line into your move tree as a side variation — without jumping away from your current position. The engine keeps analyzing undisturbed.

Building a variation tree from engine suggestions:

  1. Navigate to the position you want to study
  2. Let the engine analyze and show candidate lines
  3. Click the tree icon on any line you want to keep
  4. Use the arrow keys to back up to the same position
  5. Save another line — it branches off as a new variation
  6. Repeat to build out a full tree of engine-recommended continuations

This lets you capture the engine’s best ideas into your notation without the old workflow of clicking a line, waiting for re-evaluation, backing up, and repeating. Lines that share opening moves are merged automatically — no duplicates.

Mark up positions with your own analysis:

  • Comments — Add text notes to any move using the rich text editor (TipTap-based, supports formatting)
  • Arrows — Draw arrows on the board to highlight plans, threats, or piece coordination
  • Highlights — Color individual squares to mark key points in the position

When a reference database is loaded, the Database panel shows what moves were played in master games from the current position. You’ll see move frequency, win/draw/loss percentages, and average rating — helpful context for understanding whether a position is well-trodden theory or uncharted territory.

For more on setting up reference databases, see Databases.

The report generator analyzes an entire game and annotates every move with evaluation symbols and commentary. It’s the fastest way to find your mistakes and understand what went wrong (or right).

  1. Import a game or play one
  2. Open the Analysis tab
  3. Select Generate Report

The engine will work through the game and produce a fully annotated analysis.

Reverse analysis is the default and most efficient mode. It starts analyzing from the end of the game and works backward. This matters because most chess engines can reuse information from positions they’ve already evaluated, making the backward pass faster than a forward one.

Enable this option to flag moves not found in your reference databases. When a player deviates from known theory, the report marks it as a novelty — useful for identifying where preparation ended and original play began.

The report evaluates moves using three metrics:

Win% Loss — Converts the engine’s centipawn evaluation into a win probability using this formula (sourced from Lichess):

Win% = 50 + 50 * (2 / (1 + exp(-0.00368208 * centipawns)) - 1)

This translates raw engine scores into something more intuitive: how much winning chance did a move gain or lose?

Only Sound Move — Runs the engine with MultiPV 2 to check whether the best move is uniquely good. If the second-best option is significantly worse, the played move may qualify as “brilliant” or “good” — it was the only reasonable choice.

Sacrifice Detection — Uses an Alpha-Beta engine to identify sacrifices. A move that leaves you materially worse than the previous position counts as a sacrifice, which factors into whether a move earns a !! or !? annotation.

The report assigns standard chess annotation symbols based on move quality:

SymbolNameCriteria
!!BrilliantSacrifices that are the only sound option
!GoodSound moves that punish opponent errors
!?InterestingNon-sound sacrifices (creative but objectively questionable)
?!Dubious5-10% win probability loss
?Mistake10-20% win probability loss
??Blunder20-100% win probability loss

These thresholds are based on the Win% Loss metric, so annotations reflect practical impact rather than raw centipawn swings.