Understanding Stockfish Depth and What It Means for Your Games

A practical guide to search depth, time management, and when deeper analysis actually matters

ChessOnyx · · 7 min read

Stockfish Depth Guide

When Stockfish displays "depth 24" in its analysis, what does that actually mean? Most chess players have a vague sense that higher depth equals better analysis, but few understand what depth represents, how it works, or when it truly matters. This understanding is more than academic — it directly affects how you use engine analysis to improve your chess.

In this guide, we break down how Stockfish searches positions, what depth numbers tell you, and how to make practical decisions about analysis depth in your own study.

What Is Search Depth?

At its core, search depth refers to how many half-moves (plies) ahead the engine looks in its primary search line. A depth of 20 means Stockfish is examining sequences of at least 20 half-moves — roughly 10 full moves for each side. But this description, while technically correct, is misleading in an important way.

Modern chess engines do not search all lines to the same depth. Stockfish uses a technique called alpha-beta pruning combined with various search extensions and reductions. Promising lines are searched much deeper than the nominal depth, while clearly inferior lines are pruned early. A position analyzed at "depth 24" might have some variations explored to depth 40 or beyond, while others are cut off at depth 10.

This selective search is what makes engines so powerful. Instead of wasting time on obviously bad moves, they focus their computational effort on the most critical variations. The reported depth is the minimum guarantee — the engine has looked at least that deep along its principal variation — but the actual search is much more complex and uneven.

How Depth Affects Evaluation Quality

The relationship between depth and evaluation accuracy is not linear. Going from depth 10 to depth 15 produces a dramatic improvement in analysis quality. Going from depth 20 to depth 25 still matters but less dramatically. Going from depth 30 to depth 35 produces only marginal improvements in most positions.

This diminishing returns curve has a practical explanation. At low depths, the engine frequently misses tactical sequences and misjudges positions. Each additional depth level reveals new tactical possibilities and strategic nuances. But as depth increases, the engine has already found most of the important ideas in the position. Additional depth mainly refines evaluations in edge cases rather than discovering fundamentally new concepts.

There are important exceptions to this pattern. In positions with deep tactical complications — long forcing sequences, sacrificial attacks, or positions where quiet moves lead to breakthroughs many moves later — even high depths can produce unstable evaluations. These are the positions where you see the evaluation jump around even at depth 30+. They are also the most fascinating positions in chess.

Endgame positions present another exception. Some endgames require extremely deep search to evaluate correctly because the winning plan involves precise maneuvering over many moves. A tablebase (a pre-computed database of all positions with few pieces) can tell you instantly whether a position is won, drawn, or lost, but without tablebases, the engine might need depth 40+ to see the winning path in some endgames.

Selective Depth vs. Nominal Depth

When you look at Stockfish's output, you will often see two depth numbers: the nominal depth and the selective depth (sometimes labeled "seldepth"). The nominal depth is the base search depth. The selective depth shows the deepest line the engine explored during its search.

For example, you might see "depth 25/48" — meaning the base search is 25 plies deep, but certain critical lines were explored to 48 plies. This gap between nominal and selective depth tells you something about the position. A large gap suggests the engine found forcing sequences that required deep calculation. A small gap suggests a quiet position where most lines can be evaluated at similar depths.

Understanding this distinction helps you interpret engine analysis more accurately. When the selective depth is much higher than the nominal depth, the engine is confident about its evaluation of the critical lines but may have superficially treated some side variations. When the two numbers are close, the engine has explored the position more uniformly.

Multi-PV: Analyzing Multiple Lines

By default, Stockfish searches for the single best move. But you can configure it to analyze multiple principal variations (Multi-PV). Setting Multi-PV to 3, for example, makes the engine find the three best moves simultaneously.

There is a significant trade-off here. Multi-PV analysis is slower because the engine cannot prune as aggressively — it needs to keep track of multiple good options rather than focusing all its effort on proving one move is best. Roughly speaking, Multi-PV 3 reaches a given depth about 1.5 to 2 times slower than single-PV analysis.

For game review, Multi-PV is extremely valuable. It shows you not just what the best move was, but what the alternatives were and how they compare. Often, your move is the second or third best option and is nearly as good as the engine's top choice. Without Multi-PV, you would never know this — you would only see that your move was not "the best" and might incorrectly conclude you made a mistake.

On ChessOnyx, we provide Multi-PV analysis so you can see the full picture. Understanding that three moves are all within 0.1 of each other is very different from knowing only that you did not play the single top engine move.

Practical Depth Guidelines

Different analytical tasks require different depths. Here are practical guidelines based on what you are trying to accomplish:

Quick game review (finding obvious mistakes): Depth 18-20 is sufficient. At this depth, Stockfish will catch all tactical blunders and most positional mistakes. This is appropriate for a first pass through your games.

Serious game analysis (understanding strategic decisions): Depth 22-26 is the sweet spot. At this range, the engine's positional judgments become more reliable, and you can trust its assessments of quiet positions. Most of your analytical work should happen at this depth.

Critical position analysis (opening preparation, unclear sacrifices): Depth 28-32 or higher. For positions where you need maximum reliability — evaluating a theoretical novelty, assessing a piece sacrifice, or analyzing a critical endgame — let the engine run deep. At this depth, evaluations are quite stable for most positions.

Correspondence chess or opening theory: Depth 35+ or cloud analysis. For the highest-stakes analysis where every tenth of a pawn matters, you need the deepest analysis possible. This typically means letting Stockfish run for extended periods on powerful hardware.

Remember that these are guidelines, not rules. The right depth depends on the position, your goals, and the time you have available. A complex tactical position needs more depth than a simple endgame. An important tournament game deserves deeper analysis than a casual blitz game.

Time vs. Depth: What to Optimize

When analyzing a position, you can either set a fixed depth (analyze until depth 25) or a fixed time (analyze for 30 seconds). Both approaches have merit, but understanding the difference matters.

Fixed depth guarantees a minimum analytical quality regardless of position complexity. Every position gets the same depth of analysis. The downside is that simple positions reach the target depth quickly (wasting no time on further analysis), while complex positions might take much longer.

Fixed time adapts naturally to complexity. Simple positions reach high depths quickly, while complex positions might reach lower depths. This mirrors how strong human players allocate their thinking time — spending more on critical moments and less on routine moves.

For game review, fixed time per move is usually more practical. Setting 10-15 seconds per move on a modern computer provides excellent analysis quality for most positions, with the engine naturally going deeper in simple positions and working harder in complex ones.

For studying a specific position, let the engine run until the evaluation stabilizes. Watch the evaluation as depth increases. When it stops changing meaningfully (fluctuations of less than 0.05 per depth level), the engine has reached a reliable assessment. This might take 10 seconds or 10 minutes depending on the position.

Conclusion

Search depth is the foundation of engine analysis, but it is far more nuanced than "bigger number equals better." Understanding how selective search works, when depth matters most, and how to choose appropriate depths for your analytical goals will make you a more effective user of chess engines.

The key insight is that depth is a means to an end — reliable position evaluation — not an end in itself. Focus on whether the evaluation has stabilized rather than on hitting a specific depth number. And remember that even at moderate depths, Stockfish provides analysis quality that would have been unimaginable just a few years ago. Use it wisely, and it will transform your understanding of the game.