Theory · For players
Nobody at Your Table Plays GTO
Why a model of your pool tells you more than an equilibrium ever will.
A solver finds a strategy that cannot be exploited by any opponent. That is a real achievement, and it is worth understanding. But look at what the solver was asked: "how do I avoid losing to a perfect opponent?" That is a defensive question. It has a defensive answer. Balance your bluffs, defend the right frequency, mix your actions so nobody can profit from a pattern. It is the perfect answer to a game nobody is playing.
The question you actually face at the table is different: "how do I win the most against these people?" The players in your pool are not perfect opponents. They fold too much on some boards and not enough on others. They bet one size with their whole range. They give up on the turn with hands that should keep going. They have leaks, and those leaks are where the money is.
GTO is a shield. It keeps you safe against the opponent who does not exist. Exploitation is the sword. It takes money from the opponents who do.
A correct answer to the wrong question
We are not saying GTO is wrong. Equilibrium strategies are mathematically sound, and studying them teaches you a lot about the structure of the game. The problem is relevance. An equilibrium is computed against an opponent who also plays equilibrium. Deviate from that assumption and the whole calculation is answering a question about a table you will never sit at.
Consider what happens when you study a solver output and then sit down at a real game. The solver told you to defend a certain frequency against a bet, because a perfect opponent would bluff exactly enough to make that defense necessary. Your real opponent bluffs half as often. Now your "correct" defense loses money on every call. The solver was not wrong. It assumed a perfect opponent, and your database says otherwise.
What we do instead: model the players
PokerLab AI does not solve the game. It models the field. For any point in a hand and any specific holding, the model answers: what will the pool do here, with what probability, and with what bet size?
That model is built from real hands, in large volume, from one specific limit and format. It learns only from what is visible at the table: the actions everybody sees, plus the cards that get shown at showdown. Nothing from a solver goes into it. The result is not a theory of how poker should be played. It is a description of how this pool actually plays it.
Once you have that model, a new kind of question opens up. Instead of "what is balanced here?" you can ask "what is the best response to what these players actually do?" That is an exploit, and the model computes it directly: for every hand you might hold, the action with the highest expected value against the field as it really behaves.
What that looks like on a real board
Take a spot the field plays one way and the exploit plays another. You called a raise before the flop, out of position. The flop comes with no obvious help for a pair of fives. The pool's default here is to check and see what the raiser does.
The exploit finds a donk bet with the fives, at a small size, about a third of the pot. Not because a solver says donking is balanced here. Because the model has watched how this pool responds to a small lead on this texture: what they fold, what they raise, what they call and then give up with on the turn. Against that specific behavior, the bet makes more money than the check.
The explorer shows the whole tree: the pool's response to each size, what happens on each turn card, where the value comes from. You can follow the reasoning yourself: click through the tree and see where the value comes from.
Every "what if" used to cost you a sample size
The larger point is not one donk bet. It is that questions which used to require months of play can now be asked directly.
- What if I limp-raise all my QQ+ instead of opening them?
- What if I bluff the river small and value-bet it big?
- What if I stop donking flops against the field entirely? What if I donk more? What changes against winning regulars?
Each of these used to be a hypothesis you tested with your bankroll over a sample large enough to trust. Now each is a query against the model. You still have to think about the answer. But you no longer have to pay for it at the table. That is the whole shift: do not solve the game, model the players.
What an exploit is, and what it is not
One thing to understand before you use any of this. The exploit the model computes is a ceiling. It is the best response to a field that plays the way the data says it plays, and does not adjust to you. Think of it as the answer for your first hand at a table where nobody knows you yet.
Real opponents notice things. A pool that has seen you donk every flop will not keep folding to it. So the exploit is not a fixed script. It is a tool for understanding where the money is in a spot, and how far the field's actual play is from the best response to it. What you do with that understanding is still your decision.