AI Chess
002 Analysing Your Own Games With An Engine 1,641 words · 7 min

Your First Engine Analysis: A Ten-Minute Workflow For One Game

There are two ways club players waste an engine. The first is never opening it: you lose, you close the tab, you queue up again at 11:40pm and lose the next one the same way. The second looks like work but isn’t: an hour on the Lichess analysis board, arrows blooming and vanishing, the eval bar twitching, and at the end of it you can recite that Stockfish preferred 14.Ne4 without having learned a single thing you could use on Tuesday.

A fixed ten-minute pass beats both. Not ten minutes because your game deserves only ten minutes, but because a bounded process gets repeated and an unbounded one doesn’t. Four steps, a phone timer, one game per session. That’s the whole method, and the rest of this is the exact sequence.

The budget

MinutesStepEngine on?
0–2Write your own version of the gameNo
2–5Read the eval graph, find real swingsYes, output only
5–8Interrogate two or three positionsYes, MultiPV 3
8–10Convert to one stored line with a tagNo

Minutes 0–2: your version first, before Stockfish gets a vote

Open the game. Turn the engine off. On Lichess that means unchecking the local engine toggle on the analysis board and not clicking “Request a computer analysis” yet. On Chess.com, do not press Game Review, because the moment you do you get a number stapled to every move and your own memory is gone.

Now type three things into the comment box, the move notes, or a scrap of paper:

  1. The move number where you first felt uncomfortable.
  2. The move you’re least proud of, and why you played it.
  3. What you thought the position needed at that moment (attack the king, trade off their good piece, get the rook to the open file).

This takes ninety seconds and it is the step everyone skips. It’s also the only step that produces a record of your thinking, which is the thing you’re trying to fix. Stockfish evaluates positions. You lose games because of a process, and the process lives in those three lines. When your guess at move 19 matches the engine’s biggest swing at move 19, that’s worth knowing. When you felt fine until move 31 and the game was actually decided at move 12, that’s worth much more.

Minutes 2–5: read the graph, not the arrows

Now request the full analysis. Lichess will run Stockfish server-side over the whole game in about fifteen seconds and draw you an evaluation graph. Chess.com’s Game Review does the equivalent and adds an Accuracy percentage, which you should ignore completely: 84.2% tells you nothing you can practise.

What you want from this step is a shortlist of moments, and you get it by looking at the shape of the line, not the labels. Scan for cliffs. A drop from +0.4 to -2.9 is a cliff. A slide from 0.0 to -0.8 across six moves is not, and chasing it will burn your whole budget on a positional nuance you cannot yet use.

Use a threshold, and use it mechanically:

SwingVerdict
Under 0.50Noise. Ignore it, even if labelled “inaccuracy”.
0.50 to 1.50Note it, don’t open it.
Over 1.50Shortlist.
Crosses 0.00 in either directionShortlist, whatever the size.
+9.0 → +6.0Ignore. Winning is winning.
+3.1 → +0.4Shortlist. You threw away a win.

That last pair is the one worth internalising. Lichess grades mistakes by win probability rather than raw centipawns, so its blunder threshold (roughly a 30% drop in expected win rate) fires loudly on 0.00 → -2.00 and stays quiet on +9 → +6, correctly. But the reverse trap is a missed win: going from +3.1 to +0.4 often gets tagged as a mere mistake, and it’s one of the most expensive habits at 1400. Add the boundary rule yourself and it stops slipping past.

Three cliffs maximum. If your game has eleven, take the three biggest and let the rest go. You are not auditing the game, you’re harvesting two or three usable lessons.

Minutes 5–8: interrogate one position at a time

Here is where the real skill lives, and it isn’t reading an eval. It’s asking the engine a question in a form that produces an answer you can carry.

Set MultiPV to 3. On the Lichess board, that’s the “lines” setting next to the local engine, bumped from 1 to 3. In a desktop front end (Nibbler and En Croissant are both free and both wrap Stockfish 17 cleanly) it’s a spinner in the options panel. One line tells you the answer. Three lines tell you the shape of the position, which is the part that transfers.

Then let it settle. Depth 20 is the floor for trusting a tactical verdict; at depth 14 Stockfish will happily recommend things it disowns eight plies later. On a laptop with 4 threads that takes a few seconds per position.

Here’s a real shortlist entry from a 1455-rated Lichess rapid game, White to move:

Position after 16... Bb7                    White: Qe2, Bf3, Be3, Nb3, Rf1, Ra1
Stockfish 17, depth 31, MultiPV 3           Black: Qc7, Nc6, Nf6, Bb7, Be7

  1.  +0.34   17. Rfd1   Rfd8  18. h3 h6  19. Bf1
  2.  +0.30   17. a4     Rfd8  18. Rfd1 Qc7
  3.  +0.12   17. Rfe1   Nd7   18. Bg4

  Played: 17. Nc1??  -2.86
          17... Nd4!  18. Qd3 Nxf3+  19. gxf3  (a bishop down, kingside wrecked)

Look at what the three lines share. All of them leave the knight on b3. None of them are clever. The engine isn’t proposing a plan at all: it’s telling White that the position is roughly level and the only real requirement is not to dismantle it. The knight on b3 was doing one job, guarding d4, and the player rerouting it toward d3 never checked what it was holding.

Now write the one-sentence reason, in words a human would say out loud. Not “17.Nc1 loses 3.2 centipawn-equivalents.” Something like: my knight on b3 was the only thing covering d4, and my queen and bishop were on the same knight-fork square pair. That sentence is the output of the step. If you cannot produce it, the engine’s move is an answer to a question you haven’t asked yet, and the honest move is to skip the position rather than pretend.

One more thing you can do in this window, and it’s the highest-value ninety seconds in the whole workflow: from the shortlisted position, use Lichess’s “Play from here against the computer” and play the next six moves yourself against Stockfish level 6. Recognising an error when it’s circled in red is easy. Not repeating it with a clock running is the actual skill, and this is the cheapest available rehearsal of it.

Minutes 8–10: store it, or you didn’t do it

Two lessons that leave no trace are worth less than one lesson you’ll see again in four days. So close the loop while the position is still on screen.

Copy the FEN. Paste it somewhere permanent with your one-sentence reason and a tag from a fixed list of six:

  • loose-piece (something undefended, including a fork square)
  • king-safety (my pawns, my open files)
  • piece-left-behind (a rook or bishop out of the game for 10+ moves)
  • traded-wrong (gave up the better minor piece, or opened their position)
  • missed-win (crossed down from +3 or more)
  • clock (under 15 seconds when the cliff happened; check the move timestamps)

Six tags, no more, and no “positional understanding” or “middlegame plans” category. Vague tags are where good intentions go to die. After five or six sessions you’ll have thirty tagged positions and a count, and the count is a training plan: nineteen loose-piece entries means your homework is Lichess Puzzle Storm at slow settings with a hard rule about scanning for undefended pieces before every move, not a book on the Catalan.

A plain text file works. A Lichess study with one chapter per game works better, because the position is playable and the study is searchable. Anki or a private Chessable course works best if you already use them, and is not worth adopting this week if you don’t. The storage medium matters far less than the fact that the tag exists and you can count it.

What this deliberately ignores

Opening theory, for one. Your cliff at move 6 of a Caro-Kann is almost never a theory gap, it’s the same loose-piece habit wearing a costume, and looking it up teaches you one line instead of one principle. Endgame technique gets a similar pass, not because it doesn’t matter but because ten minutes on a rook endgame you already drew is a bad trade against ten minutes on the piece you dropped on move 17.

Accuracy scores get ignored too. So do the engine’s opinions on anything below the 0.50 threshold, the second-best move in equal positions, and every arrow that appears while you scroll rather than while you’re asking a specific question. A deeper dive into structuring this over months, including what to do when the same tag keeps winning, sits in analysing your own games with an engine.

Knowing how to analyse a chess game with an engine is really just knowing which 95% of its output to throw away, on a timer, every week.

Pick the loss that annoyed you most this week. Set the timer for ten minutes before you open it, and write your three lines before Stockfish says anything at all.