·11 min read
A handicap you beat half the time
GHIN and 18Birdies run the same formula and still hand the same golfer different numbers. The gap is in the course data and the fine print. The bigger problem is the formula itself, and the fix is to count your middle twelve rounds instead of your best eight.
- statistics
- sports
- estimators
- opinion
After the last handicap piece, the question I got most was why GHIN and 18Birdies show the same golfer two different numbers, and which one is right. Both apps use the same formula. They give different answers because they feed it different course data and follow different fine print, and working out why leads to a bigger claim. The formula is the real problem. It should be replaced with one that gives a number you beat half the time.
Same twenty rounds, two handicaps
GHIN-style index
15.0
App with stale data
14.5
Same golfer, gap
0.5 strokes
One golfer, two numbers
The formula is fine. The inputs are not.
And the errors grow with you
Nine holes
"Remove the outliers"
Where each rule points
Can you game it?
Build your own
Same formula, different machine
Start with what the two agree on, because it is more than people assume. 18Birdies’ help center describes its handicap the same way the USGA describes the Handicap Index: each round becomes a Score Differential, (score − Course Rating) × 113 ÷ Slope, and once you have twenty eligible rounds, the best eight of the most recent twenty are averaged. It caps each hole at net double bogey, as the WHS does. The core arithmetic is the same.
Everything around the arithmetic is different:
| GHIN (official WHS) | 18Birdies | |
|---|---|---|
| Official status | The USGA’s Handicap Index | Not an official USGA or WHS index, and it does not sync with GHIN |
| Which rounds count | Acceptable scores posted to GHIN, open to peer review | Rounds you log in the app that it treats as eligible |
| Course Rating and Slope | Issued by the golf association that rated the course | Shown in the app as the official USGA figures; the help center has a page on rounds with odd differentials and a page for reporting wrong course data |
| Nine-hole rounds | Since 2024, the nine you played plus an expected score for the nine you did not | An 18Birdies article describes doubling the nine-hole score |
| Playing Conditions Calculation | Yes, −1.0 to +3.0 on days that scored unusually | Not described |
| Soft and hard caps on increases | Yes, at 3.0 and 5.0 strokes above your low index of the past year | Not described |
| Exceptional score reduction | Yes, −1 or −2 after a round 7 or 10 better than your index | Not described |
“Not described” means I could not find it in 18Birdies’ published help pages, not that I know the app leaves it out. Some of these are structurally hard for an app to do anyway. The Playing Conditions Calculation compares everyone’s scores at a course on a given day, so only the system that holds everyone’s scores can run it. The caps need your full year of index history. An app that sees only the rounds you chose to log in it cannot reproduce either.
So a gap between the two numbers is expected, and there is no single cause for it. The next three sections go through the causes that move the number most.
Slope, and what happens when it is wrong
Slope is the cleverest part of the system and it is worth knowing why it exists. A course is rated twice: once for what a scratch golfer should shoot (the Course Rating) and once for what a bogey golfer should shoot (the Bogey Rating). The Slope Rating is the gap between the two, scaled so that an average course scores 113: for men it is 5.381 × (Bogey Rating − Course Rating), for women 4.240 ×. The point is that a hard course does not cost everyone the same number of shots. Rough, water and long carries hurt a 25-handicap far more than they hurt a scratch player, and slope measures by how much. Dean Knuth built it at the USGA in the early 1980s. Colorado rated its courses in 1982, used the system in 1983, and it went national in 1987.
The same property makes slope unforgiving of bad data. Slope multiplies the strokes you shot over the rating, so an error in it scales with how many strokes over the rating you shoot. On a course of slope 130, a stored slope that is 10 points too low changes one scratch golfer’s differential by 0.22 strokes. For a 15 it changes it by 1.47, and for a 36 by 3.22. The golfers most likely to be using an app’s course data without checking it are the ones it costs the most.
I built a simulated 15-handicap, played twenty rounds from the Blue tees of an illustrative course rated 72.4 / 133, and recorded them against the wrong numbers in four common ways:
| what the app has | 5-handicap | 15-handicap | 25-handicap |
|---|---|---|---|
| Slope missing, falls back to 113 | +0.9 | +2.7 | +4.4 |
| Played Blue, logged as White (70.3 / 127) | +2.1 | +2.6 | +3.0 |
| Course re-rated since, app has the old 72.0 / 128 | +0.5 | +0.9 | +1.3 |
| Course Rating typed one stroke low | +0.8 | +0.8 | +0.8 |
Every row is strokes added to the Handicap Index, and each one moves every round played on that tee. I found no evidence that 18Birdies falls back to 113 when a slope is missing. It is in the table because it is the default any system would use without a better value, and it shows how much the number depends on this one input. The re-rating row is the most likely one to catch you. Courses are re-rated on a cycle, tees get moved, and a database that is right today may not be right next season. The worked example at the top of this page is a milder version: one course out of two has stale numbers, four nines are doubled rather than completed with an expected score, and the index moves by half a stroke without the golfer hitting a single different shot.
Nine-hole rounds deserve their own paragraph, because the direction is not obvious. Doubling a nine does not make it more generous or harsher on average. It makes it noisier: two halves of a real round partly cancel each other out, and one half counted twice does not. A best-eight-of-twenty rule is built to reward noise, because it keeps your lucky rounds and discards the rest. So on my model, a 15 who plays half their rounds as nines gets an index about 0.6 strokes lower if the nines are doubled and 0.4 strokes higher under the USGA’s expected-score method. That is a full stroke between two reasonable-sounding conversions, and nobody would notice it unless they went looking.
Why the rule is best eight of twenty
Before arguing for a replacement, it is worth being fair to the current rule, because none of it was an accident.
The old USGA manual said it outright: the handicap measures a golfer’s potential ability on a course of standard difficulty, not their typical ability. For decades that meant the best ten of your last twenty differentials, multiplied by 0.96, a “bonus for excellence” that shaved a little extra off so that improving players were rewarded (Golf Digest has the USGA’s own framing: “there should be an incentive to improve”). When the World Handicap System unified the world’s six systems in 2020 it dropped the multiplier and tightened the window to the best eight. Knuth has said that the best-ten rule was chosen because handicaps are intended to define the golfer’s potential.
There are three real reasons to build a handicap this way:
- It is hard to sandbag. If your handicap were your average, posting a few bad rounds on purpose would buy you strokes. Under best-of-eight, bad rounds mostly do not count, so tanking them buys very little.
- It favours the better player slightly. A best-of-eight index flatters an inconsistent player, but in the head-to-head net game it tilts things toward the steadier golfer, which the rule-makers were happy to accept.
- It is one number. It fits on a scorecard, and a pro shop can use it without a statistics degree.
The trouble is what it costs, and the last piece measured that on 229,333 tour rounds. The index sits about one standard deviation below your average. People beat it in fewer than one round in five, and the gap grows with how inconsistent you are, so two golfers with the same index can be well over a stroke apart in true ability. Everyone reads the number as “what I shoot”, and almost nobody does shoot it.
Remove the outliers, average the rest
The fix I was asked to test is the one most people land on: throw out the rounds that are flukes, good or bad, and average what is left. It is the right instinct. How you decide what counts as a fluke turns out to matter more than I expected.
The textbook way is a statistical outlier rule: throw out any round more than 1.5 interquartile ranges beyond the middle half of your scores, the same fences a box plot draws. On twenty rounds that rule removes 0.66 rounds on average, and nothing at all in 56% of records. Twenty rounds is not enough data to call anything an outlier with confidence. A single 102 in a record of 85s through 95s often sits inside the fences. When it does fire, it is erratic: it catches one bad round, misses the next and occasionally clips a good one. It also makes the handicap the most jumpy of every rule I tested.
A fixed trim does the job every time. Drop a set number of rounds from each end and average the middle. I tried several and one stood out:
The Middle 12: the average of your last twenty differentials after dropping the four best and the four worst.
I tested it against the current rule and the alternatives on 200,000 simulated golfers at each handicap level. Their spreads are fitted to the USGA’s own published odds table, as in the last piece. Each golfer also gets a blow-up round now and then, because real amateur scores are lopsided in a way tour scores are not. For a 15-handicap:
| rule | next rounds that beat it | error on the next round | 3 sandbagged rounds | 1 career round |
|---|---|---|---|---|
| WHS: best 8 of 20 | 18.8% | 3.51 | +0.36 | −1.02 |
| Mean of all 20 | 52.2% | 2.60 | +1.80 | −0.50 |
| Median of 20 | 50.3% | 2.61 | +0.68 | −0.20 |
| Drop statistical outliers, then average | 50.3% | 2.59 | +0.71 | −0.13 |
| Drop best 2 and worst 2 | 50.8% | 2.59 | +1.44 | −0.26 |
| Middle 12 (drop best 4 and worst 4) | 50.5% | 2.59 | +0.85 | −0.22 |
The error column is mean absolute error in strokes. The sandbagging column is how far the index rises after a golfer posts three rounds twelve strokes over their average on purpose. The last column is how far it falls after one round ten strokes better than usual.
50.5%
of next rounds beat the Middle 12
the WHS index: 18.8%
26%
smaller error on the next round
2.59 strokes against 3.51
+0.85
strokes bought by three tanked rounds
half of what the plain mean gives away
Four things in that table make the case.
It points at the right place. A fair handicap is one you beat about half the time. The Middle 12 lands between 50.3% and 50.5% at every handicap from scratch to 36. The best-of-eight lands at 19%, and its bias grows from 1.8 strokes at scratch to 4.4 at 36.
It predicts better. The Middle 12 misses the next round by 26% less than the current index, the same margin as the plain mean. Throwing away eight rounds costs nothing in accuracy, because the rounds it drops are the ones that told you least about the next one.
It keeps most of the anti-sandbagging protection. This is where the plain mean falls down and where the current rule earns its keep. Three deliberately bad rounds push the mean up 1.80 strokes. The Middle 12 moves 0.85. The WHS still wins at 0.36, but it gets that protection by being wrong about everyone, not just the sandbaggers. Past four tanked rounds, the Middle 12 fills its bottom slots and starts to move faster. That is what the existing soft and hard caps are for, and I would keep them.
One freak round barely moves it. A career round ten strokes better than normal knocks a full stroke off the WHS index. That is why the WHS needs its exceptional score reduction to claw some of it back. The same round moves the Middle 12 by 0.22, because it is one of the four best and is dropped.
The Middle 12 does lose on one measure. It moves a little more from one round to the next, about 0.18 strokes on average against 0.16 for best-of-eight. That is not enough to matter.
What I would actually change
A proposal is only useful if it says what stays, so here is the full list.
- Replace best-8-of-20 with the Middle 12. Keep the twenty-round window, keep Score Differentials, keep net double bogey on each hole. Only the averaging step changes, so every system that computes today’s index already holds the numbers it needs.
- Keep Course Rating and Slope exactly as they are. They are the best part of the system. The problem is not the ratings but copies of them that are wrong. Apps should show you the rating and slope behind every round and use the association’s database rather than their own copy.
- Keep the soft and hard caps. They stop the one attack the Middle 12 is weak to: a slow campaign of bad rounds. The exceptional score reduction becomes mostly unnecessary, because the rule already discards your best four. I would keep it as a flag for the committee instead of an automatic cut.
- Keep the 2024 nine-hole method. Filling in the missing nine with an expected score is the right call. Doubling gives each nine twice the variance of a real round, and a best-of-eight rule turns extra variance into a lower index.
- Print the spread next to it.
17.8 ± 3.3tells you far more than17.8. It shows how much to trust the first number, and it separates the steady golfer from the streaky one who would otherwise look identical. - Set competition allowances by format. The WHS already scales handicaps by format, for example 95% in four-ball stroke play. A handicap centred on your typical round makes a single net round close to a coin flip between equal indexes (49.4% in my simulation, against 65% for the steadier player today). It also hands multi-round events decided by a best round to the streaky player, who wins the best-of-five in my simulation about 79% of the time. No single number is fair for both, and allowances are where that should be settled.
Everyone’s number would go up. A 15 today would carry about a 17.8. That is not a problem, because the number was never really 15. For two golfers with similar spreads, the strokes one gives the other would barely change, because both indexes move up together. Between a steady golfer and a streaky one they would shift toward the steady one, which is the point. What changes is that “I shot my handicap” would mean what everyone already thinks it means.
What to do with this now
- If your two apps disagree, check the course data first. Open a round in each and compare the Course Rating and Slope with the scorecard for the tee you played. A mismatch there explains more gaps than anything else.
- Log nine-hole rounds carefully. Know how your app converts them. If it doubles them and you play a lot of nines, your app handicap is probably running low.
- Compute your own Middle 12. Take your last twenty differentials from GHIN, sort them, cross out the four best and four worst, and average the rest. That is the score to expect on Saturday, and you will beat it about half the time.
- Treat the official index as a tournament number. It measures your good days on purpose. It is the right number to post, and the wrong one to plan your round around.
One visual essay, every week.
No roundups, no sponsors. Unsubscribe in one click.