✂️ Infographic · Q-Search Pruning

Explain Chess Engine
Delta Pruning

In quiescence search, skip captures that cannot possibly raise the score above alpha — even winning a queen wouldn't help.

📅 June 30, 2026⏱ 8 min read🏷️ Quiescence · Margins
Delta pruning is a fast filter inside quiescence search. After computing stand pat (static eval), ask: if I capture the most valuable enemy piece, can I still fail to beat α? If standPat + queenValue < α, every capture in the move list is hopeless — skip them all without searching.

Rule

The Delta Margin Test

Skip capture if:standPat + Δ < αΔ = value of captured piece (900 for queen, 100 for pawn, …)

Flow

Inside Q-Search

1
Compute stand pat
Static eval; update α if standPat > α.
2
For each capture
Compute Δ from victim piece value (MVV).
3
Delta test
If standPat + Δ < α → continue (skip move).
4
Else recurse
Often combined with SEE — delta is cheap pre-filter, SEE is accurate.
for (move : captures) { delta = pieceValue[victim(move)]; if (standPat + delta < alpha) continue; // delta prune if (see(move) < 0) continue; // SEE prune score = -qsearch(-beta, -alpha); }
TechniqueWhereTest
Delta pruningQ-search capturesstandPat + piece value < α
SEE pruningQ-search capturesStatic exchange < 0 on square
Futility pruningMain search quiet movesstaticEval + margin < α

Tips

Part of quiescence search

Delta pruning keeps qsearch fast without missing tactics.

Quiescence SearchEvaluation Function

Related: Quiescence Search · Futility Pruning · All Blogs