I have the fen(arbitrary), I would like to get the completely opening names for the move list by passing the fen to the site. Are there any sites like this that are pretty exhaustive and free? It could simply return the last opening name as I could query it manually but this requires more work than I'd like to do.

Every site I have is some downloadable database or has an interface for searching through openings. I'd like something I could just get the names in json, html or some other text that correspond to the fen moves ordering. I'd rather not have to try and hack up some site to try and extract the info.

  • Do you mean FEN or PGN? PGN would be the normal form for a move list.
    – kentdjb
    Jan 26, 2021 at 19:05
  • @kentdjb FEN, that is what I get from the code. I have the sequence of them. I guess I deally I like to give a fen and it return all matching openings for it. I can then do the intersection to find out which ones I want. Of course, being able to convert to pgn would also help.
    – Stretto
    Jan 26, 2021 at 22:23

1 Answer 1


I appreciate that this is not a complete answer to your request but one potential solution would be to download and use a local copy of my free open source pgn-extract program and use options along the following lines:

pgn-extract --fenpattern "r1bqkb1r/pppp1ppp/2n2n2/4p3/2P5/2N2N2/PP1PPPPP/R1BQKB1R w KQkq" eco.pgn

The program comes with the file eco.pgn that contains ECO codes and opening names so the above outputs all the matches in eco.pgn for openings that reach the given FEN position, for instance:

[Event "?"]
[Site "?"]
[Date "????.??.??"]
[Round "?"]
[White "?"]
[Black "?"]
[Result "*"]
[ECO "A28"]
[Opening "English"]
[Variation "four knights, Romanishin variation"]

1. c4 e5 2. Nc3 Nc6 3. Nf3 Nf6 4. e3 Bb4 5. Qc2 Bxc3 *

along with another 9 possibilities.

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.