Opening Prep With An Engine Without Memorising Twenty Moves
Here is the thing nobody tells you when you first open an engine and start building a repertoire: Stockfish does not know what an opening is. It knows positions. It evaluates the one in front of it, suggests the move that keeps the number highest, and then it is done with you. It has no opinion about whether you will remember that move on Tuesday night with four minutes on the clock and your opponent staring at you. It has no idea that the line it just recommended requires you to find three only-moves in a row or the whole thing collapses.
So the engine is a bad opening teacher. It is, however, a superb opening debugger. That distinction is the whole method in this post.
Why engine-first prep goes wrong
The failure mode looks like this. You pick a line, say the Italian. You load the starting position into the Lichess analysis board, turn on Stockfish 17 at depth 30, and start clicking through top moves. Thirty minutes later you have a tree twenty-two moves deep in one variation and nothing anywhere else. You play on Saturday, your opponent answers 1.e4 with 1…c5, and every single minute you spent is worth nothing.
That is not an engine problem. That is a question problem. “What is the best move here?” is a question the engine answers brilliantly and which helps you not at all, because at club level you are almost never punished for playing the third-best move. You are punished for playing a move you do not understand in a position you have never seen, three moves after your prep ran out.
What actually loses games in the 1000-1900 band is narrower and more boring: you reach a branch point you have hit eleven times before, you guess, and you guess wrong in the same direction every time. That is a debuggable fault. The engine is the right tool for it, and you need maybe six moves of depth, not twenty.
Start from your games, not from the opening
Before you touch the analysis board, get your actual data. On Lichess, go to your profile, click Insights, then set the dimension to Opening and the metric to Winning percentage, filtered to your last 200 rated games in your main time control. On Chess.com the equivalent lives under Analysis → Openings in the Insights tab. Either way you want a table that looks roughly like this:
Opening (as Black) Games Win% Avg centipawn loss
Scandinavian: Mieses-Kotroc 34 58% 41
Caro-Kann: Advance 19 47% 52
Caro-Kann: Exchange 12 25% 78
Caro-Kann: Fantasy (3.f3) 7 14% 94
French: Tarrasch 6 50% 49
Now the prep writes itself. Two lines in that table are haemorrhaging. Twelve games at 25% and seven at 14% is nineteen games, roughly a tenth of your season, going badly in positions you keep reaching. The Mieses-Kotroc line at 58% does not need your attention this month no matter how interesting the engine finds it.
That filtering step is doing more work than any engine setting. You are not building a repertoire from scratch; you are patching the two or three places where yours already leaks. If you want the companion method for extracting those leaks from individual games rather than from aggregate tables, analysing your own games with an engine covers the per-game workflow in detail, and the two pair naturally: that post finds the mistakes, this one decides which ones are worth prepping against.
The six-move rule
Pick your worst line. Say it is the Fantasy Variation: 1.e4 c6 2.d4 d5 3.f3. You have faced it seven times, scored one draw and six losses, and you genuinely do not know what is going on.
Load the position after 3.f3 into the analysis board. Now the discipline: you are allowed to go six moves deep, and you must stop earlier than that if you reach a position where you can say out loud what you are trying to do. Not “Stockfish says this is fine.” An actual sentence about pawns, pieces, or targets.
Here is what that looks like in practice. Stockfish 17 at depth 28 on the position after 3.f3 gives something like:
3...dxe4 -0.15 4.fxe4 e5 5.Nf3 exd4 6.Bc4
3...e6 -0.10 4.Nc3 Bb4 5.Bd3 dxe4 6.fxe4
3...g6 +0.06 4.Nc3 Bg7 5.Be3 Nh6
Three moves inside a tenth of a pawn of each other. The engine is telling you, if you read it properly, that this choice does not matter much. Which means you should choose on human grounds instead. 3…dxe4 opens the centre immediately and leads to a position where White’s f-pawn has gone walkabout and the e4 pawn is a target: that is a sentence. I can state a plan. Stop there. Three moves of prep, not twenty.
Compare that with what happens if you keep clicking. Go to move ten in the 3…e6 line and you will find yourself in a position with a +0.3 evaluation that depends on remembering that the bishop goes to a5 rather than e7, for reasons that take a paragraph to explain and will evaporate within a week.
Read the number, not the move
Most of the value in an engine comes from the shape of the evaluation, not from the move on top of the list. A few readings worth internalising:
Spread below 0.30 across the top three moves. The position is flexible. Choose on style and memorability, not on the decimal. This is most openings at move four or five.
Top move at -0.20, second move at -0.90. This is a genuine only-move situation, and it is exactly the kind of thing worth a flashcard, because getting it wrong costs real material or real structure. These are rare in the first six moves of mainline openings and common in sharp sidelines.
Evaluation that swings by more than half a pawn as depth climbs from 18 to 30. The engine is still working it out. Do not build prep on an unstable number. Let it run, or pick a different line, because a position whose value Stockfish cannot settle at depth 30 is not a position you will navigate at 90 seconds a move.
That last one catches people constantly. A depth-18 cloud eval of +0.4 that becomes -0.1 at depth 32 is not a discovery; it is noise you have mistaken for prep. Lichess shows depth in the engine bar. Look at it before you write anything down.
Use the database as the filter and the engine as the check
Here is the division of labour that makes this efficient. The Lichess opening explorer, set to the Lichess games database and filtered to ratings 1600-2000 in blitz and rapid, tells you what you will actually face. The engine tells you whether the move you want to meet it with is sound.
Run it in that order. After 1.e4 c6 2.d4 d5, the explorer at that rating band shows roughly 3.Nc3 and 3.e5 taking a combined 55-60% of games, 3.exd5 around 20%, and 3.f3 somewhere near 3-4%. If the Fantasy is costing you 14% across seven games but represents 3% of what you meet, and the Advance is costing you 47% across nineteen games at 25% frequency, your prep hour goes to the Advance. The engine has no view on this. The database does.
Then, and only then, bring Stockfish in to check your candidate. Set it to one line first (the default on Lichess) to find the move, then bump to three lines to see whether the alternatives are close. If they are close, you have freedom. If they are not, you have a memory task.
Writing it down so it survives
Prep that lives in your browser history is not prep. Build the tree in a Lichess study, one chapter per branch point you actually reach, and write a text comment on the final move of every line. The comment is the point, not the moves. Something like:
After 3…dxe4 4.fxe4 e5, target is e4. Trade off the d-pawn, get a knight to f6 or a bishop to g4, make him defend e4 with pieces. If he plays 5.Nf3 I take on d4 and develop fast.
That is forty words. It will come back to you in a game. The sequence of twelve engine-approved moves will not.
Chessable does this well if you want spaced repetition on the genuine only-moves, but keep the deck small. If you have more than about fifteen cards per opening you have stopped debugging and started memorising, and you are back where you were.
A worked hour
Concretely, here is a session that is worth doing on a Sunday morning:
| Minutes | What you do |
|---|---|
| 0-10 | Pull Lichess Insights, sort openings by win% with a minimum of 8 games, write down the worst two |
| 10-20 | Open the explorer at your rating band, check how often each actually occurs, drop any under 5% |
| 20-45 | Engine the surviving line to a maximum of six moves, three-line mode, depth 28+, stop at the first position you can describe in a sentence |
| 45-55 | Write the line and its one-paragraph plan into a Lichess study chapter |
| 55-60 | Play one game in that opening, on purpose, and note whether the plan sentence held up |
That last five minutes is the part most people skip, and it is where the method proves itself or doesn’t. If you reached your prep position and still had no idea what to do, your plan sentence was wrong, not too short. Rewrite the sentence. Do not extend the line.
Three weeks of that and your Insights table looks different, not because you memorised more theory than your opponents, but because you stopped losing the same nineteen games.