Blog
Tutorial

Engine-Powered Opening Explorer

Post Preview Image

Engine-Powered Opening Explorer

Opening explorers show what’s popular. Engine shows what’s best. What if we combine both?

Data/Tutorial

June 9, 2025

I’ve been experimenting with an approach that combines opening statistics with engine evaluations. I use a two-fold Stockfish analysis: In the first phase, the engine quickly evaluates all possible moves. Then it switches to analyzing only the top moves. The results are combined and shown next to the opening statistics.

Opening Explorer combined with Engine Evaluations
Opening Explorer combined with Engine Evaluations

This combined view makes it easier to understand complex positions, especially where the most played moves aren’t necessarily the best ones.

In this post, I will show how this works based on Stafford Gambit games played by Eric Rosen, and explain how Stockfish’s “MultiPV” parameter is used for this. For this, I will use screenshots of Lichess to show how engine and opening explorer traditionally work before showing how I implemented it on ChessMonitor.

Eric Rosen’s Stafford Gambit

Let’s start with an example: The Stafford Gambit:

Stafford Gambit: Black offers an exchange of knights
Stafford Gambit: Black offers an exchange of knights

Enabling the engine shows us that taking the knight is the best move. But what about other moves? What if White doesn’t take? Are there other playable moves we might miss? To answer that, we can use Stockfish’s “Multiple Lines” feature (technically called “MultiPV”). Let’s enable it:

Setting the Stockfish option “Multiple Lines” to 5 on Lichess
Setting the Stockfish option “Multiple Lines” to 5 on Lichess

Turns out, taking the knight is by far the best move. Capturing keeps the advantage while the second-best move already drops to just +0.7. Thanks, Stockfish.

Curse and Blessing of Using Multiple Lines

If this is useful, why is it not enabled by default? The reason is performance. Asking Stockfish to calculate multiple lines takes more time, which means the engine doesn’t go as deep and gives weaker results. Every additional move splits the engine’s effort, exploring more of the move tree means less depth on each line:

Multiple LinesElo Difference
10
2-97
3-157
4-199
5-235

As the table (source: Stockfish) shows, even analyzing just two lines drops Stockfish’s strength by nearly 100 Elo. At five lines, the hit is over 230 Elo! So if you want the most accurate evaluation, stick to a single line (or wait longer). But if you’re trying to understand the broader position, MultiPV is a valuable tradeoff.

Back to the Stafford Gambit!

Let’s continue our Stafford Gambit example: White accepts the gambit (4. Nxc6 dxc6), followed by the second most played line (5. Nc3 Bc5).

On Lichess, the most-played moves show up in the bottom right, and the engine's candidate moves appear at the top. Let' try to find out what the engine thinks of the moves.

Trying to find evaluations for the most played moves
Trying to find evaluations for the most played moves

As it turns out, only two of the five most-played moves appear in the engine’s list. The rest? We’re left guessing. h3, the second-most played move, is the best engine move, and Qe2 is second-best. But how bad is the most popular move, Be2? And what about the others? We have to check each move individually making it hard to get a quick sense of what’s really going on.

Combining the Opening Explorer and Stockfish Evaluation with a Two-Fold Stockfish Analysis

Here’s an alternative approach: combining opening explorer statistics with engine evaluations using a two-phase Stockfish analysis. Considering the same position as above and again using Eric Rosen's opening book (Lichess and Chess.com games combined), we get the following results (on the left):

Two phases with the results merged into the opening explorer
Two phases with the results merged into the opening explorer

The analysis is done in two steps:

  1. Phase 1: Stockfish evaluates all played moves using a high “MultiPV” setting, running either to depth 15 or for 3 seconds (whichever comes first). The engine is much weaker in this phase but we are able to get evaluations for all moves.
  2. Phase 2: Like Lichess, the engine runs deeper evaluations for just the top few moves (as defined by your “Multiple Lines” setting). These deeper results are then merged with the quick scans from Phase One, giving you a good overview and the powerful evaluations in one view.

Dot indicators (“·•·”) next to each move show which ones the engine is actively calculating. At first, all moves are scanned. Then, it analyzes only the top moves. The visualization uses mini evaluation bars scaled logarithmically from -5 to +5. This scale emphasizes small differences near zero (where critical decisions happen) while the difference between a score of +4.5 and +4.7 is hard to spot.

With this combined view, the picture becomes much clearer: while some top-played moves maintain White's advantage, others (like the third, fourth, and fifth most popular) clearly favor Black.

Want to try it yourself?

Check out Eric Rosen’s game yourself!

This post was an addition to the update post from last week and explains the new opening explorer in more detail. I'm actively experimenting with new ways to visualize chess, and I'd love to hear your thoughts. Let me know if you have ideas or feedback!

New to ChessMonitor?

ChessMonitor is an analytics platform for chess players providing lots of free chess statistics. We are working hard on improving it.

Here are some things you can do right now: