{
  "id": "golf-handicap",
  "version": "0b2e1329ef28",
  "status": "published",
  "name": "Golf Handicap Calculator",
  "question": "What is my golf handicap?",
  "summary": "Computes a golf Handicap Index by the World Handicap System from up to 20 recent 18-hole scores with their course and slope ratings, and the course handicap for a chosen course.",
  "category": "sports",
  "subcategory": "scoring",
  "url": "https://www.acalculator.org/sports/golf-handicap-calculator",
  "markdown": "https://www.acalculator.org/sports/golf-handicap-calculator.md",
  "kind": "function",
  "method": "score differential = (113 ÷ slope rating) × (adjusted gross score − course rating − PCC), rounded to 0.1; Handicap Index = average of the lowest differentials (Rule 5.2a) + adjustment, rounded to 0.1, at most 54.0.",
  "assumptions": [
    "Follows the World Handicap System, Rules of Handicapping effective January 2024 (USGA and R&A): Rules 5.1, 5.2 and 6.1a.",
    "Enter 18-hole rounds only, 3 to 20 of them, most recent first or last: all rounds entered count as your scoring record. 9-hole scores are not combined here.",
    "Scores are adjusted gross scores: each hole already capped at net double bogey.",
    "The exceptional score reduction and the soft and hard caps, which need your handicap history, are not applied.",
    "Every step is exact; a value exactly halfway rounds up (toward plus infinity), so 5.65 is 5.7 and −5.65 is −5.6."
  ],
  "inputs": {
    "$schema": "https://json-schema.org/draft/2020-12/schema",
    "type": "object",
    "properties": {
      "rounds": {
        "title": "Your rounds",
        "description": "Your most recent 18-hole rounds, up to 20: each adjusted gross score with the course rating and slope rating of the tees played.",
        "type": "array",
        "items": {
          "type": "object",
          "properties": {
            "s": {
              "title": "Adjusted gross score",
              "description": "The 18-hole score after each hole is capped at net double bogey.",
              "type": "integer",
              "minimum": 18,
              "maximum": 250
            },
            "cr": {
              "title": "Course rating",
              "description": "The course rating of the tees played, for example 71.2.",
              "type": "number",
              "minimum": 20,
              "maximum": 90
            },
            "sl": {
              "title": "Slope rating",
              "description": "The slope rating of the tees played, from 55 to 155 (113 is average).",
              "type": "integer",
              "minimum": 55,
              "maximum": 155
            },
            "pcc": {
              "title": "PCC",
              "description": "The playing conditions calculation for the day, from −1 to +3; 0 when there was none.",
              "type": "integer",
              "minimum": -1,
              "maximum": 3
            }
          }
        }
      },
      "cs": {
        "title": "Slope rating",
        "description": "The slope rating of the tees you will play, for the course handicap.",
        "type": "integer",
        "minimum": 55,
        "maximum": 155
      },
      "ccr": {
        "title": "Course rating",
        "description": "The course rating of the tees you will play.",
        "type": "number",
        "minimum": 20,
        "maximum": 90
      },
      "par": {
        "title": "Par",
        "description": "The par of the course from those tees.",
        "type": "integer",
        "minimum": 27,
        "maximum": 90
      }
    }
  },
  "outputs": {
    "index": {
      "label": "Handicap Index",
      "description": "The average of your lowest score differentials plus the table adjustment, to the nearest tenth, at most 54.0; below 0 is a plus handicap.",
      "format": "number"
    },
    "used": {
      "label": "Differentials used",
      "description": "How many of your lowest score differentials count (Rule 5.2a table).",
      "format": "integer"
    },
    "adjustment": {
      "label": "Adjustment",
      "description": "The strokes the Rule 5.2a table adds with 3, 4 or 6 scores: −2.0, −1.0 or −1.0.",
      "format": "number"
    },
    "average": {
      "label": "Average of the lowest",
      "description": "The average of the lowest score differentials before the adjustment and rounding.",
      "format": "number"
    },
    "differentials": {
      "label": "Score differentials",
      "description": "Each round’s score differential, rounded to the nearest tenth, in the order entered.",
      "format": "text"
    },
    "lowest": {
      "label": "Lowest differentials used",
      "description": "The differentials that count, from lowest up.",
      "format": "text"
    },
    "courseHandicap": {
      "label": "Course handicap",
      "description": "Handicap Index × slope rating ÷ 113 + (course rating − par), to the nearest whole stroke.",
      "format": "integer"
    }
  },
  "defaultAnswer": {
    "inputs": {
      "rounds": [
        {
          "score": 85,
          "rating": 69.3,
          "slope": 125
        },
        {
          "score": 95,
          "rating": 73.5,
          "slope": 130
        },
        {
          "score": 88,
          "rating": 71.2,
          "slope": 128
        },
        {
          "score": 92,
          "rating": 72,
          "slope": 131
        },
        {
          "score": 90,
          "rating": 70.5,
          "slope": 124
        }
      ]
    },
    "outputs": {
      "index": 14.2,
      "used": 1,
      "adjustment": 0,
      "average": 14.2,
      "differentials": "14.2, 18.7, 14.8, 17.3, 17.8",
      "lowest": "14.2"
    },
    "text": "Your Handicap Index is 14.2; score differentials used: 1."
  },
  "examples": [
    {
      "given": {
        "rounds": [
          {
            "score": 85,
            "rating": 69.3,
            "slope": 125
          },
          {
            "score": 95,
            "rating": 73.5,
            "slope": 130
          },
          {
            "score": 88,
            "rating": 71.2,
            "slope": 128
          }
        ]
      },
      "expect": {
        "index": 12.2,
        "used": 1,
        "adjustment": -2,
        "differentials": "14.2, 18.7, 14.8",
        "lowest": "14.2",
        "average": 14.2
      },
      "source": "USGA Handicap System manual, Section 10 (113 ÷ 125 × (85 − 69.3) = 14.2), https://www.usga.org/custom-search-pages/rules/handicap-manual/rule-14389.html; SCGA, How is a Handicap Index calculated? ((95 − 73.5) × 113 ÷ 130 = 18.7), https://help.scga.org/knowledge/how-is-a-handicap-index-calculated; Rules of Handicapping 2024, Rule 5.2a (3 differentials: lowest 1, −2.0)"
    },
    {
      "given": {
        "rounds": [
          {
            "score": 85,
            "rating": 69.3,
            "slope": 125
          },
          {
            "score": 95,
            "rating": 73.5,
            "slope": 130
          },
          {
            "score": 88,
            "rating": 71.2,
            "slope": 128
          },
          {
            "score": 92,
            "rating": 72,
            "slope": 131
          },
          {
            "score": 90,
            "rating": 70.5,
            "slope": 124
          },
          {
            "score": 84,
            "rating": 70.1,
            "slope": 119
          }
        ]
      },
      "expect": {
        "index": 12.7,
        "used": 2,
        "adjustment": -1,
        "lowest": "13.2, 14.2",
        "average": 13.7
      },
      "source": "Rules of Handicapping 2024, Rule 5.2a (6 differentials: average of the lowest 2, −1.0); hand calculation in content.mdx: 113 ÷ 119 × 13.9 = 13.199 → 13.2; (13.2 + 14.2) ÷ 2 − 1.0 = 12.7"
    },
    {
      "given": {
        "rounds": [
          {
            "score": 80,
            "rating": 73.5,
            "slope": 130
          },
          {
            "score": 67,
            "rating": 73.5,
            "slope": 130
          },
          {
            "score": 72,
            "rating": 72,
            "slope": 113,
            "pcc": 1
          }
        ]
      },
      "expect": {
        "differentials": "5.7, -5.6, -1.0",
        "lowest": "-5.6",
        "index": -7.6
      },
      "source": "USGA Rules of Handicapping, Rule 5.1c, rounding of minus score differentials (−1.55 rounds to −1.5), https://www.usga.org/content/usga/home-page/handicapping/roh/Content/rules/5%201c%20Calculation%20of%20a%20Score%20DifferentialRoundingMinus.htm; hand calculation in content.mdx: 113 ÷ 130 × 6.5 = 5.65 exactly"
    },
    {
      "given": {
        "rounds": [
          {
            "score": 85,
            "rating": 69.3,
            "slope": 125
          },
          {
            "score": 95,
            "rating": 73.5,
            "slope": 130
          },
          {
            "score": 88,
            "rating": 71.2,
            "slope": 128
          },
          {
            "score": 92,
            "rating": 72,
            "slope": 131
          },
          {
            "score": 90,
            "rating": 70.5,
            "slope": 124
          }
        ],
        "cs": 135,
        "ccr": 72.4,
        "par": 72
      },
      "expect": {
        "index": 14.2,
        "used": 1,
        "courseHandicap": 17
      },
      "source": "Rules of Handicapping 2024, Rule 6.1a (Course Handicap = Handicap Index × Slope Rating ÷ 113 + (Course Rating − par)); hand calculation in content.mdx: 14.2 × 135 ÷ 113 + 0.4 = 17.36 → 17"
    }
  ],
  "sources": [
    "USGA and The R&A, Rules of Handicapping, effective January 2024: Rule 5.1 (score differential), Rule 5.2 (calculation of a Handicap Index, the table in 5.2a, maximum 54.0), Rule 6.1a (course handicap). https://www.usga.org/content/dam/usga/pdf/2024-revision/2024-Rules-of-Handicapping-USGA.pdf",
    "USGA, Rules of Handicapping, Rule 5.1c, Rounding of Minus Score Differentials (−1.54 and −1.55 round to −1.5, −1.56 to −1.6). https://www.usga.org/content/usga/home-page/handicapping/roh/Content/rules/5%201c%20Calculation%20of%20a%20Score%20DifferentialRoundingMinus.htm",
    "The R&A, Rules of Handicapping, Rule 5 (lowest 8 of the most recent 20; maximum Handicap Index 54.0). https://www.randa.org/en/roh/the-rules-of-handicapping/rule-5",
    "SCGA Help Desk, How is a Handicap Index calculated? (worked example: 95, 73.5 / 130 gives 18.7). https://help.scga.org/knowledge/how-is-a-handicap-index-calculated"
  ],
  "related": [
    "win-percentage",
    "pace"
  ],
  "changelog": [
    {
      "date": "2026-09-30",
      "note": "The answer reads well with one differential used."
    }
  ]
}
