Analysis13 min read

Stockfish: What the Engine Actually Is, and What the Score Doesn't Tell You

Stockfish runs under nearly every chess analysis tool, including our own. This is what its current version and license actually require, why its own team rebuilt the evaluation scale once already, and Chessdrive's own data on what the resulting score still doesn't tell you about whether a human would find the move.

The starting position

Stockfish is a free, open source chess engine, currently at version 18, released 31 January 2026, licensed under GPL v3 rather than anything permissive. It searches for the objectively strongest move in a position using classical search paired with a neural network evaluation called NNUE, and it sits under nearly every chess analysis tool in existence, including our own. This page stays at that level, the engine itself: the current version and what its license actually requires of anyone who ships it, us included, how its evaluation number works and why the team that built it rebuilt that number once already, and Chessdrive's own data on what the resulting score still does not tell you about whether a human would ever find the move.

What Stockfish actually is

The current release, Stockfish 18, shipped 31 January 2026 and replaced Stockfish 17. It followed a steady cadence before that: 17.1 on 30 March 2025, 17 on 6 September 2024, 16.1 on 24 February 2024, 16 on 30 June 2023. The team's own release post claims an Elo gain of up to 46 points over 17, and says the new build "wins four times as many game pairs as it loses" in its own testing. The headline technical change is a new NNUE architecture, SFNNv10, whose main addition is "Threat Inputs," features that let the network see directly which pieces are under attack; the release also adds Correction History, a dynamic in-search evaluation adjustment, and improved fortress and stalemate detection.

We did not just take the release notes' word for the version number. Our own installed Stockfish binary completes a UCI handshake and identifies itself as "Stockfish 18 by the Stockfish developers." That is the actual difference between this page and an encyclopedia entry citing a changelog: we run the engine ourselves, which is also the only reason the Findability data further down this page exists at all.

The license is the part most explainer pages skip. Stockfish is GPL v3, and the project's own About page is direct about what that requires: "whenever you distribute Stockfish in any way, you MUST always include the full source code, or a pointer to where it can be found." A Stockfish maintainer, vondele, went further in an official GitHub discussion: Stockfish can be called as a separate program by software of any license, but if it is linked into a program, that program must itself be GPL licensed, and if it is not obvious to the end user that an app contains Stockfish, the distribution is not compliant, since the app is supposed to present the user with the GPL license covering it. That obligation lands on anyone who ships Stockfish, Chessdrive included, since our own review runs it too.

This is not a hypothetical rule nobody enforces. In November 2022, Stockfish's developers settled a Munich court case against ChessBase, whose Fat Fritz 2 and Houdini 6 products were derivative works of Stockfish sold under proprietary licenses. The settlement barred ChessBase from distributing Stockfish or its derivatives for a year, required the company to appoint a Free Software Compliance Officer, and required that any future distribution tell users plainly that their use of the product is subject to GPL v3, backed by contractual penalties payable to the FSFE for further violations.

Evaluation itself runs on NNUE, an efficiently updatable neural network, which became Stockfish's default with Stockfish 12, released 2 September 2020; the team's own announcement said the bundled network won at least ten times more game pairs than it lost against Stockfish 11. The older, hand crafted evaluation function then stayed in the codebase as a fallback for over three more years. It was removed in Stockfish 16.1, released 24 February 2024, whose release notes state plainly that the release "marks the removal of the traditional handcrafted evaluation"; the pull request behind it landed in July 2023, after Stockfish 16 had already shipped. NNUE has been the only evaluation method since.

Search and evaluation are two separate jobs, not one calculation. Search, alpha-beta pruning combined with late move reductions, null move pruning and related techniques, decides which lines get looked at and how far down each one goes. NNUE only scores the position search hands it. Stockfish's own FAQ is explicit that the resulting depth number is "a useful guide but not a strict guarantee every move to that ply was examined," since the search tree "is not uniformly cut off at a single depth: most lines end earlier, some go deeper." What that means in practice for reading a depth number, and how a post game accuracy percentage actually gets built out of these evaluations, is covered in full in our companion piece on what chess analysis can and cannot tell you; it is not repeated here.

Why Stockfish rebuilt its own evaluation scale

Stockfish's UCI output has been able to report win, draw and loss percentages alongside the raw centipawn score since pull request #2778, merged 1 July 2020. A typical line looks like "score cp 80 wdl 313 675 12," and the model is deliberately ply dependent, because a given centipawn score means something different in the early middlegame than it does near the endgame. Some GUIs surface WDL directly through the UCI_ShowWDL option, and Stockfish's own FAQ pairs the concept with published win, loss and draw probability graphs, stating plainly that a 1.0 pawn, 100 centipawn advantage corresponds to roughly a 50 percent win probability in engine self play.

That framing was not always this clean. The commit that formally normalized the centipawn scale to a fixed win probability model, titled "Normalize evaluation," reasoned that since NNUE, evaluation was "no longer related to the classical parameter PawnValueEg," and the centipawn value that corresponded to a 50 percent self play win rate had literally been drifting release to release: 113 centipawns in June 2020, 115 in June 2021, 134 in April 2022, 167 by July 2022, before the fix pegged 100 centipawns to a fixed 50 percent interpretation for good. A secondary source dates that commit to around November 2022; we could not independently confirm the exact date directly from GitHub in this pass, so treat that specific date as secondary rather than settled.

The drift itself is the point worth sitting with. For two years, the same centipawn number meant a measurably different win probability depending on which month's build produced it, which is Stockfish's own engineering history saying, in effect, that raw centipawns were an unstable and self referential measure, not our opinion about how humans should read them. If the team that wrote the engine did not trust the number enough to leave it alone, a player reading that same number off a random free analysis board has less reason to trust it uncritically either.

Fixing the scale solved one problem: what a number like +2.25 means in terms of a win probability. It left a separate one completely untouched: whether the move sitting behind that number is a move a human would ever actually play. That is the question the rest of this page answers with our own data, not a borrowed opinion.

What the number still doesn't tell you: Chessdrive's own data

Everything in this section comes from one historical game, scored exhaustively rather than sampled broadly, and should be read with that scope attached every time: the finish of the Opera Game, Morphy against the Duke of Brunswick and Count Isouard, Paris 1858, ten positions, one sharply tactical mating attack. The evaluations come from Stockfish 17 at depth 20, with MultiPV set to every legal move in each position, frozen when we built the playable board on our own landing page and not regenerated on Stockfish 18 since, against Maia3, run at maia3-5m, the smallest checkpoint it recommends for general use and the one we ship on-device, at seven self ratings from 1000 to 2200. We call the resulting number Findability: the probability Maia3 assigns to the exact move Stockfish scores as best. It is not a population wide average for chess as a whole, only this one attacking sequence.

We did not weaken Stockfish's own search to generate a lower rated opponent for this, because a depth-limited engine blunders in a pattern real people never do, a mechanism covered in full in our piece on why chess bots play five good moves and then hang a queen. Maia3 is a separate model entirely, trained directly on millions of real Lichess games to predict what a human at a given rating actually plays; the three generations, their licenses and where to play each one are covered in our own Maia chess reference.

Three of the ten positions are excluded, and it is worth saying exactly which, because the choice matters: the position with only a single legal reply, the final mated position, and one position where the correct move was already obvious, found by between 92.7 and 99.1 percent of every rating we tested. That last exclusion is the consequential one. Leave it in and the mean rises to roughly 26 to 28 percent, because averaging in a move almost everyone finds measures how easy that move was, not how findable the hard ones are. Across the seven genuinely contested positions that remain, mean Findability barely moves with rating:

Self-rated EloMean Findability across the sequence
100016.83%
120016.48%
140016.38%
150016.37%
180016.44%
200016.82%
220017.65%

That flatness is the finding. Across twelve hundred rating points, Findability swings by less than a point and a half, dipping to 16.37 percent at 1500 before climbing back to 17.65 percent at 2200. In this specific sequence, Stockfish's own top move is roughly as unfindable for a strong club player as it is for a rank beginner. Getting far stronger did almost nothing to close the gap.

One position inside that same sequence makes the point sharper than the average can. At move 16, Stockfish sees a forced mate in two with Qb8+. The move many players reach for instead, Qxe6+, feels natural, grabs a pawn with check, and throws the mate away entirely: Stockfish scores it at -1.25. Here is how Maia3 splits its probability between the two across every rating we tested:

Self-rated EloPlays Qb8+ (Stockfish: mate in 2)Plays Qxe6+ (throws the mate away, -1.25)
100016.2%19.4%
120015.6%17.5%
140015.1%14.0%
150014.6%12.4%
180011.6%8.7%
20009.2%7.8%
22007.4%8.7%

At 1000, Maia3 gives the move that discards the forced mate a higher probability, 19.4 percent, than the move that actually delivers it, 16.2 percent: a 1000 rated setting is, in this position, more likely to play the blunder than the mate. That flips at 1400 and holds through 2000, where the mate leads 9.2 percent to 7.8 percent. Then at 2200 it flips back, Qxe6+ edging ahead again at 8.7 percent to 7.4 percent, because a third move, the safe queen retreat Qb7, has by then pulled just over half the probability mass on its own, 50.8 percent. Stronger settings are not simply "finding the mate more often." They are increasingly choosing not to look for it at all, correctly judging that the safe move wins anyway.

What this data does, and doesn't, prove

Two things are worth being direct about before this argument overreaches, because both cut against the tidy version of it. First, no genuine expert consensus says an engine's line is unusable below master level, and we are not claiming one exists. What we actually found searching for it was softer, more common advice: GM Avetik Grigoryan's writing critiques engines for strategic blind spots, fortresses, the search horizon, not for being statistically unfindable by weaker players, and chess writer Nate Solon's stated method is an ordering rule, think first, check the engine after, rather than a claim that the number itself is a bad teacher.

Second, there is real, credentialed disagreement with the whole framing, and it deserves to be named rather than argued around. Dan Bock, in a piece titled plainly "It's OK to just run your games through the engine," argues that imperfect engine only review, beaten by nothing, is still valuable, and that holding analysis to a "do it properly or don't bother" standard leads people to do no analysis at all. Kevin Lincoln, writing from well inside club level, states the practical case for trusting the output outright: "in chess, the computer knows, you can't argue with it." Both are right about something Findability does not undo: a review a player cannot always act on is still information that player did not have before.

What Findability actually changes is narrower than either side of that argument. It is not a case for skipping analysis. It is evidence for putting less weight on an engine's single top line in isolation, and more on the evaluation swing behind it, the pattern of what actually got refuted, and whether the position was ever close enough for the exact top choice to matter. Read that way, the data argues for using the engine differently, not for using it less.

How strong is Stockfish, really

Stockfish's own homepage does not publish a rating at all. It describes the engine only as "one of the strongest chess engines in the world," winner of the Top Chess Engine Championship and the Chess.com Computer Chess Championship. That omission is deliberate: the project's own FAQ states that rating Stockfish against human FIDE Elo has become "virtually impossible," since the strength gap is now so large a human opponent cannot generate the tens of thousands of decisive results a reliable measurement would need. Any Elo number attached to Stockfish online is somebody else's estimate, not something the team itself stands behind.

Two of those estimates are circulating right now, and they are not the same number. On CCRL's Chess324 list, its Fischer Random variant, read 22 August 2026, Stockfish 18 ranks first at 3827 (+3/-3). CCRL's separate standard 40/15 list is the one usually meant when people quote a Stockfish rating, and it reports a materially lower number, because it is a different variant at a different time control. We are deliberately not printing that figure here: we tried to read it at source on two separate passes and could not reach CCRL's own site either time (computerchess.org.uk returned 403, ccrl.chessdom.com failed to resolve), and a third party endpoint returned a conflicting and apparently stale value. Quoting a precise Elo we could not verify at its source would be exactly the kind of number this page is arguing you should not trust. Check computerchess.org.uk yourself for the current figure, and note which list and time control it belongs to, because the standard and Fischer Random lists differ by hundreds of points and neither is a number Stockfish's own team publishes.

On TCEC, the last confirmed result is Season 29's Superfinal: Stockfish beat Reckless 59 to 41, concluding 21 April 2026, its 19th TCEC title overall and 12th consecutive season title, running build dev-20260318. We could not load TCEC's own live standings while writing this, so treat that as the last confirmed result as of this writing, not a live "currently holds the title" claim: a newer season may have finished since, and TCEC's own site is the place to check.

Where the rest of the internet is behind

Two of the pages that already rank for this term are behind on basic facts, worth knowing before trusting either one blind. Chess.com's own glossary entry for Stockfish is stale: its most detailed version reference is Stockfish 12, from 2020, its cited rating figures are dated June 2023 and July 2020, and it never mentions Stockfish 18, the NNUE changes since 2020, centipawn normalization, or WDL at all. Chessigma, a free analysis tool, still describes its own board as running Stockfish 17 and calls it the strongest open source chess engine in the world, seven months after Stockfish 18 shipped. The official GitHub repository, by contrast, is accurate but not written for a general reader: build instructions, UCI protocol notes and links to the chess programming wiki, a GPL-3.0 badge and roughly 16.4 thousand stars, with no explanation of NNUE or centipawn scoring anywhere in the README.

How Chessdrive uses Stockfish

Chessdrive, the app we build, is the interested party in everything above and should be read as such. It runs Stockfish separately from gameplay, after a game closes, to review what happened, while a different model, the real maia3-5m checkpoint, runs on-device as the opponent during play, self rated anywhere from 600 to 2600. Running Stockfish ourselves is also why the Findability data above exists at all: it came out of our own pipeline, not somebody else's paper. Chessdrive's own game review, covered in full in chess game review explained, turns the resulting evaluations into per move labels, with the same GPL v3 obligations described earlier sitting behind that integration exactly as they would for anyone else shipping the engine.

One limitation worth being direct about: pairing Stockfish with Maia3 tells you how likely a rating band was to find a move, not a guarantee about what any specific player, including you, would have played. It is a probability read at the board level, not a verdict. Chessdrive is live on iOS and Android, priced at $5.99 a month or $39.99 a year on the US storefront, prices elsewhere varying by region, and both plans start with a free trial.

Last verified: 29 August 2026, against the sources cited above and against Chessdrive's own generated Stockfish and Maia3 output described in this article. Engine versions, license terms and third party rating lists change without notice; confirm current details on each project's own page before relying on them.

Frequently asked

What is Stockfish?
Stockfish is a free, open source chess engine distributed under the GNU General Public License version 3. The current release is Stockfish 18, out since 31 January 2026; we confirmed that ourselves by completing a UCI handshake with our own installed binary, which reported back "Stockfish 18 by the Stockfish developers." It calculates the objectively strongest move in a position through search plus a neural network evaluation, NNUE, rather than predicting what a particular human would actually play.
Is Stockfish free to use, and is it legal to build a product on top of it?
It is free and its source is public, but GPL v3 is copyleft, not permissive. Stockfish's own About page states that whenever you distribute it in any way, you must always include the full source code or a pointer to where it can be found, and a Stockfish maintainer clarified in an official GitHub discussion that linking it into a program obliges that program to be GPL licensed too, with the app required to tell the user it contains Stockfish. This is not hypothetical: in November 2022 Stockfish's developers settled a Munich court case against ChessBase over Fat Fritz 2 and Houdini 6, both derivative products it had sold under proprietary terms.
What does the Stockfish evaluation number actually mean?
Since a 2020 pull request, Stockfish's UCI output can report win, draw and loss percentages alongside the raw centipawn score, because a number like +2.25 does not mean the same thing early in a game as it does near the end. Per the engine's own FAQ, a 1.0 pawn, 100 centipawn advantage corresponds to roughly a 50 percent win probability in engine self play. The scale itself was formally pegged to that win probability model in a commit the team made specifically because the centipawn value tied to a 50 percent result had been drifting release to release. What that number does and does not tell you about search depth and post game accuracy scores is covered in full in our companion piece on what chess analysis can and cannot tell you.
How strong is Stockfish, in Elo terms?
Stockfish's own team does not publish one; its FAQ states that rating it against human FIDE Elo has become virtually impossible given the size of the gap. Third party lists disagree with each other too: CCRL's Chess324, its Fischer Random variant list, read 22 August 2026, has Stockfish 18 at 3827. CCRL's separate standard 40/15 list, the one usually meant when people quote a Stockfish rating, reports a materially lower figure; we could not reach CCRL's own site on two attempts, so we are not printing a number we could not verify at source. Those are different lists under different rules and should never be quoted as the same number.
Does Stockfish still hold the TCEC title?
As of the last confirmed result, yes: Stockfish won Season 29's Superfinal 59 to 41 against Reckless, concluding 21 April 2026, its 19th TCEC title overall and 12th consecutive season win. A newer season may have finished since; TCEC's own site is the place to check for anything more recent than that date.
Should I trust Stockfish's top move if I'm not a strong player?
Use it, but read it as a hint rather than a verdict. Our own data on one sharply tactical historical game found that the probability a player would actually play Stockfish's own top choice barely changed across a twelve hundred point rating range, staying between about 16 and 18 percent. That is not proof the line is worthless below master level, a claim we could not find real expert support for either; it is evidence that finding the engine's best move and being told what the engine's best move is are two different skills.
What's the difference between Stockfish and Maia?
They solve opposite problems. Stockfish searches for the objectively strongest move regardless of who has to play it next. Maia, the model behind our own Findability numbers, is trained on millions of real human games to predict what a player at a given rating would actually play, mistakes included; our full reference on it covers the three generations and their licenses.
How does Chessdrive use Stockfish?
It runs Stockfish separately from gameplay, after a game closes, to review what happened, while a different model, the real maia3-5m checkpoint, runs on-device as the opponent during play at a chosen strength from 600 to 2600. Chessdrive is the interested party describing its own product here and is live on iOS and Android.

Want to see Findability yourself, not just read about it?

Chessdrive runs Stockfish for the review and the real Maia3 model on-device for the opponent, in one app on iOS and Android. Free to start.

Keep reading