I am torn between two options:

a) having a database with separate games (e.g. in pgn files, or any one of ChessBase, Chess Assistant or SCID database format), where each game would be a subvariation of an opening that I play. This has an advantage for adding verbal annotations, easier printing, etc. This seems also what most professional players, or opening book writers do.

b) A proper opening book in CTG, bin, or whatever other custom opening book format. Possibly one book for my white openings, and one for my Black reperoire. This is better for transpositions, but does not allow me to add verbal annotations - at least not in the formats that I looked at. Chess Position Trainer seems like a good tool for this approach, but still does not let me include variations from database games, so you really can't use it effectively to build a repertoire.

Neither option seems ideal. Any advice?

  • Chess Position Trainer (which I use) does allow you to add verbal annotations for both moves and positions. What do you mean by "include variations from database games"?
    – dfan
    May 5, 2013 at 20:31
  • I have a database with 300 of my own games, I want to merge any one them into my opening repertoire whenever I feel like it, just to serve as reference/reminder that I played certain positions. Also, since opening theory today, is basically practice of strong players, I want to access their games easily while building opening repertoire. CPT allows to bring in a pgn as a starting point, but updating it later from more recent games is then not very easy.
    – Joe
    May 5, 2013 at 23:12
  • Rather intriguing question Joe, now I'll have to ponder this. Were you looking for an OS neutral approach? Or did you just want a higher level 'architect' type answer that you could implement?
    – MDMoore313
    May 10, 2013 at 15:23
  • windows would be preferable since that's what I use now. I am looking for a real life solution/approach, rather than an abstract idea :)
    – Joe
    May 11, 2013 at 23:26

2 Answers 2


There is no one answer to this question, because what is 'best' in this case is subjective. It also depends on how you play chess (online/IRL, OTB/Correspondence) and what you want to get out of the record (Professional games using line X, or just a list of what moves you want to play).

If you just want a list of what lines you want to play, then you could even just use something like this in your text editor of choice:

1.e4 e5 2.Nf3 Nc6 3.Bb5  a6 4.Ba4
  ........... Nf6 3.Nxe5
  .. c5 2.Nf3 Nc6 3.d4

However, if you want a visual list or references to Master games using each line, then Other solutions would be more appropriate.


There are a couple of angles that haven't been mentioned. Chessbase's keys allows you to add comments to individual moves, and easily sort new games into the appropriate key by adding them to the archive. A key serves as a handy index to the complete games, and also gives you the option of generating statistics for any leaf in the key.

Bookup/Chess Openings Wizard stores lines in a tree, and can test you on your knowledge by feeding you random positions from your repertoire to see if you know the next move. It can also backsolve, telling you which lines are good or bad based on the evaluation of the line with best play for both sides.

I think the reason that some players store their repertoire as sets of games with one line per game is so they can test themselves on how well they know it using the testing features of Chessbase, SCID, iChess, etc.

Opening books (CTG) allow you to specify the moves an engine plays, so you can train by playing test games. This is also the format that lets you see the statistics most readily. In Chessbase, you can add games to a CTG, but have to specify how deep you want to go since it takes a lot of time to add full games to a book.

An opening key is probably preferable if you just want to index all the games that have been played in a certain line.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.