Same high card, different game
Continuation-bet frequency at the first decision, single-raised pots BTN vs BB in position · 2.0M decisions
- 1.2 billion real decisions drew this map. No theory, no assumptions — a boundary only counts if it shows up in every spot, at every stake, in two independent halves of the player pool.
- The first thing that matters is the gap, not the high card. K82 and KJ9 share a king — and play 15 points apart.
- Kings, not aces. Kxx is the most c-bet texture in poker (76%). Axx is the least c-bet of the dry boards — your opponent has aces too.
- J98 is not a J-high board. It plays like T98 (7 points away), not like J63 (24 points away). Below the queen, connection beats rank.
- Defenders answer texture with check-raises, not folds. Folding barely moves (38–46% everywhere); check-raising triples, from 6% on AKQ to 19% on 432.
What are texture classes for?
There are 22,100 possible flops. Every study workflow — human or software — compresses them into texture classes so that stats, drills, and reads have workable units. A class map has one job: boards inside a class should be played the same way by the population, and boards in different classes differently — with few enough classes to think in, and definitions a player can hold in their head.
Most texture taxonomies are drawn from intuition: high card first, then “wet or dry” by feel. We wanted to know what the map looks like when nobody draws it — when the data draws it.
How we let the data draw the map
For every flop rank pattern (952, KJ9, A84 … there are 455 of them, plus suit states), we measured the population’s continuation-bet frequency at the first decision, regulars only, in three aggressor spots: 3-bet pots from both sides, and single-raised pots in position. On the other side of those pots we measured the defender’s fold and check-raise frequencies against the c-bet. Then we handed a decision tree the raw ingredients — high card, middle card, low card, the gaps between them, paired-ness, suits — and let it split the flop space greedily, one boundary at a time, wherever population behavior separated most.
Two safeguards keep this honest. Every boundary must replicate: we grow the tree on a random half of the player pool and score it on the other half, many times — boundaries that don’t survive the split are noise and get no vote. And every claim must hold everywhere: in all three spots, and at both ends of the stakes range (NL50–100 and NL200–1000 populations agree on the class ordering at rank correlation 0.93+). The numbers below cleared both bars.
The first cut is the gap, not the high card
Ask a player to sort flops and they’ll start with the high card. The tree doesn’t. Its first split — chosen in 16 of 16 player-halves, with three times the explanatory power of any alternative — is: does the board contain a gap of four or more ranks anywhere?
The map's first three decisions, as the tree drew them
Share of flops · typical c-bet range (single-raised pots, IP)
It makes poker sense the moment you see it. A gap is where calling ranges miss. Suited connectors, middling broadways, pocket pairs — the hands that continue preflop cluster in adjacent ranks. A board with a hole in it connects with fewer of them; a compact board connects with almost all of them. The high card tells you who holds top pair. The gap structure tells you how much of the range whiffed — and that, it turns out, is the first thing population behavior keys on.
On dry boards, the ladder is real — and the king rules, not the ace
Here’s the part that vindicates tradition: once the tree is working inside gapped boards, it re-invents the high-card ladder on its own — splitting off ace-high, king-high, queen-high, exactly the classes players already use. But the order it finds isn’t the one in most players’ heads:
The dry side, sorted by aggression
C-bet% by class, single-raised pots BTN vs BB IP · dry = contains a 4-rank gap, unpaired, not monotone
Below the broadways, structure beats rank
The ladder stops working underneath the queen. J98 and T98 sit 7 points apart — but J98 and J63 sit 24 points apart. Sorting these boards by their top card puts J98 and J63 in the same bucket, which is exactly backwards. What actually organizes this region is a connected staircase that cuts across the rank classes, falling in three tiers: HHx Connected (KJ9, QT9 — 63%), Mid Connected (JT8, T98, 987 — 47%), and Low Connected (876, 654, 432 — 40%):
The connected staircase
Root c-bet% by family, single-raised pots BTN vs BB IP · all boards compact (no 4-rank gap)
What suits are — and aren’t
The tree had suit information available at every step. It used it exactly once: monotone boards split into their own class (they suppress aggression by roughly ten points). The flush draw — two-tone versus rainbow — was never chosen as a boundary, at any map size up to 20 classes. Measured directly, two-tone shifts the root decision by 2–7 points; rank structure shifts it by up to 30. Flush draws matter for later streets and range composition, so they belong in filters you layer on top of classes — but building class walls out of them mixes boards that play 20+ points apart. Data closed that debate.
The defender answers with check-raises, not folds
Here is the finding we didn’t expect. Facing a c-bet, the population’s folding is nearly texture-blind: from the wildest connected board to the driest ace-high, fold-vs-c-bet spans just 38–46% — an 8-point range against the attacker’s 42-point range. But their check-raising is anything but blind:
Check-raise vs c-bet, by texture
BB defending vs BTN's flop c-bet, single-raised pots · 1.1M decisions
How many classes does the data want?
Each added class buys less than the one before. Measured on held-out halves of the player pool, the curve climbs steeply to ~8 classes, keeps paying to ~14–16, and flattens after. We shipped 16 classes under 8 parent groups — and every parent is itself a queryable texture, so you can read the map at whichever altitude fits the question. Where the data agreed with tradition, we kept tradition’s names; where it didn’t, tradition already had the right word: mid.
The map: 16 classes, drawn by the data, named like a poker player
Anchor rates: root c-bet% (single-raised BTN vs BB IP) · fold% and check-raise% (BB vs that c-bet) · x = any low card
| Class | Definition | Examples | Share | C-bet | Fold | X/R |
|---|---|---|---|---|---|---|
| HHH | ||||||
| HHH | three broadways | AKQ, QJT | 2.7% | 68.7 | 44.5 | 6.2 |
| HHx — two broadways | ||||||
| ABx | ace + broadway + rag | AT2, AQ4 | 8.9% | 68.4 | 45.8 | 6.3 |
| HHx Connected | compact, no ace | KJ9, QT9 | 3.0% | 63.1 | 45.3 | 9.6 |
| HHx Disconnected | gapped, no ace | KQ2, QJ2 | 9.4% | 70.7 | 46.3 | 9.2 |
| Hxx — one high card | ||||||
| Axx | lone ace | A72, A93 | 7.7% | 68.6 | 45.8 | 12.0 |
| Kxx | lone king | K82, K64 | 7.7% | 76.4 | 43.2 | 13.3 |
| Qxx | lone queen | Q72, Q65 | 7.4% | 71.1 | 42.7 | 13.8 |
| J/Txx | lone jack or ten above rags | J32, T53 | 4.4% | 71.4 | 41.0 | 16.4 |
| Mid | ||||||
| Mid Connected | compact, 9-high to J-high | JT8, T98, 987 | 5.0% | 46.5 | 37.8 | 14.4 |
| Mid Disconnected | J/T-high, gapped | J84, T73 | 8.4% | 62.5 | 41.2 | 14.4 |
| Low | ||||||
| Low Connected | compact, 8-high or less | 876, 654, 432 | 5.6% | 40.2 | 41.9 | 18.3 |
| Low Disconnected | 9-high or less, gapped | 852, 943 | 7.4% | 60.0 | 41.9 | 16.5 |
| Paired | ||||||
| Paired High | pair of tens or better | QQT, TT4 | 6.6% | 79.1 | 44.9 | 14.4 |
| Paired Low | pair below ten | K88, 332 | 10.4% | 69.4 | 43.6 | 18.8 |
| Monotone · Trips | ||||||
| Monotone | three of one suit | KQ5♠♠♠ | 5.1% | 58.3 | 44.5 | 11.3 |
| Trips | three of one rank | 888 | 0.2% | 82.4 | 51.0 | 5.2 |
Data table — all classes, attack and defense
| Class | C-bet SRP IP | Fold vs c-bet | Check-raise |
|---|---|---|---|
| HHH | 68.7 | 44.5 | 6.2 |
| ABx | 68.4 | 45.8 | 6.3 |
| HHx Connected | 63.1 | 45.3 | 9.6 |
| HHx Disconnected | 70.7 | 46.3 | 9.2 |
| Monotone | 58.3 | 44.5 | 11.3 |
| Axx | 68.6 | 45.8 | 12.0 |
| Kxx | 76.4 | 43.2 | 13.3 |
| Qxx | 71.1 | 42.7 | 13.8 |
| Paired High | 79.1 | 44.9 | 14.4 |
| Mid Disconnected | 62.5 | 41.2 | 14.4 |
| Mid Connected | 46.5 | 37.8 | 14.4 |
| J/Txx | 71.4 | 41.0 | 16.4 |
| Low Disconnected | 60.0 | 41.9 | 16.5 |
| Low Connected | 40.2 | 41.9 | 18.3 |
| Paired Low | 69.4 | 43.6 | 18.8 |
| Trips | 82.4 | 51.0 | 5.2 |