Here is the standard way to learn an opening, and the reason it does not work.
You find a repertoire with fifty lines in it. You open line one and play through it, twelve moves deep. You open line two and play through that— and the first nine moves are identical to line one, because line two only differs at move ten. Then line three, which differs at move six, so you replay five moves you already knew to reach it. By line fifty you have played the move 1.e4 fifty times.
Across the repertoires in this library, that adds up to 18,685 replayed moves. The number of positions where you actually had to decide anything is 1,156. Everything else was travel.
Where a repertoire is actually hard
Lay a repertoire out as a tree instead of a list of lines and the shape becomes obvious. Most nodes have exactly one child: your opponent played the expected move, and you play yours. Nothing is being tested. You are not recalling anything, because there was no choice to get wrong.
The difficulty is concentrated in the nodes with several children — the positions where your opponent has a real choice among moves people genuinely play. Call these branch points. At a branch point you have to know which of their moves you are looking at, and what you play against it. That is a real act of recall, and it is the only one in the whole line.
A fifty-line Caro-Kann repertoire contains 388 moves and eight branch points. Learn the eight and you have the repertoire; learn the 388 and you have spent forty-eight times the effort for the same result.
The ratio varies. Sharp tactical openings branch early and often; system openings like the London branch late, because you play the same six moves against most things. But the direction is always the same, and the multiple is always large.
Finding the branch points in your own repertoire
You can do this by hand, and it is worth doing once even if you never do it again.
- Write your lines out in a single PGN file, one line per variation, from the first move each time.
- Sort them alphabetically. Variations that share a prefix land next to each other, which is exactly what you want.
- Walk down the sorted list and mark every point where two adjacent lines first differ on your opponent’s move. Differences on your own move mean you have two answers to the same position, which is a separate problem — pick one.
- Each mark is a branch point. Count them. There will be fewer than you expect.
The marks on your opponent’s moves are your study list. Everything not marked is a move you will play automatically because the position only allows one sensible continuation from your preparation.
Drilling them without moving the board
Once you have the list, the training method follows from it, and it is not the one most trainers use.
Set the board at a branch point. Your opponent’s first option appears; you play your answer. Instead of continuing down the line, the board snaps straight back to the branch point and their second option appears. You answer that. Back again, third option. The pieces barely move. Three decisions in the time it usually takes to replay one line.
This does two things that playing the line through does not.
It tests discrimination, which is the thing that actually fails. In a real game you do not forget your prepared move in the abstract. You look at the board, recognise the position as one you have studied, and play the answer to the neighbouringvariation — the one that looks almost the same. Cycling the options side by side is the only way to practise telling them apart, because it puts the confusable positions next to each other on purpose.
It removes the travel. You are never replaying a move you already know in order to reach a move you do not.
Then let spacing do the rest
Branch points are still facts, and facts decay. The standard tool is spaced repetition: review an item just before you would have forgotten it, and the interval before the next review stretches each time you get it right.
Two warnings, both learned the hard way by everyone who has tried this with chess.
Schedule decisions, not moves. If you put every move of every line into the scheduler you will build a queue of thousands of cards, most of which test nothing, and you will abandon it inside a month. The decision points are the cards. Eight per opening is a queue you can actually clear.
Let the easy ones go.The point of a modern scheduler — FSRS rather than the old SM-2 — is that a branch point you answer instantly should not come back for months. If your review pile is not shrinking as you get better, the scheduling is wrong, not you.
What this does not fix
Knowing your branch points cold gets you to a playable middlegame. It does not tell you what to do there, and no amount of opening study will. If you are losing games from equal positions on move fifteen, more opening work is the wrong project.
It also will not help if your repertoire is unsound. A branch point drilled perfectly is still a losing move if the move is bad. Before drilling anything, run the lines past an engine once — hand-written repertoires drop material far more often than their authors believe. The first draft of the King’s Gambit repertoire in this library shipped eleven lines with a piece hanging, and every one of them looked completely reasonable.
The short version
- Your repertoire is a tree, not a list. Nearly all of it is forced.
- The work is at the branch points, where your opponent has a genuine choice.
- There are far fewer of these than there are moves — around sixteen times fewer.
- Drill them by cycling your opponent’s options at a fixed position, so you practise telling similar positions apart.
- Schedule the decisions for review, not the moves.
- Check the lines with an engine before trusting any of it.
This is the method ChessReflex is built around, and the library lists the branch-point count for every opening in it, so you can see the size of the job before you start it.