Output whether the best move is "much better" or only "slightly better" than the other moves On Oct 31, 2014, Tord Romstad wrote:

The moves are not searched in descending order from best to worst. Stockfish has no idea which move is the second, third best, etc., and it doesn't have any centipawn scores for any moves other than the current best move. For the rest of the moves, the centipawn scores are unknown, all we have for those moves are upper bounds for the centipawn scores.
As an example, assume that we have a position with four legal moves A, B, C and D. What Stockfish knows about the centipawn values of the four moves after searching to a given depth would usually be something like this:
Move A (best move): 100 centipawns.
Move B: At most 50 centipawns
Move C: At most 80 centipawns
Move D: At most 0 centipawns
Because we only have upper bounds for moves B, C and D, we have no idea which of these three moves is the best.

Is there a way to make Stockfish output the data described by Tord?
I would argue that it is valuable to not only know the best move, but also to have an idea of whether the best move is &quot;much better&quot; than the other moves or only &quot;slightly better&quot;.
I don't think Stockfish gives you the information as it's not useful to anybody other than programmers for debugging. The best way is just run MultiPV=2, and subtract the best two moves. Is there any reason why you can't do that?

If you insist you'll have to modify the source code yourself. It's not a very hard change. But why would you do that?