15 Solvers: How They Work and How to Study With Them
For most of poker’s history, “good strategy” was a matter of opinion backed by results. Then came the solvers. A solver takes a precisely defined poker situation and computes a strategy that cannot be exploited. Played correctly, it guarantees you at least the equilibrium value of that situation for your seat against any opponent. (That value can be positive or negative; out of position, or after rake, it is often negative.) Learning to study with one is among the highest-leverage things a modern player can do.
By the end of this chapter you will be able to set up a realistic solver simulation, read its output for transferable principles, and node-lock it to exploit a specific opponent.
Solvers are also widely misused. Players memorize outputs they don’t understand, chase precision that doesn’t matter, and forget that the solver answers one narrow question, “what is unexploitable against a perfect opponent?”, which is often not the question you face at the table. This chapter covers what solvers do, what you feed them, the available tools, and a workflow for turning output into transferable skill.
15.1 What a solver actually computes
A solver finds (an approximation of) a Nash equilibrium for the spot you define. In a two-player zero-sum game like heads-up postflop poker, a Nash equilibrium is a pair of strategies, one per player, such that neither can improve their expected value (EV) by unilaterally changing their own. Both play the best possible response to the other. That is the meaning of “GTO,” game-theory-optimal: the strategy at the equilibrium.
The key property is unexploitability. If you play your half of the equilibrium, the worst any opponent can do is hold you to that equilibrium value, and their mistakes often hand you more. The posture is defensive: the solver aims to be impossible to punish rather than to punish any specific bad player. That distinction matters once we reach limitations.
Counterfactual regret minimization (CFR)
Solvers don’t compute the equilibrium with a closed-form equation; the game tree is far too large. They use an iterative self-play algorithm, almost always a variant of counterfactual regret minimization (CFR).
The intuition is simpler than the name. Imagine two copies of the program playing the same spot thousands of times. On each iteration, at every decision point, it asks a “what if” question: for each action I could have taken (check, bet small, bet big, fold), how much better or worse would I have done than my current mix, weighted by how likely the game was to reach this point? That weighted difference is called regret. Better actions accumulate positive regret; worse ones, negative.
The algorithm then adjusts. On the next iteration it shifts its mix in proportion to accumulated positive regret: actions it “regrets not taking” get played more, actions it regrets taking get played less. Crucially, the solver reports the average strategy over all iterations, not any single one, and a theorem of CFR guarantees this time-averaged strategy converges toward a Nash equilibrium as iterations grow.
A few practical consequences follow:
- Solutions are approximate. You never reach the exact equilibrium, only get closer. The remaining error is measured by exploitability, usually reported as a fraction of the pot.
- The error metric matters. Most software lets you set a target accuracy as a percentage of the pot. A solve to 0.5% of the pot is good enough for nearly all study; chasing 0.1% can multiply your solve time for differences you will never perceive at the table.
- Mixed strategies are normal. To remain unexploitable, the solver frequently splits a single hand across actions, for example betting A♠Q♠ 60% and checking it 40%. The split is not indecision; the equilibrium genuinely requires a mix.
A solver answers exactly one question: “What strategy cannot be exploited if my opponent also plays perfectly?” Every strength and every limitation of solver study follows from that single sentence.
15.2 Inputs: garbage in, garbage out
A solver’s answer is only as meaningful as the situation you define. Defining it, building the game tree (the full branching map of every action both players can take), is where most of the skill and most of the mistakes live. The core inputs:
Ranges. Specify the full range of hands each player can hold at the start. For a single-raised pot this might be “BTN opens to 2.5bb with roughly the top 45% of hands; BB calls with a defending range,” entered hand by hand and often with frequencies (e.g., calls A5s 100%, calls K9o 50%). The output is exquisitely sensitive to these ranges: put in hands a real opponent would never hold, and the solution is “correct” only for a fantasy game.
Board. The specific flop, e.g., Q♥7♦2♣ (rainbow, three different suits). A flop solve automatically computes strategies for every turn and river below that flop; you do not specify a runout. (You may fix a turn card for a faster turn-only solve, or load a specific river to study one spot.)
Stack depth and pot size. Effective stacks and the starting pot, both in big blinds. A spot 40bb deep is a different game from the same board 150bb deep.
The bet-size tree. The menu of allowed actions: which bet sizes each player may use on each street, for example “flop: check, bet 33% pot, bet 75% pot; turn: check, bet 50%, bet 125%, all-in.” The solver can only choose among the sizes you offer. Offer too few and you may miss the best strategy; offer too many and solve times explode while the EV gain becomes trivial.
Rake (for cash games). Online rake meaningfully changes marginal decisions, especially preflop and in small pots. A no-rake solve overstates how much you should play.
The single most common solver error is feeding it unrealistic ranges and then trusting the precise output. If you assume your opponent 3-bets a perfectly balanced, polarized range (strong value hands and bluffs, with little in between) and they actually 3-bet only premiums, the solver’s bluff-catching frequencies answer a question you will never be asked. Spend more time on your range assumptions than on the third decimal place of the output.
15.3 Outputs: reading the matrix
Once solved, the software hands back a strategy at every node of the tree. The outputs you’ll actually use:
- Action frequencies. For each hand, how often it takes each action. Usually shown as a 13×13 hand grid colored by action; a glance tells you the shape of the strategy (which hands bet, which check, how polarized it is).
- Overall strategy at a node. The aggregate: “this range bets 75% pot 28% of the time, bets 33% pot 22%, checks 50%.” This is the betting frequency for the whole range, which governs your meta-strategy.
- EV. The expected value of each hand and of each action, typically in big blinds or chips. Comparing two actions’ EV tells you whether a decision is high-stakes (big gap) or nearly indifferent (tiny gap, where the mix barely matters).
- Equity vs. EV. Equity is your raw share of the pot if all cards ran out; EV folds in the strategic value of position, initiative, and future betting, which is what position is worth. The ratio of EV to raw equity is your equity realization (R): hands and positions that comfortably reach showdown realize >100% of their equity, while hands that are out of position (OOP), capped (holding none of the nutted combinations), or simply hard to play realize less.
- Range breakdowns / made-hand categories. How much of a range is value, top pair, draws, air, etc., after a given line.
Two higher-level tools deserve their own treatment.
Aggregate (range) reports
Instead of solving one flop, you solve the same preflop spot across many flops at once, often a sample of all 1,755 strategically distinct flops, or a chosen subset, and view a summary table: for each board, the continuation-bet (c-bet) frequency, the average bet size, the overall EV, and so on. This is where principles come from. You stop asking “what do I do on Q♥7♦2♣?” and start asking “across all ace-high disconnected boards, how does the in-position (IP) raiser’s c-bet frequency change?” Patterns leap out: high, dry, ace- or king-high boards favor a high-frequency small c-bet; low, connected, two-tone boards favor a more checked, polarized strategy. You cannot recall 1,755 board-specific strategies, but you can recall a dozen board-texture rules.
Node-locking
By default both players play the equilibrium. Node-locking lets you override one player’s strategy at a chosen node and re-solve for the best response against that fixed (usually deliberately flawed) behavior. This turns a GTO machine into an exploitative one.
Example: lock the river so the opponent never bluffs when they bet, fixing their betting range to value only. Re-solve, and the solver shows the maximally exploitative counter: fold all your bluff-catchers, because there is nothing to catch. Conversely, lock them to over-fold to river raises and the solver starts raising thin value and even pure air. Node-locking is the bridge between this chapter’s theory and the “play the player” material elsewhere: you encode a population read as a locked node, and the solver tells you how to attack it.
The equilibrium output tells you how to be unbeatable. Node-locking tells you how to be maximally profitable against a specific flaw. Strong players use the first to understand the game’s structure and the second to win the most against real opponents.
15.4 The tools
You don’t need all of these; pick one or two and go deep. As of this writing:
- PioSOLVER. The long-standing professional standard for heads-up postflop spots. Extremely fast and configurable; runs locally on your own machine (RAM is the main constraint for deep, wide trees). The learning curve is steep, but it is the reference tool for serious cash-game study.
- GTO Wizard. A cloud/browser-based platform with enormous libraries of precomputed solutions for common formats (cash, MTT with ICM, spin-and-gos), plus its own solving, aggregate reports, drilling, and hand-history analysis. Far lower friction than Pio (you can browse equilibria in seconds), at the cost of less control over fully custom trees. Excellent for volume study and for tournament players.
- Simple Postflop. An older, more approachable postflop solver; lighter on features than Pio but historically a gentler on-ramp and cheaper.
- MonkerSolver. The go-to for multiway pots (3+ players) and complex preflop/tournament trees. Multiway solving is dramatically harder: the game tree and memory requirements balloon, and equilibria in 3+ player games carry theoretical caveats. Still, Monker is the practical tool when you must study a limped four-way pot or a multiway all-in.
A critical distinction for tournament players is ICM. In tournaments, chips are not worth a linear amount of money: the Independent Chip Model translates a chip stack into real-money equity, and near pay jumps this radically changes correct play (you fold hands you’d happily stack off with in a cash game). Solvers that support ICM (GTO Wizard, MonkerSolver, ICMIZER for preflop push/fold) bake it into the EV calculation, so a cash-game (chip-EV) solve will badly misadvise you on a final-table bubble. The mechanics belong to the tournament chapters; here, just know your solver must be told you are playing for ICM.
15.5 A worked example: reading a single output
Let’s make this concrete. Single-raised pot, 100bb effective, online 6-max. BTN opens to 2.5bb, BB calls. Flop comes Q♥7♦2♣ (rainbow, dry, queen-high). Pot is roughly 5.5bb. BB checks. We are studying BTN’s c-bet, with a size tree of {check, bet 33%, bet 75%}.
A typical equilibrium output:
- Overall: BTN bets ~75–85% of the time, almost entirely using the small 33% size. The large size is used rarely or not at all.
- Why: Q♥7♦2♣ hugely favors the preflop raiser. BTN holds essentially all the overpairs (AA/KK) and far more AQ/AK, while BB’s strongest holdings (QQ, AK, AQs) were largely 3-bet preflop. BB still has KQ/QJ and small sets but is heavily outgunned at the top, and the rest of its range leans toward suited connectors and broadways that mostly missed. This range advantage, plus a flat, low board (few turn cards scare BTN, few draws exist), is the textbook condition for a high-frequency, small-sized “range bet”: BTN bets almost everything cheaply because BB cannot fight back hard.
- Hand by hand: A♠Q♠ bets near 100% (value, building a pot). 8♠8♦ (an underpair to the queen) bets often for thin value and protection. K♣J♣ (overcards plus backdoors) bets as a semi-bluff at high frequency. 5♦4♦ bets sometimes as a pure bluff with a backdoor straight draw and gives up otherwise. A near-air hand like J♥9♥, which has only a weak backdoor flush draw (its hearts share a suit with the Q♥) and a thin runner-runner straight, might mix bet and check; here the EV gap between betting and checking is tiny, the solver’s way of saying the exact frequency is nearly irrelevant.
The transferable lesson is not “bet J♥9♥ 41% of the time.” It is: on dry, high, range-advantaged boards, the in-position preflop raiser should bet a very high frequency for a small size, and the exact hand-by-hand mixes barely matter. That one sentence applies to hundreds of boards; the specific percentage applies to exactly one, against an opponent you will never meet.
Take three flops of contrasting texture: A♣8♦3♥ (dry, ace-high), 9♥8♥7♣ (wet, connected), and K♦K♠4♣ (paired), for the same BTN-vs-BB single-raised pot. Before you open the solver, write down a prediction: high or low c-bet frequency, small or large size, polarized or condensed. Then check the aggregate report and grade yourself. The gap between your guess and the solution is your actual study list.
15.6 How to study: extracting principles instead of memorizing outputs
The difference between players who improve with solvers and those who waste years on them is one habit: study for understanding, not recall. You cannot memorize every board, range, stack, and size combination, and at the table you have only seconds. Internalize the logic so you reconstruct the right strategy on the fly.
Work in this order of questions, every time:
- Who has the range advantage? Whose range has more equity on this texture overall?
- Who has the nut advantage? Even with equal overall equity, whoever holds more of the absolute nuts (sets, straights, the top overpairs) gets to use big sizes and apply real pressure.
- What does the texture do to draws and future streets? Dry boards favor small, high-frequency betting; dynamic boards favor polarization and bigger sizes because equities shift hard on later cards.
- What is the EV gap on the marginal hands? Big gap = a real decision worth learning. Tiny gap = the solver is indifferent, so the exact split is not worth memorizing.
When you find a pattern, put it in a sentence you could teach someone else: “The defender check-raises more on low connected boards because they hold the range’s nutted hands there and the raiser’s overpairs are vulnerable.” If you can say it, you own it. If you can only point at a colored grid, you don’t.
Memorizing frequencies on indifferent hands. Players spend hours drilling that some hand bluffs 33% versus 38%, a distinction with essentially zero EV consequence, while missing the high-leverage structural facts: which size, what overall frequency, and why. Always check the EV difference between actions before deciding a mix is worth learning. If the EVs are within a sliver, the decision doesn’t matter; believe the solver and move on.
15.7 Limitations: the perfect opponent who never shows up
Everything a solver tells you assumes your opponent also plays the equilibrium. Real opponents do not. They c-bet too much, fold too often to river bets, never check-raise bluff, and call down too light. Against them the GTO strategy is merely unexploitable: it captures the equilibrium value and no more, and never punishes their specific leaks.
The limitations to keep front of mind:
- It assumes perfect opposition. Against a fish who never bluffs, GTO has you bluff-catching at equilibrium frequency and losing money, when folding would be free. The subtlety: at true equilibrium those calls break even, because the opponent’s bluffs make you exactly indifferent (EV of call = EV of fold). Once the opponent stops bluffing, every such call becomes strictly worse than folding, yet the fixed equilibrium strategy never adapts.
- It assumes common knowledge of ranges. The solver presumes both players know each other’s exact starting ranges and the entire bet-size tree. Real opponents can’t see your range, so balanced plays that exist only to deter a perfectly informed exploiter are wasted against opponents who don’t know what you hold.
- It is only as good as your tree. Wrong ranges, a too-thin bet-size menu, or omitting rake all produce confident, precise, wrong answers.
- Opponents bet off-tree. Because the solver only knows the sizes you gave it, a real opponent’s off-tree bet (say 60% into your 33%/75% tree) has no exact answer. Round to the nearest tree size, lean on the principle (how polarized is this size, what does it represent), and don’t over-trust a frequency that assumed a size your opponent never used. More sizes also make solutions less stable and slower to converge, another reason to keep trees lean.
- Heads-up and chip-EV by default. Multiway equilibria are theoretically thorny and computationally brutal; tournament ICM must be explicitly modeled. Don’t apply a heads-up cash solve to a four-way ICM spot.
- No exploits, no dynamics, no soul-reads. The solver doesn’t know this villain tilts, that one is a nit, or that the table just turned over. It has no timing tells, no bet-sizing reads, no history. Those live in the psychology and hand-reading chapters, and against weak fields they out-earn pure GTO handily.
- The table is not a study room. You have seconds and no grid. Solvers build the library of principles you draw on; they cannot make the decision for you live.
Use GTO as your default and baseline: a sound, unexploitable strategy you fall back on when you have no read, and the reference point you deviate from. Then deviate deliberately, in the direction your reads justify, to exploit. GTO is where you start; exploitation is where you profit. A strong player moves fluidly between the two.
15.8 A practical solver study workflow
Bring it together into a repeatable routine. A focused 60–90 minute session beats hours of aimless clicking.
Start from your own hands, not random spots. Pull 5–10 hands from your recent sessions where you were genuinely unsure or got a bad result. Real confusion is the best curriculum. Tag spots during play so you can find them later.
Define the tree honestly. Set the ranges to what your actual pool does, not idealized ranges. Use a realistic bet-size menu (2–3 sizes per street is plenty for study), correct stacks, and rake for cash.
Solve to a sane accuracy and zoom out first. Target ~0.5% of pot. Before diving into one flop, run the aggregate report across many boards to see the big-picture pattern. Identify the structural strategy, overall frequency and size, before any single hand.
Interrogate the spot with the four questions. Range advantage? Nut advantage? Texture and dynamism? EV gaps on marginal hands? Write the answers down in plain language.
Node-lock to exploit. Encode your population read (“this pool under-bluffs rivers,” “they over-fold to check-raises,” “they never barrel turn after checking flop”) as a locked node, and re-solve for the best response. This is where theory becomes a concrete adjustment you can use tomorrow.
Write one transferable principle per spot. End every spot with a single teachable sentence, and keep a running document of these. Over months it becomes your strategy book, more valuable than any saved solve file because it lives in language you can recall at the table.
Drill, then test under time pressure. Use a trainer (GTO Wizard’s drills, or self-made flashcards from your principle list) to rehearse, but always grade against understanding: can you explain why, not just click the green box? Then deliberately apply the principle in your next session and review whether it held.
The goal is not to become a worse, slower copy of the solver. It is to absorb the structure of correct play so deeply that your table instincts are sound, and then to layer your human reads on top. The solver builds the foundation. You build the house.
- A solver approximates a Nash equilibrium: the unexploitable strategy for the exact spot you define, assuming the opponent is also perfect.
- Its answer is only as good as your inputs: ranges, board, stacks, the bet-size tree, and rake.
- Read outputs for structure (overall frequency, size, who holds the range and nut advantage), and pull principles from aggregate reports rather than memorizing near-indifferent hand-by-hand frequencies.
- GTO is the unexploitable baseline; node-locking turns it into an exploitative tool against a real, specific flaw.