pokerdb

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.

GroupWho is in itUsed onWhy
Poolevery player in this game with 500+ hands.One vote each.Distance from poolEvery named leakwhy unweighted
FieldThe same people.Weighted to the winners’ volume profile.What makes money hereRadar chart comparisonwhy re-weighted
WinnersThe profitable subset.Measured on hands not used to pick them.What makes money hereRadar chart comparisonwhy 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. 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. 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. 3

    Work out each surviving player’s own percentage.

    From their counters — actions divided by opportunities.

  4. 4

    Take the median of those percentages.

    One number per player, then the middle one.

  5. 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 player

Illustrative 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.

COUNTED BY HANDone grinder200,000 hands300 casual players150,000 handsCOUNTED BY PLAYERone grinder1 vote300 casual players300 votes
Three hundred casual players at the 500-hand minimum this section already imposes. Counted by hand the grinder outweighs all of them — and only just.

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.

WINNERS' EDGE IN FOLD VS 3BETagainst everyone at the stake8.4 ptsagainst a volume-matched field4.0 ptsmore than half was a regular-vs-everyone effect0510gap between winners and the field, in percentage points
The winners are the same people in both bars. Only the group they are measured against changes.

How the reshaping works

  1. 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. 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. 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 population, counted once each1,000 players60%30%10%The population, counted by weight200 in total30%45%25%The winners, counted once each200 winners30%45%25%500 – 2k hands2k – 8k8k+
The lower two bars are identical, which is the point: the weights are built so the population takes the winners' shape.

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:

BucketPlayersWinnersVPIPWeight eachBucket weight
500 – 2k hands6006028.060/600 = 0.1060
2k – 8k hands3009024.090/300 = 0.3090
8k+ hands1005021.050/100 = 0.5050

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.0

Same 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 like

Illustrative 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:

they are labelled a winnerbecause they won showdownsthey show a high “won money at showdown”because they won showdowns

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.

WINNERS' EDGE AT SHOWDOWN — W$SDpicked and measured on the same hands2.9 ptspicked on one half, measured on the other0.4 pts7/8 of the edge was the luck that picked them024gap between winners and the field, in percentage points
Both bars are the same statistic on the same players. Only the hands used to pick them differ.

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

57,739 hands−9 bb/100

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.

player Abets the flop 60%picks the right 60%player Bbets the flop 60%picks the wrong 60%
Two players, one bar. No frequency will ever separate them.

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:

poolfieldVPIP4.1 points apartPFR0.2 points apart0%10%20%30%
Same people in both, counted two ways. One number moves a long way and the other barely moves — which is the fingerprint.

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. 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. 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. 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. 2

    So any gap carries two explanations at once.

    a gap between winners and the pool“this is whatwinning looks like”“this is whatplaying a lot looks like”the panel may claim thisand it may not claim this
    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. 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 poolmeasured against the field
Distance from poolWhat 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 hereFold 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 player’s converged valueoff 10 opportunities±27.4 points widepassesoff 100,000 opportunities±0.3 points widepasses0%10%20%30%40%50%
The window the test measures against stretches with the sample, so a sample always lands inside it. Widths are the textbook formula at a 25% rate; the measured correction below makes both wider, never narrower.

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.

contiguouswhat we doneighbours: error = difference ÷ √2randomwhat we do not dosame hands, but nothing left that was played togetherfirst handlast hand
Same hands both ways. Only the top one keeps hands that were played together together — and that is the whole quantity being measured.

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:

10521pointsmeasuredwhat the formula predicts1005001,0005,00020,0002.53×opportunities
Vertical axis is a log scale, where a constant penalty would draw as two parallel lines. These spread — which is the finding.
OpportunitiesMeasured errorFormula saysRatio
100±9.19±8.581.07×
500±4.38±3.841.14×
1,000±3.39±2.711.25×
5,000±2.04±1.211.69×
20,000±1.53±0.612.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.

VPIP0.159PFR0.147CBet flop0.1084Bet0.017Fold vs CBet0.012held steady for a sessiondecided by the cardshow fast the penalty grows with volume (fitted exponent)
The gap in the middle is the finding: these are two kinds of statistic, not a spectrum. A stance held for a session compounds; a decision made by the cards 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.

one block of handscompared with the blocknext to it — same eracompared with a lifetimeaverage — spanning yearsmeasures how precisethe estimate ismeasures that, plus howmuch the player changed
Both comparisons are arithmetic on the same hands. Only one of them answers the question the ± column is asking.

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:

VPIP±2.1CBet flop±8.70246810pointswhere the error settles at 20,000 hands, and stays
However many hands you add, this is where each one stops. The two are not the same distance from the truth, and c-bet is four times further.

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

StatPlayerFieldvolume-matchedPlayer vs field±n
VPIP29.424.4+5.0±1.712,000
4Bet6.25.0+1.2±1.6900

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 correction

n

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:

02468pointsVPIPPFRFold vs CBet2005002,50010,000opportunities, on a log scale — each step is a multiplication, not an addition
The line that starts worst finishes level with the best.
Statisticn = 200n = 500n = 2,500n = 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 1n = 606,655+5.0REALexample 2n = 2,000+1.6AMBERexample 3n = 50+20.0REAL05101520percentage points
One scale for all three. The margin is the band; the gap is the marker. Outside the band the number prints; inside it, it greys.

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 -> REAL

2. 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 -> AMBER

3. 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 -> REAL

2.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.