Inside the Engines: How Strong Are Stockfish, Fairy-Stockfish, Pikafish and KataGo?
Inside the Engines: How Strong Are Stockfish, Fairy-Stockfish, Pikafish and KataGo?
Every game you play against the computer on your phone has a "brain" behind it. The four names that dominate the engine world today are Stockfish, Fairy-Stockfish, Pikafish and KataGo — and three of them run inside SynerWorlds' own games. Where do they differ, how strong are they really, and why can engines from the same family be hundreds of points apart? This article takes them apart one by one.
Two schools of architecture
Before the names, it helps to know that modern engines belong to two broad schools:
- Alpha-beta search + NNUE evaluation — the Stockfish school. The engine races through the move tree (tens of millions of positions per second), prunes aggressively, and scores positions with a small neural network called NNUE — small enough to run efficiently on a CPU, smart enough to have completely replaced the hand-crafted evaluation functions of the old days.
- Monte Carlo tree search (MCTS) + deep self-taught networks — the AlphaZero/KataGo school. Instead of brute force, the engine learns intuition from millions of self-play games and uses that intuition to guide its search. This suits Go especially well, where the move tree is far too vast for alpha-beta methods.
All four engines in this article are open source — anyone can download them. What differs is the game they play, how specialised they are, and how much hardware they are allowed.
Stockfish — the king of Chess
Stockfish has been the world's strongest chess engine for years: champion of virtually every TCEC and CCC season since 2020, and top of the CCRL engine rating list at roughly 3,640–3,650 Elo on the engine scale — some 750 points above Magnus Carlsen's 2882 record on paper, in the engines' own pool. Remember the lesson of our Elo article: engine lists and FIDE ratings are different pools and do not convert rigidly. But the practical conclusion is undisputed — at full strength, no human stands a chance against Stockfish anymore.
Its secret is the combination of an extremely optimised alpha-beta search and NNUE evaluation: its networks are trained continuously on community self-play data, and hundreds of volunteer developers verify every small change over millions of test games. This is the engine running inside SynerWorlds' Chess game.
Fairy-Stockfish — the all-rounder of variants
Fairy-Stockfish, developed by Fabian Fichter as a Stockfish fork, pursues the opposite ambition: instead of mastering one game, it plays dozens of chess variants — Xiangqi, Shogi, Janggi, Makruk, Crazyhouse and many custom variants — and powers major variant platforms such as Lichess and Pychess.
Versatility has a price: in standard chess it trails the original Stockfish by more than 100 Elo, because it carries generalised code for every exotic piece type. In Xiangqi, by its own project documentation, its NNUE build plays at a superhuman level yet still sits a few hundred Elo below the top specialised engines. In exchange it is extremely flexible, cleanly GPL-licensed, and available in a build that runs right in the browser — which is why SynerWorlds' Xiangqi game uses Fairy-Stockfish for all 12 levels: even inside a browser at full effort, it remains far beyond any human master a player will ever meet.
Pikafish — the pure Xiangqi specialist
If Fairy-Stockfish is a decathlete, Pikafish is a weightlifter with a single event. Pikafish also forks from Stockfish, but strips away every other variant to play Xiangqi only, and trains its NNUE network on billions of xiangqi positions. The result is widely recognised as the strongest open-source xiangqi engine today — Fairy-Stockfish's own documentation points to Pikafish when naming the specialised engines it trails by a few hundred Elo.
Two practical details are less well known. First, at the top of computer xiangqi the draw rate is extremely high — a gap of a few hundred Elo between two strong engines often shows up as only a razor-thin winning margin over thousands of games, because neither side makes real mistakes anymore. Second, Pikafish's code is GPL, but its neural-network weights file carries separate terms restricting commercial use — a legal detail any product embedding Pikafish has to read carefully. On SynerWorlds, Pikafish currently serves as the reference point for where the ceiling of computer xiangqi sits, rather than as an engine we run directly.
KataGo — the benchmark of Go
KataGo, developed by David Wu and released in 2019, is the open-source heir of the AlphaGo wave — but far more efficient than its ancestors: thanks to a series of algorithmic improvements, it surpassed the early AlphaGo-line programs at a fraction of the computing cost, and it is the strongest public Go engine today. Professional players no longer "compete" with it; they use it as a teacher — to analyse openings, test moves and learn new ideas.
KataGo belongs to the second school: a deep neural network combined with Monte Carlo search, and its strength scales steeply with thinking time and GPU power. That is also the honest caveat for SynerWorlds' Go game: the KataGo running in your browser gets only a few seconds per move on your own machine, so our highest level plays at roughly amateur 3 dan — strong for club players, but not the "full" KataGo on a server GPU. Same name, different hardware and thinking time, entirely different class.
How to read engine strength correctly
Three principles keep the numbers from fooling you:
Engine Elo is its own scale. CCRL for chess, separate lists for xiangqi and Go — every list has its own baseline, and none of them is a FIDE rating.
Strength depends on match conditions. The same engine on 4 CPU cores with 15 minutes a game is a different beast from 1 core with 1 second a move. Every number must be read together with its hardware and time control.
Specialists beat generalists — in their own game. Pikafish beats Fairy-Stockfish at xiangqi but cannot play Shogi; Stockfish rules chess but knows no xiangqi. Choosing an engine is choosing a trade-off.
And the most important common point: all four engines have surpassed humanity in their own game at full strength. The race today is no longer human versus machine — it is machine versus machine, and the winner is the player: everyone now carries a coach stronger than any champion in history, right inside their browser. The job of games like SynerWorlds is to tame that strength into 12 levels that fit you — the rest is up to you.
Comments
No comments yet. Be the first to share your thoughts!