# Golf Handicap Calculator

> Computes a golf Handicap Index under the World Handicap System (USGA/R&A) from 3–20 adjusted gross scores: each score differential = (score − course rating) × 113 / slope rating, the index is the average of the lowest differentials selected by the WHS table (with −2.0 / −1.0 adjustments for 3, 4 and 6 scores), and optionally the Course Handicap for a given par.

- Calculator id: `golf-handicap` · Category: Sports & Fitness (`fitness`) · Tool name: `calculate_golf_handicap_index`
- Canonical page: https://tttkmbb.com/fitness/golf-handicap · This document: https://tttkmbb.com/fitness/golf-handicap.md · JSON definition: https://tttkmbb.com/fitness/golf-handicap.json

## Purpose

Computes a golf Handicap Index under the World Handicap System (USGA/R&A) from 3–20 adjusted gross scores: each score differential = (score − course rating) × 113 / slope rating, the index is the average of the lowest differentials selected by the WHS table (with −2.0 / −1.0 adjustments for 3, 4 and 6 scores), and optionally the Course Handicap for a given par.

**Use when:** You have a golfer's recent 18-hole adjusted gross scores with the course rating and slope rating and need the WHS Handicap Index, the score differentials or the Course Handicap for a set of tees.

**Do not use when:** You need an official handicap (only a club or association system with playing-conditions and cap adjustments issues one), the scores are from 9-hole rounds, or the rounds were played on tees with different ratings (compute each differential with its own rating first).

## Input

| Parameter | Type | Unit | Required | Description |
| --- | --- | --- | --- | --- |
| `scores` | number_list |  | required | 3–20 adjusted gross scores (18 holes, net double bogey applied), most recent last; only the most recent 20 rounds count under WHS. |
| `course_rating` | number |  | optional, default 72 | USGA/R&A course rating of the tees played (assumed the same for all scores). (min 40, max 90) |
| `slope_rating` | integer |  | optional, default 113 | Slope rating of the tees played (55–155; 113 is standard difficulty). (min 55, max 155) |
| `par` | integer |  | optional | Par of the tees played; when given, the Course Handicap is also reported. (min 54, max 80) |

## Output

| Field | Type | Unit | Description |
| --- | --- | --- | --- |
| `handicap_index` | number |  | Average of the lowest score differentials per the WHS table plus the adjustment, rounded to 0.1 and capped at 54.0; a negative value is a 'plus' handicap (e.g. −2.0 = +2.0). |
| `differentials` | number_list |  | (score − course_rating) × 113 / slope_rating for each score, in input order, each rounded to 0.1. |
| `differentials_used` | integer |  | How many of the lowest differentials are averaged (1–8, depending on the number of scores). |
| `adjustment` | number |  | WHS adjustment added to the average: −2.0 with 3 scores, −1.0 with 4 or 6 scores, otherwise 0. |
| `course_handicap` | integer |  | handicap_index × slope_rating / 113 + (course_rating − par), rounded to the nearest whole number (only when par is given). |
| `method_text` | string |  | Which WHS table row was applied and which differentials were averaged. |

## Formula

`differential_i = round0.1((score_i − course_rating) × 113 / slope_rating); handicap_index = min(54.0, round0.1(mean(lowest n differentials) + adjustment)) with (number of scores → n, adjustment): 3 → 1, −2.0; 4 → 1, −1.0; 5 → 1, 0; 6 → 2, −1.0; 7–8 → 2, 0; 9–11 → 3; 12–14 → 4; 15–16 → 5; 17–18 → 6; 19 → 7; 20 → 8; course_handicap = round(handicap_index × slope_rating / 113 + course_rating − par)`

World Handicap System, Rules of Handicapping Rule 5.2 (score differentials and Handicap Index calculation) and Rule 6.1 (Course Handicap). The playing conditions calculation (PCC), soft and hard caps, exceptional-score reductions and 9-hole score combination are not applied, and all scores are assumed to come from tees with the given rating and slope. Informational, not an official handicap.

## Data Sources

- USGA – Handicapping: Rules of Handicapping under the World Handicap System (score differential, Handicap Index, Course Handicap) — https://www.usga.org/handicapping.html (standard, retrieved 2026-09-24)
- The R&A – World Handicap System — https://www.randa.org/ (standard, retrieved 2026-09-24)
- Wikipedia – Handicap (golf): World Handicap System calculation — https://en.wikipedia.org/wiki/Handicap_(golf) (reference, retrieved 2026-09-24)

Data freshness: `static`. Deterministic formula with fixed constants; results never go stale. Inputs supplied by the caller determine the output.

## API

- `GET https://tttkmbb.com/api/v1/calculate/golf-handicap?scores=…`
- `POST https://tttkmbb.com/api/v1/calculate/golf-handicap` with JSON body `{"inputs": {…}}`
- Response: unified envelope (`success`, `request`, `result.values`, `result.units`, `sources`, `freshness`, `timestamp`, `next_actions`, `links`); see https://tttkmbb.com/docs/response-format.md
- Schema: https://tttkmbb.com/api/v1/calculators/golf-handicap · OpenAPI operationId `calculate_golf_handicap_index` in https://tttkmbb.com/openapi.json
- Authentication: none. Rate limit: fair use, see https://tttkmbb.com/docs/rate-limits.md.

## MCP

- Server: `https://tttkmbb.com/mcp` (Streamable HTTP, JSON-RPC 2.0, no auth)
- Tool:  `run_calculator` with `{"calculator_id": "golf-handicap", "inputs": {…}}`

## Example

- 5 scores, CR 72, slope 130, par 72: inputs `{"scores":[88,92,85,90,95],"course_rating":72,"slope_rating":130,"par":72}` → `{"differentials":[13.9,17.4,11.3,15.6,20],"handicap_index":11.3,"differentials_used":1,"adjustment":0,"course_handicap":13}`
- 6 scores, CR 71.5, slope 125, par 72: inputs `{"scores":[95,90,88,92,86,91],"course_rating":71.5,"slope_rating":125,"par":72}` → `{"differentials":[21.2,16.7,14.9,18.5,13.1,17.6],"handicap_index":13,"differentials_used":2,"adjustment":-1,"course_handicap":14}`

```
GET https://tttkmbb.com/api/v1/calculate/golf-handicap?scores=88%2C92%2C85%2C90%2C95&course_rating=72&slope_rating=130&par=72
```

## Limitations

You need an official handicap (only a club or association system with playing-conditions and cap adjustments issues one), the scores are from 9-hole rounds, or the rounds were played on tees with different ratings (compute each differential with its own rating first). World Handicap System, Rules of Handicapping Rule 5.2 (score differentials and Handicap Index calculation) and Rule 6.1 (Course Handicap). The playing conditions calculation (PCC), soft and hard caps, exceptional-score reductions and 9-hole score combination are not applied, and all scores are assumed to come from tees with the given rating and slope. Informational, not an official handicap. All values are computed from the formula above; no measurement or live data is involved.

## FAQ

**Why does this differ from my club's Handicap Index?**

Official systems apply a playing conditions calculation (−1 to +3) to each round, cap upward movement and use every round's own course rating and slope; this calculator assumes one rating for all scores and PCC 0.

**What is an adjusted gross score?**

The gross score after limiting each hole to net double bogey (par + 2 + any handicap strokes received on that hole), the WHS maximum hole score for handicap purposes.

**Which Course Handicap formula is used?**

The WHS formula Handicap Index × (slope ÷ 113) + (course rating − par), rounded to a whole number. Before the 2024 revision some jurisdictions (e.g. Great Britain and Ireland) omitted the (course rating − par) term.

## Related

- [Steps to Distance Calculator](https://tttkmbb.com/fitness/steps-to-distance.md) — Distance walked during an 18-hole round from a step count.
- [Calories Burned Calculator](https://tttkmbb.com/fitness/calories-burned.md) — Energy cost of walking the course (MET table).
