Golf club length calculator based on height and wrist-to-floor measurement. Full length charts at https://golflaunchlab.com/guides/golf-club-length-chart
Project description
golf-club-length
Golf club length calculator that recommends custom club length adjustments from standard based on a golfer's height and wrist-to-floor measurement. Covers all 14 major club types from driver to putter.
For complete club length reference data, fitting guides, and interactive charts, visit Golf Club Length Chart — GolfLaunchLab.
Installation
Python
pip install golf-club-length
JavaScript / Node.js
npm install golf-club-length
Usage
Python
from golf_club_length import recommend_length, get_all_recommendations, get_standard_lengths
# Get standard lengths for all clubs
standards = get_standard_lengths()
print(standards['driver']) # 45.5
print(standards['7-iron']) # 37.0
# Recommend length for a single club (wrist-to-floor is the primary method)
result = recommend_length(72, wrist_to_floor_inches=35, club='driver')
print(result)
# {
# 'standard_length': 45.5,
# 'recommended_length': 45.5,
# 'adjustment': 0.0,
# 'fitting_note': 'Standard length recommended based on wrist-to-floor measurement.'
# }
# Tall golfer (6'4", wrist-to-floor 42")
result = recommend_length(76, wrist_to_floor_inches=42, club='7-iron')
print(result)
# {
# 'standard_length': 37.0,
# 'recommended_length': 38.0,
# 'adjustment': 1.0,
# 'fitting_note': '1" longer than standard recommended based on wrist-to-floor measurement. Confirm with a certified club fitter.'
# }
# Height-only fallback (no wrist-to-floor)
result = recommend_length(68, club='driver')
print(result['adjustment']) # 0.0 (standard range)
# Get recommendations for every club at once
bag = get_all_recommendations(76, wrist_to_floor_inches=42)
for club, rec in bag.items():
print(f"{club:10s}: {rec['recommended_length']:.2f}\" (adjustment: {rec['adjustment']:+.2f}\")")
Example output for a tall golfer (76", WTF 42"):
driver : 46.50" (adjustment: +1.00")
3-wood : 44.00" (adjustment: +1.00")
5-wood : 43.00" (adjustment: +1.00")
4-hybrid : 41.00" (adjustment: +1.00")
5-iron : 39.00" (adjustment: +1.00")
6-iron : 38.50" (adjustment: +1.00")
7-iron : 38.00" (adjustment: +1.00")
8-iron : 37.50" (adjustment: +1.00")
9-iron : 37.00" (adjustment: +1.00")
pw : 36.50" (adjustment: +1.00")
gw : 36.25" (adjustment: +1.00")
sw : 36.00" (adjustment: +1.00")
lw : 36.00" (adjustment: +1.00")
putter : 35.00" (adjustment: +1.00")
JavaScript
const { getStandardLengths, recommendLength, getAllRecommendations } = require('golf-club-length');
// Get standard lengths for all clubs
const standards = getStandardLengths();
console.log(standards.driver); // 45.5
console.log(standards['7-iron']); // 37.0
// Recommend length for a single club (wrist-to-floor is the primary method)
const result = recommendLength(72, 35, 'driver');
console.log(result);
// {
// standardLength: 45.5,
// recommendedLength: 45.5,
// adjustment: 0,
// fittingNote: 'Standard length recommended based on wrist-to-floor measurement.'
// }
// Tall golfer (6'4", wrist-to-floor 42")
const tall = recommendLength(76, 42, '7-iron');
console.log(tall.adjustment); // 1
console.log(tall.recommendedLength); // 38
// Height-only fallback (pass null for wrist-to-floor)
const byHeight = recommendLength(68, null, 'driver');
console.log(byHeight.adjustment); // 0
// Get recommendations for every club at once
const bag = getAllRecommendations(76, 42);
for (const [club, rec] of Object.entries(bag)) {
console.log(`${club}: ${rec.recommendedLength}" (${rec.adjustment >= 0 ? '+' : ''}${rec.adjustment}")`);
}
Supported Clubs
| Club | Key |
|---|---|
| Driver | driver |
| 3-Wood | 3-wood |
| 5-Wood | 5-wood |
| 4-Hybrid | 4-hybrid |
| 5-Iron | 5-iron |
| 6-Iron | 6-iron |
| 7-Iron | 7-iron |
| 8-Iron | 8-iron |
| 9-Iron | 9-iron |
| Pitching Wedge | pw |
| Gap Wedge | gw |
| Sand Wedge | sw |
| Lob Wedge | lw |
| Putter | putter |
Fitting Method
Wrist-to-Floor (Primary)
The wrist-to-floor measurement is the most accurate fitting method. Measure from the wrist crease (where the hand meets the wrist) straight down to the floor while standing upright in golf shoes.
| Wrist-to-Floor | Adjustment |
|---|---|
| 27" – 29" | −1.0" |
| 29" – 32" | −0.5" |
| 32" – 34" | −0.25" |
| 34" – 37" | Standard |
| 37" – 39" | +0.25" |
| 39" – 41" | +0.5" |
| 41" – 44" | +1.0" |
Height (Fallback)
When wrist-to-floor is not available, height is used as a proxy:
| Height | Adjustment |
|---|---|
| Under 5'0" | −1.0" |
| 5'0" – 5'3" | −0.5" |
| 5'3" – 5'5" | −0.25" |
| 5'5" – 5'10" | Standard |
| 5'10" – 6'0" | +0.25" |
| 6'0" – 6'2" | +0.5" |
| Over 6'2" | +1.0" |
Adjustments apply uniformly across all clubs. For precision fitting, always use wrist-to-floor and confirm results with a certified club fitter.
Related Resources
- Golf Club Length Chart — Complete Reference
- Golf Shaft Flex Chart
- Golf Club Distance Chart
- Best Golf Launch Monitors — Reviews & Rankings
License
MIT License — copyright 2026 GolfLaunchLab. See LICENSE for details.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file golf_club_length-1.0.0.tar.gz.
File metadata
- Download URL: golf_club_length-1.0.0.tar.gz
- Upload date:
- Size: 9.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
18464fa0ac752d3778c75b80e02d77390eced0aed2af6756707e2b7280a166e4
|
|
| MD5 |
d863d7565745650f9dfb32a750f54e79
|
|
| BLAKE2b-256 |
2007577f216179d62b07661a716fad02138349e1575e43a15048378780ee570b
|
File details
Details for the file golf_club_length-1.0.0-py3-none-any.whl.
File metadata
- Download URL: golf_club_length-1.0.0-py3-none-any.whl
- Upload date:
- Size: 6.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d2ea99844f5524f81be972c7637d6d3eca4a22c7f6c4258fd8f91450103cfdaf
|
|
| MD5 |
cf334c93e69fb49ab0da07741d6dd324
|
|
| BLAKE2b-256 |
bcf4a3c87963742fcef883cbf96d9f482a9ffc1959366e32ae00e0f5c933f243
|