How these numbers are made
A player page makes two kinds of claim.
Claim 1
Someone differs from a reference group.
Depends on which group.
Part 1 · Who you are compared against →Claim 2
The difference is big enough to believe.
Depends on how many hands are behind it.
Part 2 · Whether a difference is real →Both are worked out below, with the arithmetic shown.
Part 1
Who you are being compared against
Three reference groups appear on a player page and they are not interchangeable. Two of them can differ by four points on the same statistic in the same game — which reads as a contradiction until you know what each one counts.
| Group | Who is in it | Used on | Why |
|---|---|---|---|
| Pool | every player in this game with 500+ hands.One vote each. | Distance from poolEvery named leak | why unweighted → |
| Field | The same people.Weighted to the winners’ volume profile. | What makes money hereRadar chart comparison | why re-weighted → |
| Winners | The profitable subset.Measured on hands not used to pick them. | What makes money hereRadar chart comparison | why split in half → |
1.1 The player pool — what everybody does
The question it answers
What does a typical player in this exact game do?
It is the reference group behind the Distance from pool panel and behind every named leak.
It is built in five steps.
- 1
Cut the data to one game.
Same currency, same stake, same table size — and the same room, wherever that room has enough players to stand on its own.
NL2 and NL200 are not the same game and neither are two rooms: measured, pool VPIP at NL2 6-max differs by 6.3 points between rooms.
- 2
Drop anyone with under 500 hands in that game.
A player seen for twelve hands has a VPIP of 0% or 50% or 100% and none of those describe them.
- 3
Work out each surviving player’s own percentage.
From their counters — actions divided by opportunities.
- 4
Take the median of those percentages.
One number per player, then the middle one.
- 5
Publish only if 30 players qualified.
Below that the “typical player” is a handful of people.
The whole of it, in two lines:
each player = 100 × actions / opportunities (needs ≥ 500 hands)
pool = median( player₁ , player₂ , … , playerₖ ) (needs k ≥ 30)Why the median, and not the average
The average asks
What happens if you add everyone up?
The median asks
Who is in the middle?
Only the second is a description of the opponent you are likely to be sitting with, and poker populations always have a long loose tail to drag an average around.
Nine players at one stake, sorted by how often they enter a pot:
19.2 21.8 23.1 24.9 [26.8] 28.4 31.0 35.6 48.9
↑ middle value = the pool
median 26.8 ← what a typical player does
average 28.9 ← dragged up 2.1 points by one loose playerIllustrative figures, chosen to make the arithmetic followable — not a measurement.
Why one number per player, and not one big pile of hands
Lumping every hand together and dividing once would let a single grinder with 200,000 hands outvote three hundred casual players.
Each player gets one vote regardless of volume, because the question is what a typical person does, not what a typical hand looks like.
That choice is exactly what the next section has to undo, on purpose. The field →
1.2 The field — the pool, reshaped to be a fair comparison
The question it answers
What does a typical player do, once volume is held level?
The field is the reference group in What makes money here and on the radar. It is the same people as the pool, counted differently, and it exists to stop the site claiming something it cannot support.
The problem it solves
Winners play roughly twice the volume of a median player. High-volume players also behave differently from everyone else — tighter, more aggressive, fewer limps — whether or not they win. So “winners vs the pool” mixes two effects together, and mostly measures the wrong one.
Measured on a real segment: comparing winners to the raw pool reported them folding to 3-bets 8.4 points less than everyone else. Holding volume level, the real figure is 4.0 points. More than half of the “winning” effect was a regular-versus-everyone effect wearing its clothes.
How the reshaping works
- 1
Sort every qualifying player into a volume bucket.
Doubling bands, so 1,024–2,047 hands is one bucket and 2,048–4,095 the next. Volume spans three orders of magnitude, and doubling bands keep the busy tail from collapsing into one lump.
bucket(player) = floor( log₂( hands ) ) - 2
Give each player their bucket’s winner share.
Not their own result — the share of that bucket which is made of winners.
weight(player) = winners in their bucket / players in their bucket - 3
Take the weighted median.
The same median as the pool, with each player counting as much as their weight rather than once.
field = weighted median of every qualifying player’s value
Why that weight
Every bucket contributes exactly its own winner count.
n players each carrying W/n add up to W, so the weight landing on each bucket is the winners’ volume distribution, by construction.
The field is the whole population, wearing the winners’ volume profile.
Worked through
A thousand qualifying players in three volume buckets. Everyone in a bucket shares a VPIP, to keep the sums visible:
| Bucket | Players | Winners | VPIP | Weight each | Bucket weight |
|---|---|---|---|---|---|
| 500 – 2k hands | 600 | 60 | 28.0 | 60/600 = 0.10 | 60 |
| 2k – 8k hands | 300 | 90 | 24.0 | 90/300 = 0.30 | 90 |
| 8k+ hands | 100 | 50 | 21.0 | 50/100 = 0.50 | 50 |
Illustrative figures, chosen to make the arithmetic followable — not a measurement.
POOL — every player counts once, 1,000 votes
sorted: 100 players at 21.0 | 300 at 24.0 | 600 at 28.0
vote 500 of 1,000 lands in the last block
pool = 28.0
FIELD — each player counts as much as their weight, 200 in total
sorted: weight 50 at 21.0 | 90 at 24.0 | 60 at 28.0
running: 50 140 200
halfway = 100, which lands in the middle block
field = 24.0Same thousand people, same thousand values. Counting each of them once gives 28.0; counting them in the winners’ volume proportions gives 24.0. Neither is wrong — they answer different questions, and putting the second beside a winner median is the only one of the two that is a like-for-like comparison.
A second, smaller difference
The field also has a higher entry bar. A player needs 500 hands in the half of their hands used for measuring — about 1,000 overall — where the pool asks for 500 in total. (Why there are halves at all is the next section.) So the smallest-sample, loosest slice of the population is missing from the field before any weighting happens, and that pushes the same direction as the weighting does.
1.3 Proven winners — and how they are proven
The question it answers
What do the players who actually make money do differently?
A winner is a player whose EV-adjusted win rate is positive in that game. Two details do the real work, and both exist because the obvious version of this panel was measurably wrong.
1. Luck is removed where it can be
Selection uses EV-adjusted winnings, not actual ones. If a player gets all-in with aces against kings and loses, the actual result says they lost the pot; the EV-adjusted result gives them the ~81% of it the cards said was theirs. All-in variance is the one chunk of luck that can be measured exactly, so it is not allowed to decide who counts as a winner.
2. Nobody is measured on the hands that got them picked
Each player’s hands are split in two by a hash of the hand id — effectively a coin flip per hand, independent of time, table, session and stake. Winners are chosen on one half and measured on the other.
a player's 4,000 hands at NL25
even hands (2,000) → EV-adjusted +38.4 bb → qualifies as a winner
odd hands (2,000) → VPIP 23.1, PFR 18.4 → these go into the median
the half that decided WHETHER they count
is never the half that decides WHAT they look likeIllustrative figures, chosen to make the arithmetic followable — not a measurement.
Without the split the panel flatters itself. Picking winners by money won and then reporting statistics made of money won counts the same good luck twice:
one run of luck, doing both jobs
Measured. Selecting and measuring on the same hands put winners 2.9 points above the field on won-money-at-showdown. Split across separate halves, the gap collapsed to 0.4 — about seven-eighths of it was never skill. One statistic, won-when-saw-flop, changed direction outright. Published as-is, that panel would have told almost every ordinary player they had a showdown leak they did not have.
3. What “winning” is scoped to
- Per stake and room, not per situation.“Wins at NL50” is a property worth selecting on;“wins inside limped pots” is noise wearing the same word.Winner status is decided once for the game and applied to every pot type within it.
- 500 measured hands minimum — so a published winner row rests on the same evidence a pool row does.
- 30 winners minimum before a segment publishes at all.
The warning that comes with it
Matching the winner profile does not make you one.
Tested on a large sample at one stake, provably losing players sat about twice as far from the winner profile as provably winning ones — so the comparison carries real signal.
And still — one player
Losing by a margin far too large to be bad luck, and matching the winner profile more closely than the average winner did.
Frequencies describe the shape of a strategy, never the quality of the decisions inside it.
Every statistic here is a frequency: how often someone does a thing.
Treat the panel as a direction to look in, never as a test you can pass.
1.4 Pool and field will not match
The gap between them is not an error. On a real NL25 full-ring segment, the same people counted two ways — with the casual, low-volume slice counted the way the winners’ own volume profile counts it:
That contrast is the fingerprint of the difference:regulars limp and cold-call far less, and raise about as often.
1.5 Why each panel uses the one it does
Both numbers exist for every statistic in every game, so which one a panel shows is a decision, not an accident. One rule decides it:
Matching removes a difference between two groups.
Only remove the difference you are NOT trying to measure.Distance from pool → the pool, unweighted
This panel asks a descriptive question: does this player differ from the people you will actually be sitting with?
Your next opponent is drawn from the population as it isa random person, not a random hand.
So the yardstick is one vote per player, with nothing weighted away — for two reasons.
- 1
It keeps the volume effect.
If a 200,000-hand regular folds to 3-bets less than the pool, part of that gap is just that regulars differ from casual players. It is still true and still worth acting on — you should 3-bet that player less than you would a stranger. Matching it away would delete part of the answer.
- 2
And it keeps the unit intact.
A named leak has to sit at least one interquartile range outside the pool — a distance measured in how much that statistic varies between players. That spread is a property of the same one-vote-per-player distribution the median comes from. Re-weight the population and you have changed the unit the distance is measured in, not merely the point it is measured from.
What makes money here → the field, volume-matched
This panel makes a far stronger kind of claim.
Not “these two groups differ” but“this difference is what winning looks like”— and the reader is expected to change how they play because of it.
- 1
Winners are not a random slice of the pool.
They were selected, and selection correlates with volume: winners play about twice the hands of a median player. So winners and the pool differ in volume by construction, before a single statistic is compared.
- 2
So any gap carries two explanations at once.
Both readings of the gap are true. Only one of them is about winning, and only that one is the panel's to publish. - 3
So the volume effect is matched away.
Here it is a rival explanation rather than part of the answer. The same effect is signal in one panel and noise in the other, because the two panels are claiming different things.
What swapping them would do
Two panels, two reference groups. The diagonal is what the site does; the other two cells are the only two ways to get it wrong.
| measured against the pool | measured against the field | |
|---|---|---|
| Distance from pool | ✓What it does. One vote per player, nothing weighted away. | ✗The benchmark becomes the regulars. Ordinary recreational players — most of the people you play against — would be told they have leaks for being ordinary. |
| What makes money here | ✗Fold vs 3-Bet reports an 8.4-point winner edge where the real one is 4.0. More than half of every “edge” would be a volume effect wearing a winner’s name. | ✓What it does. Winners against a field matched to their volume. |
And why the winner panel has no pool column
The number is right there, and it is left out on purpose. Show three populations side by side and a reader will compare winners against the pool — the one pairing of the three that cannot support a conclusion. The panel offers the comparison that works and does not offer the one that does not.
Part 2
Whether a difference is real
Every number on a player page is measured off a finite number of hands, so every number carries an error. This is how we work out how big that error is, and when a difference is small enough that we refuse to call it a difference at all.
2.1 The question
Suppose a player c-bets the flop 38.7% where the field c-bets 60.3%. That is a gap of 21.6 points and it looks enormous.
Whether it means anything depends entirely on how many flops they actually c-bet into.
off 40,000 opportunities
21.6 points
a real, exploitable trait
off 12 opportunities
21.6 points
a coin landing the same way a few times
So every gap needs a companion number: how far the gap would move on chance alone. Below that, we grey it out.
2.2 The obvious test does not work
The natural idea is: take a sample, compare it to the player’s converged value, and call the sample big enough once it lands within two standard deviations.
That test can never fail, because the window it checks against is built out of the sample size itself. For a proportion,
SE = sqrt( p (1 - p) / n )is defined so that about 95% of samples fall within two of them — at every sample size there is.
The bar has to be an absolute one, in the unit the chart plots: percentage points.
2.3 The experiment
Population
40 PokerStars accounts, 100,000+ hands each, one stake and format apiece
Spread across stakes rather than taking the 40 biggest — the largest accounts cluster in a couple of games, and a rule fitted to one game would not transfer.
Blocks
Consecutive runs of 100, 200, 500 … 20,000, in the order played
Sampling hands at random would destroy the correlation between hands from the same session, table and opponents — and that correlation is the only reason a measurement can tell you anything the formula above does not. It also matches how the site is used: a filter selects a run of hands, not a random scatter.
Comparison
Each block against its neighbour; error = difference ÷ √2
Two adjacent blocks sit next to each other in time, so the player is the same person in both. For two independent estimates with the same error, the difference between them is √2 times as noisy as either.
Reported
The 95th percentile of that error
The bad case, not the typical one.
2.4 Finding 1: hands are not independent draws
The textbook formula assumes every hand is an independent coin flip. They are not: the same session, the same table, the same opponents, the same mood.
The penalty grows with sample size
That is the opposite of intuitive and it is the crux. Measured against the formula, for VPIP:
| Opportunities | Measured error | Formula says | Ratio |
|---|---|---|---|
| 100 | ±9.19 | ±8.58 | 1.07× |
| 500 | ±4.38 | ±3.84 | 1.14× |
| 1,000 | ±3.39 | ±2.71 | 1.25× |
| 5,000 | ±2.04 | ±1.21 | 1.69× |
| 20,000 | ±1.53 | ±0.61 | 2.53× |
Over 100 hands you are inside one sitting and the formula is nearly right. Over 20,000 you have accumulated many sessions of correlated behaviour, so the error falls more slowly than 1/√n and the gap widens. Large samples are less trustworthy than the formula claims; small samples are about as bad as it already says.
How steep it is depends on the statistic
A statistic a player sets once and holds compounds; one the cards decide for them does not.
2.5 Finding 2: players drift, and that never averages out
What a block of hands is compared against decides what gets measured.
The difference is not small.
Score each block against the player’s lifetime average instead of its neighbour and the error stops falling: VPIP went from ±2.76 to ±2.58 points between 10,000 and 20,000 hands, where pure sampling predicts an improvement of √2.
That floor is not noise. These accounts span years, and players change — they move stakes, adjust, get better or worse. What is left is a floor:
So there is no fixed value to converge on: the target moves while you are measuring it. That is why the experiment scores each block against its neighbour and never against a lifetime average.
2.6 What the ± column is
| Stat | Player | Fieldvolume-matched | Player vs field | ± | n |
|---|---|---|---|---|---|
| VPIP | 29.4 | 24.4 | +5.0 | ±1.7 | 12,000 |
| 4Bet | 6.2 | 5.0 | +1.2 | ±1.6 | 900 |
Two rows of the radar readout, with the winners column dropped. Illustrative figures — but each ± is the formula below run on the n beside it. The second gap is smaller than its own margin, so it is shown in amber.
How to read it
Every stat on a player page shows a gap: the player’s number minus the field’s number. The ± next to it answers one question:
If this player were actually just an average member of the field, how far from the field’s number could their observed rate land — on luck alone — 95% of the time?
If the gap they actually have is bigger than that, luck doesn’t explain it.
The rule
If the gap is smaller than the ±, the gap is not evidence.
How it is computed
There is no fixed threshold per statistic — partly because a threshold cannot express the gap, and partly because it could not be written honestly: seven of the fifteen statistics never reached ±2 points even at the largest samples measured, so half the table would have been invented.
Instead each number carries its own margin:
margin = 1.96 × sqrt( p (1 - p) / n ) × a × n^b
─┬── ────────┬──────── ───┬───
95% level textbook error measured correctionn
the player’s opportunities for this statistic — not their hand count
A 40,000-hand player might have 26,000 fold-vs-3-bet spots and 900 4-bet spots; those two rows deserve very different margins and get them.
p
the field’s rate for this statistic — not the player’s
The question is “could someone who really matches the field have drawn this?” Using the player’s own rate shrinks the interval exactly where they are most extreme, which is where it is needed most.
a, b
fitted per statistic, from the experiment above
The one term that is not in a textbook, and the reason which statistic you are looking at changes the answer.
That last term is why which statistic you are looking at changes the answer:
| Statistic | n = 200 | n = 500 | n = 2,500 | n = 10,000 |
|---|---|---|---|---|
| VPIP | ±6.8 | ±5.0 | ±2.9 | ±1.8 |
| PFR | ±4.9 | ±3.5 | ±2.0 | ±1.2 |
| Fold vs CBet | ±8.0 | ±5.1 | ±2.3 | ±1.2 |
Note the crossover. At 200 opportunities fold-vs-c-bet is the least reliable of the three; it overtakes VPIP between 500 and 2,500, and by 10,000 it has drawn level with PFR. VPIP is a setting a player holds for a whole session, so its correlation compounds as the sample grows. Fold-vs-c-bet turns on the cards, so it stays close to independent and its margin keeps falling at nearly the textbook rate.
2.7 Worked examples
Real numbers from a live profile, arithmetic shown. Each one runs the formula above and holds the answer against the gap.
Example 3 has one fortieth of example 2’s sample and clears its margin, where example 2 does not clear its own. Neither the gap nor the sample size decides it alone; only the two against each other.
1. A high-volume player’s VPIP — comfortably real
VPIP player 29.4% field 24.4% gap +5.0 points n = 606,655
textbook error sqrt(0.244 × 0.756 / 606,655) = 0.000551
the same, in points × 100 = 0.055
measured correction 0.5048 × 606,655^0.1585 = 4.17× wider
95% margin 1.96 × 0.055 × 4.17 = ±0.45 points
gap +5.0 against margin ±0.45 — the gap is bigger -> REAL2. The same statistic on 2,000 hands — not evidence
VPIP player 26.0% field 24.4% gap +1.6 points n = 2,000
textbook error sqrt(0.244 × 0.756 / 2,000) = 0.00960
the same, in points × 100 = 0.96
measured correction 0.5048 × 2,000^0.1585 = 1.68× wider
95% margin 1.96 × 0.96 × 1.68 = ±3.17 points
gap +1.6 against margin ±3.17 — the gap is smaller -> AMBER3. A big gap on a tiny sample — real
CBet flop player 80.3% field 60.3% gap +20.0 points n = 50
textbook error sqrt(0.603 × 0.397 / 50) = 0.0692
the same, in points × 100 = 6.92
measured correction 0.8245 × 50^0.108 = 1.26× wider
95% margin 1.96 × 6.92 × 1.26 = ±17.06 points
gap +20.0 against margin ±17.06 — the gap is bigger -> REAL2.8 What this does not cover
- Measured on PokerStars only. The constants come from one room. Other rooms have different game structures, and the correlation between hands may differ with them.
- Fitted between 100 and 20,000 opportunities. Beyond that the inflation is extrapolated — for a player with 600,000 opportunities the model predicts 4.17×, which is past anything measured. It errs toward caution, and the margins there are tiny either way.
- It is about precision, not truth. A gap clearing its margin means the hands are unlikely to have produced it by chance. It does not mean the player is still playing that way — see the drift finding above.
- The leak panel uses a different, stricter gate. A named leak must clear both one interquartile range of the player pool and two standard errors, on at least 30 observations. That gate operates at sample sizes where this inflation is only 1.05–1.25×, so it was checked against these findings and left unchanged.
Convergence measured 2026-08-05 on 40 PokerStars accounts, ~4 million hands. Pool, field and winner baselines are rebuilt nightly from the full fact table. See also the statistics guide for what each individual number means.